feat(homemanager+extras) : wip home-manager and nixos conf

This commit is contained in:
Florian Schmitt 2023-04-18 14:48:52 +03:00
parent 5af55be754
commit 5b62192a52
4 changed files with 86 additions and 18 deletions

View file

@ -13,6 +13,7 @@
"hid_apple.fnmode=1" "hid_apple.fnmode=1"
"hid_apple.swap_fn_leftctrl=1" "hid_apple.swap_fn_leftctrl=1"
]; ];
boot.kernel.sysctl = { "vm.swappiness" = 10;};
# Bootloader. # Bootloader.
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
@ -67,18 +68,12 @@
../modules/console.nix ../modules/console.nix
../modules/desktop.nix ../modules/desktop.nix
../modules/fonts.nix ../modules/fonts.nix
../modules/home-config.nix
../modules/laptop.nix ../modules/laptop.nix
../modules/local-dev.nix ../modules/local-dev.nix
../modules/nixos.nix
]; ];
# Define a user account. Don't forget to set a password with passwd.
users.users.mrflos = {
isNormalUser = true;
description = "mrflos";
extraGroups = [ "docker" "lxd" "libvirtd" "networkmanager" "wheel" ];
shell = pkgs.zsh;
};
# This value determines the NixOS release from which the default # This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions # settings for stateful data, like file locations and database versions
# on your system were taken. It's perfectly fine and recommended to leave # on your system were taken. It's perfectly fine and recommended to leave

View file

@ -53,6 +53,7 @@ in
"pejkokffkapolfffcgbmdmhdelanoaih" # Unsplash instant "pejkokffkapolfffcgbmdmhdelanoaih" # Unsplash instant
"cjpalhdlnbpafiamejdnhcphjbkeiagm" # uBlock Origin "cjpalhdlnbpafiamejdnhcphjbkeiagm" # uBlock Origin
"gfapcejdoghpoidkfodoiiffaaibpaem" # Dracula theme "gfapcejdoghpoidkfodoiiffaaibpaem" # Dracula theme
"jbbplnpkjmmeebjpijfedlgcdilocofh" # wave a11y
]; ];
extraOpts = { extraOpts = {
@ -86,6 +87,7 @@ in
jnoortheen.nix-ide jnoortheen.nix-ide
dracula-theme.theme-dracula dracula-theme.theme-dracula
ms-vscode-remote.remote-ssh ms-vscode-remote.remote-ssh
gruntfuggly.todo-tree
] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
{ {
name = "remote-ssh-edit"; name = "remote-ssh-edit";

View file

@ -1,19 +1,72 @@
# Inject the right home-manager config for the machine. # Inject the right home-manager config for the machine.
{ config, depot, pkgs, ... }: { config, pkgs, lib, ... }:
# TODO can we automate the installation of home-manager ?
# sudo nix-channel --add https://github.com/nix-community/home-manager/archive/release-22.11.tar.gz home-manager
{ {
users.users.tazjin = { imports = [
isNormalUser = true; <home-manager/nixos>
createHome = true; ];
extraGroups = [ "wheel" "networkmanager" "video" "adbusers" ];
uid = 1000; # Let Home Manager install and manage itself.
shell = pkgs.fish; #programs.home-manager.enable = true;
initialHashedPassword = "$2b$05$1eBPdoIgan/C/L8JFqIHBuVscQyTKw1L/4VBlzlLvLBEf6CXS3EW6";
home-manager.users.mrflos = { pkgs, ... }: {
home.stateVersion = "22.11";
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.gandi.net";
port = 143;
tls.useStartTls = true;
};
smtp = {
host = "mail.gandi.net";
port = 587;
tls.useStartTls = true;
};
};
};
# programs.git = {
# enable = true;
# userName = "Florian Schmitt";
# userEmail = "mrflos@gmail.com";
# extraConfig = {
# pull.rebase = true;
# init.defaultBranch = "main";
# };
# };
programs.thunderbird = {
enable = true;
profiles.default = {
isDefault = true;
};
};
}; };
nix.settings.trusted-users = [ "tazjin" ]; users.users.mrflos = {
isNormalUser = true;
description = "mrflos";
createHome = true;
extraGroups = [ "docker" "libvirtd" "lxd" "networkmanager" "wheel" ];
uid = 1000;
shell = pkgs.zsh;
};
nix.settings.trusted-users = [ "mrflos" ];
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.users.tazjin = depot.users.tazjin.home."${config.networking.hostName}";
} }

18
modules/nixos.nix Normal file
View file

@ -0,0 +1,18 @@
{
# Auto system update
system.autoUpgrade = {
enable = true;
};
# Automatic Garbage Collection
nix.gc = {
automatic = true;
dates = "daily";
options = "--delete-older-than 7d";
};
# TODO : find what is installing this
nixpkgs.config.permittedInsecurePackages = [
"electron-21.4.0"
];
}