feat(machines): add sabo
This commit is contained in:
parent
e5497663b4
commit
d2b62e0db7
1 changed files with 324 additions and 0 deletions
324
machines/sabo/home.nix
Normal file
324
machines/sabo/home.nix
Normal file
|
@ -0,0 +1,324 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
home.username = "mrflos";
|
||||
home.homeDirectory = "/home/mrflos";
|
||||
|
||||
home.packages = with pkgs; [
|
||||
ansible
|
||||
atuin
|
||||
bat
|
||||
btop
|
||||
cargo
|
||||
catnip
|
||||
cmatrix
|
||||
coreutils
|
||||
curl
|
||||
dnsutils
|
||||
emacs-nox
|
||||
fd
|
||||
findutils
|
||||
fzf
|
||||
gnugrep
|
||||
gnumake
|
||||
gnupg
|
||||
imagemagick
|
||||
jq
|
||||
git
|
||||
glances
|
||||
htop
|
||||
lazygit
|
||||
lsd
|
||||
magic-wormhole
|
||||
mc
|
||||
micro
|
||||
mosh
|
||||
mpc-cli
|
||||
mpd
|
||||
mpv
|
||||
neofetch
|
||||
nixd
|
||||
neovim
|
||||
ollama
|
||||
pandoc
|
||||
pass
|
||||
pciutils
|
||||
pinentry-all
|
||||
ripgrep
|
||||
rustc
|
||||
slides
|
||||
starship
|
||||
syncthing
|
||||
tmux
|
||||
tokei
|
||||
tree
|
||||
unzip
|
||||
usbutils
|
||||
wget
|
||||
whois
|
||||
wl-clipboard
|
||||
wirelesstools
|
||||
yazi
|
||||
yt-dlp
|
||||
zed-editor
|
||||
zellij
|
||||
zoxide
|
||||
zsh-autosuggestions
|
||||
|
||||
# dev tools
|
||||
dart-sass
|
||||
dbeaver-bin
|
||||
docker-compose
|
||||
eris-go
|
||||
gcc
|
||||
go
|
||||
nixfmt-rfc-style
|
||||
lua
|
||||
lua-language-server
|
||||
luarocks
|
||||
nixpkgs-fmt
|
||||
nixos-generators
|
||||
nodejs
|
||||
nodePackages.eslint
|
||||
nodePackages.prettier
|
||||
php83
|
||||
php83Packages.composer
|
||||
php83Packages.php-cs-fixer
|
||||
python3
|
||||
python311Packages.virtualenv
|
||||
rpi-imager
|
||||
ruff-lsp
|
||||
stylelint
|
||||
symfony-cli
|
||||
tree-sitter
|
||||
virt-manager
|
||||
yarn
|
||||
zig
|
||||
|
||||
# image optimizers
|
||||
image_optim
|
||||
nodePackages.svgo
|
||||
jpegoptim
|
||||
optipng
|
||||
pngquant
|
||||
gifsicle
|
||||
libwebp
|
||||
|
||||
# fonts
|
||||
inter-nerdfont
|
||||
nerd-fonts.iosevka
|
||||
nerd-fonts.iosevka-term
|
||||
];
|
||||
fonts.fontconfig.enable = true;
|
||||
home.file = {
|
||||
"./.config/kitty/" = {
|
||||
source = ../../dotfiles/kitty;
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
"./.config/nvim/" = {
|
||||
source = ../../dotfiles/nvim;
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
"./.config/lazygit/" = {
|
||||
source = ../../dotfiles/lazygit;
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
"./.config/tmux/" = {
|
||||
source = ../../dotfiles/tmux;
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
home.sessionVariables = {
|
||||
EDITOR = "nvim";
|
||||
};
|
||||
home.sessionPath = [
|
||||
"$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;
|
||||
};
|
||||
};
|
||||
|
||||
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 = "cd $HOME/Code/nixos-config/ && $HOME/.nix-profile/bin/nvim .";
|
||||
nixupdate = "nix-channel --update && home-manager 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 = "$HOME/.nix-profile/bin/nvim";
|
||||
vim = "$HOME/.nix-profile/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;
|
||||
|
||||
home.stateVersion = "24.11";
|
||||
# Let Home Manager install and manage itself.
|
||||
programs.home-manager.enable = true;
|
||||
}
|
Loading…
Add table
Reference in a new issue