From 236ff25b498c05f1ea8a745fb9c5fcf52c5dc63d Mon Sep 17 00:00:00 2001 From: Christoph Hollizeck Date: Tue, 26 Mar 2024 17:28:20 +0100 Subject: [PATCH] #2 first somewhat working iteration, there seems to be a problem with home manager still --- homes/x86_64-linux/cholli@workvm/default.nix | 6 ++-- modules/nixos/apps/discord/default.nix | 2 +- modules/nixos/apps/vivaldi/default.nix | 17 ++++++++++ modules/nixos/nix/default.nix | 1 - .../nixos/submodules/basics/.default.nix.swp | Bin 12288 -> 0 bytes modules/nixos/submodules/basics/default.nix | 7 ++-- .../nixos/system/hardware/audio/default.nix | 3 +- .../system/hardware/bluetooth/default.nix | 20 +++++++++++ modules/nixos/tools/git/default.nix | 32 ++++++++++++++++++ modules/nixos/tools/nix-ld/default.nix | 16 +++++++++ systems/x86_64-linux/workvm/default.nix | 30 ++++++++++++---- 11 files changed, 118 insertions(+), 16 deletions(-) create mode 100644 modules/nixos/apps/vivaldi/default.nix delete mode 100644 modules/nixos/submodules/basics/.default.nix.swp create mode 100644 modules/nixos/system/hardware/bluetooth/default.nix create mode 100644 modules/nixos/tools/git/default.nix create mode 100644 modules/nixos/tools/nix-ld/default.nix diff --git a/homes/x86_64-linux/cholli@workvm/default.nix b/homes/x86_64-linux/cholli@workvm/default.nix index a5ff062..4dd32f8 100644 --- a/homes/x86_64-linux/cholli@workvm/default.nix +++ b/homes/x86_64-linux/cholli@workvm/default.nix @@ -10,11 +10,13 @@ let in { home = { - packages = with pkgs; [ neovim firefox ]; + packages = with pkgs; [ neovim ]; sessionVariables = { EDITOR = "nvim"; }; - shellAliases = { vimdiff = "nvim -d"; }; + shellAliases = { + vim = "nvim"; + vimdiff = "nvim -d"; }; stateVersion = "23.11"; }; diff --git a/modules/nixos/apps/discord/default.nix b/modules/nixos/apps/discord/default.nix index 45e0a5d..a168876 100644 --- a/modules/nixos/apps/discord/default.nix +++ b/modules/nixos/apps/discord/default.nix @@ -9,7 +9,7 @@ in }; config = mkIf cfg.enable { - environment.systemPackages = [ + environment.systemPackages = with pkgs; [ discord ]; }; diff --git a/modules/nixos/apps/vivaldi/default.nix b/modules/nixos/apps/vivaldi/default.nix new file mode 100644 index 0000000..0703bcd --- /dev/null +++ b/modules/nixos/apps/vivaldi/default.nix @@ -0,0 +1,17 @@ +{ options, config, lib, pkgs, ... }: +with lib; +with lib.wyrdgard; let + cfg = config.wyrdgard.apps.vivaldi; +in +{ + options.wyrdgard.apps.vivaldi = with types; { + enable = mkBoolOpt false "Whether or not to enable vivaldi browser"; +}; + + config = mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + vivaldi + vivaldi-ffmpeg-codecs +]; +}; +} diff --git a/modules/nixos/nix/default.nix b/modules/nixos/nix/default.nix index eaab964..a4f5bfe 100644 --- a/modules/nixos/nix/default.nix +++ b/modules/nixos/nix/default.nix @@ -40,7 +40,6 @@ in environment.systemPackages = with pkgs; [ nixfmt nix-prefetch-git - flake-checker ]; nix = diff --git a/modules/nixos/submodules/basics/.default.nix.swp b/modules/nixos/submodules/basics/.default.nix.swp deleted file mode 100644 index 5a44cc383b5f83ab9c85b144578b393e59367477..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12288 zcmeI2F^dyH6vyA4mEfr;h~*d&o4d`Of~es@P7n?h&q6Kairwt&X2@hG?9N^iLbMY> z)DL0f2T&^o8%qmqgtNKM%2u#Y{7-h1(@XAbY?L?f+u6*#nR)XYQiM#fcx&~VxZo`k z%3-3l&DrSfspE8MKT*A5v{tTT@6s`8bECC)jO)EyOjz|oV>&4-MG%4Bf-NX3M?Jm-Wn!y8Or$8(;%$fDNz#Hoykh02^QfY=8~0 z0XFat8t_A+_yAFL4$0&H|IzRNuZM`ffX`qHY=V#A9e4>If(PI}xB>Qo9|wuPgDvnH zyaF%4bMO>A29Ll1MBpm83|2rD90T8w$0zUsya#W#fm%itVX0xtK{fD0R7 z18jf|umLu}2G{@_U;}L6Zx|Sqg@hQ?@EBLWya>^424Y#r#1FI#i!c{zRZC85*QW04 zsXdWNY&LC3V2qt?&w81aEwuNE+=9O)l}PJuXsaZi94JJfb7?VYV_K)5hssQLH2gH| z_^Hc$>Vm4fpu@>wLd0rH@>pHFy^g2CZSS3fJH0fFvFdi%dac;1Og2<%l9o)YS7=!C z>rFqFZpu3(MBOBja$9dTS0ho6Vy`%#V!iS(%O)4Jf^@F8t%!V`Nm04okhURHVN#Jm zy*1_Wis2RYa`rs+tul#Mac6GY?mhEHIeXjp+P&glJCf-r7`MH)%xXxaPbzV#MlR1H q;XQ`eXgFG{U>sBvTH0}QjRqHKUU;5|XS*3^s1S{3F*o%`NzzZK_!vw8 diff --git a/modules/nixos/submodules/basics/default.nix b/modules/nixos/submodules/basics/default.nix index 4ecaa4a..bc53ea6 100644 --- a/modules/nixos/submodules/basics/default.nix +++ b/modules/nixos/submodules/basics/default.nix @@ -5,7 +5,8 @@ , ... }: with lib; -with lib.wyrdgard; let +with lib.wyrdgard; +let cfg = config.wyrdgard.submodules.basics; in { @@ -26,9 +27,7 @@ in nix-ld = enabled; }; - hardware = { - audio = enabled; - bluetooth = enabled; + system.hardware = { networking = enabled; }; diff --git a/modules/nixos/system/hardware/audio/default.nix b/modules/nixos/system/hardware/audio/default.nix index 4db4d7c..e27af05 100644 --- a/modules/nixos/system/hardware/audio/default.nix +++ b/modules/nixos/system/hardware/audio/default.nix @@ -10,7 +10,6 @@ in }; config = mkIf cfg.enable { - sound.enable = true; hardware.pulseaudio.enable = false; security.rtkit.enable = true; @@ -18,7 +17,7 @@ in services.pipewire = { enable = true; alsa.enable = true; - alsa.support32bit = true; + alsa.support32Bit = true; pulse.enable = true; }; }; diff --git a/modules/nixos/system/hardware/bluetooth/default.nix b/modules/nixos/system/hardware/bluetooth/default.nix new file mode 100644 index 0000000..ad13fbe --- /dev/null +++ b/modules/nixos/system/hardware/bluetooth/default.nix @@ -0,0 +1,20 @@ +{ options, config, lib, pkgs, ... }: + +with lib; +with lib.wyrdgard; +let + cfg = config.wyrdgard.system.hardware.bluetooth; +in +{ + options.wyrdgard.system.hardware.bluetooth = with types; { + enable = mkBoolOpt false "Whether or not to enable bluetooth"; + }; + + config = mkIf cfg.enable { + + hardware.bluetooth = { + enable = true; + powerOnBoot = true; + }; + }; +} diff --git a/modules/nixos/tools/git/default.nix b/modules/nixos/tools/git/default.nix new file mode 100644 index 0000000..fa5f435 --- /dev/null +++ b/modules/nixos/tools/git/default.nix @@ -0,0 +1,32 @@ +{ options, config, lib, pkgs, ... }: + +with lib; +with lib.wyrdgard; + +let + cfg = config.wyrdgard.tools.git; + user = config.wyrdgard.user; +in +{ + options.wyrdgard.tools.git = with types; { + enable = mkBoolOpt true "Wether or not to enable git (Default enabled)"; + userName = mkOpt types.str user.fullName "The name to use git with"; + userEmail = mkOpt types.str user.email "The email to use git with"; + }; + + config = mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + git + gitAndTools.gh + ]; + + programs.git = { + enable = true; + lfs.enable = true; + config = { + init = { defaultBranch = "main"; }; + push = { autoSetupRemote = true; }; + }; + }; + }; +} diff --git a/modules/nixos/tools/nix-ld/default.nix b/modules/nixos/tools/nix-ld/default.nix new file mode 100644 index 0000000..58547cd --- /dev/null +++ b/modules/nixos/tools/nix-ld/default.nix @@ -0,0 +1,16 @@ +{ options, config, lib, pkgs, ... }: + +with lib; +with lib.wyrdgard; + +let + cfg = config.wyrdgard.tools.nix-ld; +in { + options.wyrdgard.tools.nix-ld = with types; { + enable = mkBoolOpt false "Wether or not to enable nix-ld"; + }; + + config = mkIf cfg.enable { + programs.nix-ld.enable = true; + }; +} diff --git a/systems/x86_64-linux/workvm/default.nix b/systems/x86_64-linux/workvm/default.nix index 13aa1d6..d1d1d6c 100644 --- a/systems/x86_64-linux/workvm/default.nix +++ b/systems/x86_64-linux/workvm/default.nix @@ -1,7 +1,7 @@ -{ pkgs -, config -, ... -}: { +{ pkgs , config , lib, ... }: +with lib; +with lib.wyrdgard; +{ imports = [ ./hardware.nix ]; boot.loader.systemd-boot.enable = true; @@ -21,7 +21,6 @@ gitAndTools.gh kitty fish - vim vivaldi fd @@ -46,8 +45,27 @@ xkbVariant = ""; }; + environment.variables.EDITOR = "nvim"; + environment.variables.SUDOEDITOR = "nvim"; + # Configure Home-Manager options from NixOS. - snowfallorg.user.cholli.home.config = { }; + snowfallorg.user.cholli.home.config = { + programs.kitty= { + theme = "Tokyo Night"; + shellIntegration.enableFishIntegration = true; + }; +}; + + wyrdgard = { + apps = { + discord = enabled; + vivaldi = enabled; + }; + + submodules = { + basics = enabled; + }; + }; system.stateVersion = "23.11"; }