feat(home manager): full home manager conf for mrfloas
This commit is contained in:
parent
5d45159363
commit
f9ae07c2f9
1 changed files with 203 additions and 389 deletions
|
@ -1,35 +1,26 @@
|
|||
{ pkgs, lib, ... }:
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
# Home Manager needs a bit of information about you and the paths it should
|
||||
# manage.
|
||||
home.username = "mrflos";
|
||||
home.homeDirectory = "/home/${home.username}";
|
||||
|
||||
# This value determines the Home Manager release that your configuration is
|
||||
# compatible with. This helps avoid breakage when a new Home Manager release
|
||||
# introduces backwards incompatible changes.
|
||||
#
|
||||
# You should not change this value, even if you update Home Manager. If you do
|
||||
# want to update the value, then make sure to first check the Home Manager
|
||||
# release notes.
|
||||
home.stateVersion = "23.11"; # Please read the comment before changing.
|
||||
|
||||
# The home.packages option allows you to install Nix packages into your
|
||||
# environment.
|
||||
home.homeDirectory = "/home/mrflos";
|
||||
home.stateVersion = "24.05"; # Please read the comment before changing.
|
||||
home.packages = with pkgs; [
|
||||
#cli
|
||||
ansible
|
||||
atuin
|
||||
bat
|
||||
btop
|
||||
cargo
|
||||
catnip
|
||||
cmatrix
|
||||
coreutils
|
||||
curl
|
||||
dnsutils
|
||||
emacs-nox
|
||||
fd
|
||||
findutils
|
||||
fish
|
||||
fzf
|
||||
gcc
|
||||
gnugrep
|
||||
gnumake
|
||||
gnupg
|
||||
|
@ -40,19 +31,32 @@
|
|||
htop
|
||||
lazygit
|
||||
lsd
|
||||
magic-wormhole
|
||||
lua51Packages.lua
|
||||
lua51Packages.luarocks
|
||||
lua-language-server
|
||||
mc
|
||||
micro
|
||||
mosh
|
||||
mpd
|
||||
mpv
|
||||
neofetch
|
||||
nixfmt
|
||||
neovim
|
||||
nil
|
||||
nixfmt-rfc-style
|
||||
nodejs_20
|
||||
pandoc
|
||||
pass
|
||||
pciutils
|
||||
php83
|
||||
php83Packages.composer
|
||||
pinentry
|
||||
python312Packages.pip
|
||||
ripgrep
|
||||
slides
|
||||
starship
|
||||
symfony-cli
|
||||
thunderbird
|
||||
tmux
|
||||
tree
|
||||
unzip
|
||||
|
@ -60,412 +64,222 @@
|
|||
wget
|
||||
whois
|
||||
wirelesstools
|
||||
yarn
|
||||
yazi
|
||||
yt-dlp
|
||||
zellij
|
||||
zoxide
|
||||
zola
|
||||
zsh-autosuggestions
|
||||
|
||||
# apps
|
||||
kitty
|
||||
|
||||
# fonts
|
||||
(pkgs.nerdfonts.override { fonts = [ "Iosevka" ]; })
|
||||
|
||||
# # You can also create simple shell scripts directly inside your
|
||||
# # configuration. For example, this adds a command 'my-hello' to your
|
||||
# # environment:
|
||||
# (pkgs.writeShellScriptBin "my-hello" ''
|
||||
# echo "Hello, ${config.home.username}!"
|
||||
# '')
|
||||
];
|
||||
|
||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
||||
# plain files is through 'home.file'.
|
||||
home.file = {
|
||||
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
|
||||
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
|
||||
# # symlink to the Nix store copy.
|
||||
# ".screenrc".source = dotfiles/screenrc;
|
||||
"./.config/kitty/" = {
|
||||
source = ../dotfiles/kitty;
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
# # You can also set the file content immediately.
|
||||
# ".gradle/gradle.properties".text = ''
|
||||
# org.gradle.console=verbose
|
||||
# org.gradle.daemon.idletimeout=3600000
|
||||
# '';
|
||||
"./.config/nvim/" = {
|
||||
source = ../dotfiles/nvim;
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
"./.config/lazygit/" = {
|
||||
source = ../dotfiles/lazygit;
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
"./.config/tmux/" = {
|
||||
source = ../dotfiles/tmux;
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
|
||||
# You can also manage environment variables but you will have to manually
|
||||
# source
|
||||
#
|
||||
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh
|
||||
#
|
||||
# or
|
||||
#
|
||||
# /etc/profiles/per-user/florian/etc/profile.d/hm-session-vars.sh
|
||||
#
|
||||
# if you don't want to manage your shell through Home Manager.
|
||||
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";
|
||||
|
||||
# Let Home Manager install and manage itself.
|
||||
programs.home-manager.enable = true;
|
||||
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 = {
|
||||
neovim = {
|
||||
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;
|
||||
enableZshIntegration = true;
|
||||
settings = {
|
||||
format = lib.concatStrings [
|
||||
"$\{custom.tztime\}"
|
||||
"$all"
|
||||
"$directory"
|
||||
"$character"
|
||||
];
|
||||
add_newline = true; # Inserts a blank line between shell prompts
|
||||
character = {
|
||||
success_symbol = "[➜](bold green)";
|
||||
error_symbol = "[➜](bold red)";
|
||||
};
|
||||
custom.tztime = {
|
||||
command = "date +\"%a %d %b %H:%M%p\"";
|
||||
when = "true";
|
||||
format = "\\[\$symbol(\$output)\\] (purple)";
|
||||
};
|
||||
};
|
||||
settings = with builtins; fromTOML (readFile ../dotfiles/starship/starship.toml);
|
||||
};
|
||||
|
||||
|
||||
|
||||
zsh = {
|
||||
enable = true;
|
||||
enableAutosuggestions = true;
|
||||
autosuggestion.enable = true;
|
||||
enableCompletion = true;
|
||||
shellAliases = {
|
||||
ls = "lsd --hyperlink=auto";
|
||||
#tmux = "tmux -f ~/.config/tmux/tmux.conf attach || tmux -f ~/.config/tmux/tmux.conf new";
|
||||
bunx = "bun --bun x";
|
||||
g = "lazygit";
|
||||
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";
|
||||
yeswiki-updater = "cd /home/mrflos/Developpements/yeswiki-installer/ && sudo php yeswiki-updater.php";
|
||||
vi = "nvim";
|
||||
vim = "nvim";
|
||||
};
|
||||
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;
|
||||
plugins = [ "git" "ssh-agent" ];
|
||||
theme = "robbyrussell";
|
||||
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";
|
||||
};
|
||||
};
|
||||
ssh = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
Host *
|
||||
IgnoreUnknown UseKeychain
|
||||
UseKeychain yes
|
||||
ServerAliveInterval 15
|
||||
ServerAliveCountMax 3
|
||||
|
||||
# CLIC mrflos rp4 Maison
|
||||
Host mrflospw
|
||||
HostName mrflos.pw
|
||||
User mrflos
|
||||
Port 4222
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
# CLIC Gatien
|
||||
Host clicgatien
|
||||
HostName clic.cooptic.be
|
||||
Port 4222
|
||||
User clic
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
# nas synology DS216play maison
|
||||
Host nas
|
||||
HostName 192.168.1.2
|
||||
User mrflos
|
||||
Port 65522
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
# nas laurent
|
||||
Host naslaurent
|
||||
HostName 82.65.9.168
|
||||
Port 65522
|
||||
User furax37
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
# ecocloud
|
||||
Host ecocloud ecocloud-s-mart.im.utc 192.168.196.26
|
||||
HostName 192.168.196.26
|
||||
User optisseur
|
||||
ProxyJump 10.200.0.240
|
||||
|
||||
# Friends
|
||||
Host furax
|
||||
User admin
|
||||
HostName furax37.org
|
||||
Port 22
|
||||
IdentitiesOnly yes
|
||||
|
||||
# Yeswiki.pro
|
||||
Host yeswikipro
|
||||
HostName 138.201.86.17
|
||||
Port 4222
|
||||
User admin
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
# Proxmox Clic Yeswiki.pro
|
||||
Host clicyeswikipro
|
||||
HostName 136.243.103.121
|
||||
Port 22
|
||||
User root
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
# Bastion Globenet
|
||||
Host bastionglobenet
|
||||
HostName bastion.globenet.org
|
||||
Port 20766
|
||||
User yeswikipro
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host clicaudrey # ywp-clic-1 audrey
|
||||
HostName 95.217.202.171
|
||||
Port 22
|
||||
User optisseur
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host ywp-clic-2
|
||||
HostName 135.181.128.214
|
||||
#Port 42022
|
||||
Port 22
|
||||
User optisseur
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
|
||||
# Chatons YesWiki
|
||||
Host yeswiki
|
||||
HostName yunohost.yeswiki.net
|
||||
Port 6742
|
||||
User mrflos
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
# YESWIKI
|
||||
Host cooptools
|
||||
User root
|
||||
HostName ispconfig.coop.tools
|
||||
Port 22
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_rsa
|
||||
|
||||
# COLIBRIS by server name
|
||||
|
||||
Host nascolibris
|
||||
HostName 212.114.30.58
|
||||
Port 42222
|
||||
User backup
|
||||
UseRoaming no
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
## Avant tchat mattermost / Apres piwigo - peertube - nextcloud - onlyoffice
|
||||
Host emmagoldman
|
||||
#HostName 2a01:4f8:190:7302::2
|
||||
HostName 144.76.3.3
|
||||
Port 22
|
||||
User admin
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
## CLIC Yunohost colibox.colibris-outilslibres.org
|
||||
Host georgesbrassens
|
||||
HostName 65.21.50.40
|
||||
Port 22
|
||||
User admin
|
||||
UseRoaming no
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
## Hebergements web sites colibris - LEMP ispconfig
|
||||
Host ivanillitch
|
||||
HostName 95.217.77.254
|
||||
Port 4222
|
||||
User admin
|
||||
UseRoaming no
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
## Proxmox outils libres / jitsi - pads - mobilizon
|
||||
Host leontolstoi
|
||||
HostName 88.99.209.53
|
||||
Port 22
|
||||
User root
|
||||
UseRoaming no
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
## BBB
|
||||
Host louisemichel
|
||||
HostName 88.99.95.38
|
||||
Port 22
|
||||
User root
|
||||
UseRoaming no
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
## CLIC Yunohost clic-territoires.org interlab.cc
|
||||
Host mikhailbakunin
|
||||
HostName 78.46.65.157
|
||||
Port 4222
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
UseRoaming no
|
||||
IdentitiesOnly yes
|
||||
|
||||
## Colibris.social semapps docker
|
||||
Host murraybookchin
|
||||
HostName 65.21.2.239
|
||||
Port 4222
|
||||
User admin
|
||||
UseRoaming no
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
## Boutique Colibris - prestashop
|
||||
Host pierreproudhon
|
||||
HostName 176.9.59.51
|
||||
Port 22
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
## Gogocarto
|
||||
Host rosaluxemburg
|
||||
HostName 135.181.166.113
|
||||
Port 4222
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
UseRoaming no
|
||||
IdentitiesOnly yes
|
||||
|
||||
|
||||
# COLIBRIS colinames
|
||||
Host colibbb
|
||||
HostName 88.99.95.38
|
||||
User root
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host colitube
|
||||
HostName video.colibris-outilslibres.org
|
||||
Port 4222
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host colipad
|
||||
HostName pad.colibris-outilslibres.org
|
||||
Port 4222
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host colichat
|
||||
HostName 144.76.3.3
|
||||
Port 22001
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host coliboutique
|
||||
HostName 176.9.59.51
|
||||
Port 22
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host coliweb
|
||||
HostName 95.217.77.254
|
||||
Port 4222
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host colicloud
|
||||
HostName 135.181.166.113
|
||||
Port 4222
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host colicarto
|
||||
HostName 135.181.166.113
|
||||
Port 4222
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host colihost
|
||||
HostName postit.colibris-outilslibres.org
|
||||
Port 22001
|
||||
User admin
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
# COLIBRIS
|
||||
Host CartoDev
|
||||
User admin
|
||||
HostName carto-dev.colibris-outilslibres.org
|
||||
Port 22102
|
||||
|
||||
Host hebergement
|
||||
User admin
|
||||
HostName hebergement.colibris-lemouvement.org
|
||||
Port 4222
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host colibrisweb
|
||||
HostName colibris.cc
|
||||
Port 22
|
||||
User admin
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
Host colibrishost
|
||||
HostName postit.colibris-outilslibres.org
|
||||
Port 22001
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
User admin
|
||||
|
||||
Host colibrispad
|
||||
HostName pad.colibris-outilslibres.org
|
||||
Port 22101
|
||||
User admin
|
||||
|
||||
Host colibrispadpostgres
|
||||
HostName pad.colibris-outilslibres.org
|
||||
Port 22101
|
||||
User postgres
|
||||
|
||||
Host colibrishostweb
|
||||
HostName 144.76.3.3
|
||||
Port 22001
|
||||
User admin
|
||||
IdentitiesOnly yes
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
|
||||
|
||||
# framasoft
|
||||
Host framagit.org
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
User git
|
||||
Port 22
|
||||
|
||||
# coopaname yeswiki test
|
||||
Host coopaname
|
||||
HostName 85.118.37.83
|
||||
User florian
|
||||
Port 51026
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
services.ssh-agent.enable = true;
|
||||
programs.home-manager.enable = true;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue