286 lines
6.6 KiB
Nix
286 lines
6.6 KiB
Nix
|
{
|
||
|
pkgs,
|
||
|
...
|
||
|
}:
|
||
|
let
|
||
|
in
|
||
|
{
|
||
|
imports = [
|
||
|
<home-manager/nixos>
|
||
|
../dotfiles/dotfiles.nix
|
||
|
];
|
||
|
|
||
|
home-manager.useGlobalPkgs = true;
|
||
|
users.users.mrflos = {
|
||
|
isNormalUser = true;
|
||
|
description = "mrflos";
|
||
|
createHome = true;
|
||
|
extraGroups = [
|
||
|
"users"
|
||
|
"docker"
|
||
|
"libvirtd"
|
||
|
"lxd"
|
||
|
"networkmanager"
|
||
|
"wheel"
|
||
|
];
|
||
|
uid = 1000;
|
||
|
shell = pkgs.zsh;
|
||
|
};
|
||
|
|
||
|
nix.settings.trusted-users = [ "mrflos" ];
|
||
|
home-manager.backupFileExtension = "backup";
|
||
|
home-manager.users.mrflos = {
|
||
|
home.stateVersion = "23.05";
|
||
|
};
|
||
|
|
||
|
# home.file = {
|
||
|
#"./.config/kitty/" = {
|
||
|
# force = true;
|
||
|
# source = ../dotfiles/kitty;
|
||
|
# recursive = true;
|
||
|
#};
|
||
|
#
|
||
|
#"./.config/lazygit/" = {
|
||
|
# force = true;
|
||
|
# source = ../dotfiles/lazygit;
|
||
|
# recursive = true;
|
||
|
#};
|
||
|
#
|
||
|
#"./.config/niri/" = {
|
||
|
# force = true;
|
||
|
# source = ../dotfiles/niri;
|
||
|
# recursive = true;
|
||
|
#};
|
||
|
#
|
||
|
#"./.config/nvim/" = {
|
||
|
# force = true;
|
||
|
# source = ../dotfiles/nvim;
|
||
|
# recursive = true;
|
||
|
#};
|
||
|
#
|
||
|
#"./.config/tmux/" = {
|
||
|
# force = true;
|
||
|
# source = ../dotfiles/tmux;
|
||
|
# recursive = true;
|
||
|
#};
|
||
|
#
|
||
|
#"./.config/waybar/" = {
|
||
|
# force = true;
|
||
|
# source = ../dotfiles/waybar;
|
||
|
# recursive = true;
|
||
|
#};
|
||
|
#};
|
||
|
home.sessionVariables = {
|
||
|
EDITOR = "nvim";
|
||
|
#LD_LIBRARY_PATH = "${pkgs.stdenv.cc.cc.lib}/lib";
|
||
|
};
|
||
|
home.sessionPath = [
|
||
|
"$HOME/Code/nixos-config/scripts"
|
||
|
"$HOME/.local/bin"
|
||
|
"$HOME/go/bin"
|
||
|
];
|
||
|
accounts.email.accounts = {
|
||
|
"mrflos@chmok.net" = {
|
||
|
realName = "Florian Schmitt";
|
||
|
userName = "mrflos@chmok.net";
|
||
|
address = "mrflos@chmok.net";
|
||
|
|
||
|
primary = true;
|
||
|
thunderbird = {
|
||
|
enable = true;
|
||
|
};
|
||
|
imap = {
|
||
|
host = "mail.infomaniak.com";
|
||
|
port = 993;
|
||
|
};
|
||
|
|
||
|
smtp = {
|
||
|
host = "mail.infomaniak.com";
|
||
|
port = 465;
|
||
|
};
|
||
|
};
|
||
|
"mrflos@yeswiki.pro" = {
|
||
|
realName = "Florian Schmitt - Yeswiki.pro";
|
||
|
userName = "mrflos@yeswiki.pro";
|
||
|
address = "mrflos@yeswiki.pro";
|
||
|
|
||
|
thunderbird = {
|
||
|
enable = true;
|
||
|
};
|
||
|
imap = {
|
||
|
host = "mail.infomaniak.com";
|
||
|
port = 993;
|
||
|
};
|
||
|
|
||
|
smtp = {
|
||
|
host = "mail.infomaniak.com";
|
||
|
port = 465;
|
||
|
};
|
||
|
};
|
||
|
"mrflos@mrflos.pw" = {
|
||
|
realName = "Florian Schmitt";
|
||
|
userName = "mrflos";
|
||
|
address = "mrflos@mrflos.pw";
|
||
|
|
||
|
primary = false;
|
||
|
thunderbird = {
|
||
|
enable = true;
|
||
|
};
|
||
|
imap = {
|
||
|
host = "mrflos.pw";
|
||
|
port = 993;
|
||
|
#tls.enable = true;
|
||
|
#tls.useStartTls = true;
|
||
|
};
|
||
|
|
||
|
smtp = {
|
||
|
host = "mrflos.pw";
|
||
|
port = 587;
|
||
|
#tls.useStartTls = true;
|
||
|
};
|
||
|
};
|
||
|
"contact@yeswiki.pro" = {
|
||
|
realName = "YesWiki.pro";
|
||
|
userName = "contact@yeswiki.pro";
|
||
|
address = "contact@yeswiki.pro";
|
||
|
|
||
|
primary = false;
|
||
|
thunderbird = {
|
||
|
enable = true;
|
||
|
};
|
||
|
imap = {
|
||
|
host = "mail.infomaniak.com";
|
||
|
port = 993;
|
||
|
};
|
||
|
|
||
|
smtp = {
|
||
|
host = "mail.infomaniak.com";
|
||
|
port = 465;
|
||
|
};
|
||
|
};
|
||
|
"contact@yeswiki.net" = {
|
||
|
realName = "YesWiki.net";
|
||
|
userName = "contact@yeswiki.net";
|
||
|
address = "contact@yeswiki.net";
|
||
|
|
||
|
primary = false;
|
||
|
thunderbird = {
|
||
|
enable = true;
|
||
|
};
|
||
|
imap = {
|
||
|
host = "mail.infomaniak.com";
|
||
|
port = 993;
|
||
|
};
|
||
|
|
||
|
smtp = {
|
||
|
host = "mail.infomaniak.com";
|
||
|
port = 465;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
|
||
|
programs = {
|
||
|
direnv = {
|
||
|
enable = true;
|
||
|
enableZshIntegration = true;
|
||
|
nix-direnv.enable = true;
|
||
|
};
|
||
|
|
||
|
git = {
|
||
|
enable = true;
|
||
|
userName = "Florian Schmitt";
|
||
|
userEmail = "mrflos@gmail.com";
|
||
|
aliases = {
|
||
|
fa = "fetch --all --tags --prune --recurse-submodules --force";
|
||
|
};
|
||
|
extraConfig = {
|
||
|
pull.rebase = true;
|
||
|
init.defaultBranch = "main";
|
||
|
core.editor = "nvim";
|
||
|
core.fileMode = false;
|
||
|
};
|
||
|
};
|
||
|
mpv = {
|
||
|
enable = true;
|
||
|
package = (
|
||
|
pkgs.mpv-unwrapped.wrapper {
|
||
|
scripts = with pkgs.mpvScripts; [
|
||
|
mpris
|
||
|
sponsorblock
|
||
|
thumbfast
|
||
|
#uosc
|
||
|
#modernx
|
||
|
mpv-osc-tethys
|
||
|
visualizer
|
||
|
];
|
||
|
|
||
|
mpv = pkgs.mpv-unwrapped.override {
|
||
|
waylandSupport = true;
|
||
|
};
|
||
|
}
|
||
|
);
|
||
|
|
||
|
config = {
|
||
|
profile = "high-quality";
|
||
|
ytdl-format = "bestvideo+bestaudio";
|
||
|
};
|
||
|
};
|
||
|
neovim = {
|
||
|
defaultEditor = true;
|
||
|
viAlias = true;
|
||
|
vimAlias = true;
|
||
|
};
|
||
|
|
||
|
starship = {
|
||
|
enable = true;
|
||
|
settings = with builtins; fromTOML (readFile ../dotfiles/starship/starship.toml);
|
||
|
};
|
||
|
|
||
|
zsh = {
|
||
|
enable = true;
|
||
|
autosuggestion.enable = true;
|
||
|
enableCompletion = true;
|
||
|
shellAliases = {
|
||
|
#tmux = "tmux -f ~/.config/tmux/tmux.conf attach || tmux -f ~/.config/tmux/tmux.conf new";
|
||
|
bunx = "bun --bun x";
|
||
|
c = "/home/mrflos/Code/nixos-config/scripts/tmux-sessionizer";
|
||
|
g = "lazygit";
|
||
|
n = "/home/mrflos/Code/nixos-config/scripts/open-notes";
|
||
|
s = "/home/mrflos/Code/nixos-config/scripts/ssh-connect";
|
||
|
t = "/home/mrflos/Code/nixos-config/scripts/tmux-sessionizer";
|
||
|
kdenix = "nix run github:pjones/plasma-manager --extra-experimental-features nix-command --extra-experimental-features flakes > /home/mrflos/Developpements/nixos-config/modules/home-plasma.nix";
|
||
|
icat = "kitty +kitten icat";
|
||
|
nixedit = "vi /etc/nixos";
|
||
|
nixupdate = "sudo nix-channel --update && sudo nixos-rebuild switch";
|
||
|
nixclean = "sudo nix-env --delete-generations old --profile /nix/var/nix/profiles/system && sudo /nix/var/nix/profiles/system/bin/switch-to-configuration switch && sudo nix-store --gc";
|
||
|
socks = "ssh -N -f -C -D 9090 mrflos@yunohost.yeswiki.net -p 6742";
|
||
|
vi = "/run/current-system/sw/bin/nvim";
|
||
|
vim = "/run/current-system/sw/bin/nvim";
|
||
|
yeswiki-updater = "cd /home/mrflos/Code/yeswiki-installer/ && sudo php yeswiki-updater.php";
|
||
|
};
|
||
|
initExtra = ''
|
||
|
export BUN_INSTALL="$HOME/.bun"
|
||
|
export PHP_CS_FIXER_IGNORE_ENV=1
|
||
|
export PATH="$HOME/.local/bin:$BUN_INSTALL/bin:$PATH"
|
||
|
eval "$(atuin init zsh)"
|
||
|
eval "$(zoxide init zsh)"
|
||
|
'';
|
||
|
oh-my-zsh = {
|
||
|
enable = true;
|
||
|
extraConfig = ''
|
||
|
zstyle :omz:plugins:ssh-agent helper ksshaskpass
|
||
|
zstyle :omz:plugins:ssh-agent agent-forwarding yes
|
||
|
zstyle :omz:plugins:ssh-agent lazy yes
|
||
|
'';
|
||
|
plugins = [
|
||
|
"git"
|
||
|
"ssh-agent"
|
||
|
];
|
||
|
# theme = "robbyrussell";
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
|
||
|
services.ssh-agent.enable = true;
|
||
|
}
|