diff --git a/flake.nix b/flake.nix index 34330c8..9d1647e 100644 --- a/flake.nix +++ b/flake.nix @@ -29,7 +29,7 @@ home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.extraSpecialArgs = { - inherit pkgs; inputs = { inherit (inputs); }; + inherit pkgs; nurNoPkgs = import nur { nurpkgs = pkgs; pkgs = throw "nixpkgs eval"; @@ -56,12 +56,13 @@ ]; }; }; - nixosConfigurations.zeus-utm-vm = (pkgsfunc "aarch64-linux").lib.nixosSystem rec { - inherit inputs; + nixosConfigurations.zeus-utm-vm = nixpkgs.lib.nixosSystem rec { system = "aarch64-linux"; pkgs = pkgsfunc system; - + + specialArgs = { inherit inputs; }; + modules = [ ./modules/nix.nix ./system/utm-arm-vm.nix diff --git a/home/darwin.nix b/home/darwin.nix index 8b1ed67..85f1c4c 100644 --- a/home/darwin.nix +++ b/home/darwin.nix @@ -20,11 +20,13 @@ in { imports = [ ./launchd.nix ./iterm2.nix ./finder.nix ]; - home.file.".gnupg/gpg-agent.conf".text = mkIf stdenv.isDarwin '' - pinentry-program "${pkgs.pinentry-touchid}/bin/pinentry-touchid" - default-cache-ttl 30 - max-cache-ttl 600 - ''; + home.file.".gnupg/gpg-agent.conf" = mkIf stdenv.isDarwin { + text = '' + pinentry-program "${pkgs.pinentry-touchid}/bin/pinentry-touchid" + default-cache-ttl 30 + max-cache-ttl 600 + ''; + }; home.file.".config/zsh/am.sh" = mkIf stdenv.isDarwin { executable = true; @@ -44,7 +46,7 @@ in programs.firefox.package = mkIf stdenv.isDarwin pkgs.firefox-mac; programs.chromium.package = mkIf stdenv.isDarwin pkgs.chromium-mac; - targets.darwin = { + targets.darwin = mkIf stdenv.isDarwin { defaults = { NSGlobalDomain = { AppleLanguages = [ "en-CA" ]; diff --git a/home/default.nix b/home/default.nix index 685fb9b..63e588e 100644 --- a/home/default.nix +++ b/home/default.nix @@ -43,5 +43,10 @@ rec { username = "willem"; }; - imports = [ ./emacs.nix ./packages.nix ./programs.nix ./darwin.nix ]; + imports = [ + ./darwin.nix + ./emacs.nix + ./packages.nix + ./programs.nix + ]; } diff --git a/home/finder.nix b/home/finder.nix index 7a6adb7..3cc2c43 100644 --- a/home/finder.nix +++ b/home/finder.nix @@ -1,3 +1,4 @@ +{ pkgs, lib, ... }: let columnSettings = { name = { @@ -84,7 +85,7 @@ let } // default-view-settings; in { - targets.darwin.defaults."com.apple.finder" = { + targets.darwin.defaults."com.apple.finder" = lib.mkIf pkgs.stdenv.isDarwin { AppleShowAllExtensions = true; ComputerViewSettings = dvs-with-ws; diff --git a/home/iterm2.nix b/home/iterm2.nix index 1edc1b0..feb8883 100644 --- a/home/iterm2.nix +++ b/home/iterm2.nix @@ -1,3 +1,5 @@ +{ pkgs, lib, ... }: + let dracula_plus = { "Ansi 0 Color" = { @@ -228,7 +230,7 @@ let } // dracula_plus; in { - targets.darwin.defaults."com.googlecode.iterm2" = { + targets.darwin.defaults."com.googlecode.iterm2" = lib.mkIf pkgs.stdenv.isDarwin { "AlternateMouseScroll" = true; "Default Bookmark Guid" = "30FFD0AB-B2EB-4635-9469-D089C1D9E106"; "HotkeyMigratedFromSingleToMulti" = true; diff --git a/home/packages.nix b/home/packages.nix index e3cb606..6140392 100644 --- a/home/packages.nix +++ b/home/packages.nix @@ -2,7 +2,7 @@ let darwin = with pkgs; [ ]; - linux = with pkgs; [ vlc qbittorrent freecad spotify ]; + linux = with pkgs; [ ]; pass-extended = pkgs.pass.withExtensions (exts: [ exts.pass-genphrase exts.pass-otp exts.pass-import ]); python-wp = pkgs.python310.withPackages (p: with p; [ setuptools pyaml requests latexify-py ]); node-packages = with pkgs.nodePackages; [ bash-language-server ]; @@ -20,7 +20,6 @@ in cmake comma curl - discord docker docker-compose fd @@ -40,7 +39,6 @@ in openssh pass-extended plantuml - pngpaste poppler pv python-wp diff --git a/system/common.nix b/system/common.nix index ce8d1b8..eae3dec 100644 --- a/system/common.nix +++ b/system/common.nix @@ -1,6 +1,7 @@ { pkgs, ... }: { + environment.systemPackages = [ pkgs.coreutils-full ]; environment.variables.SHELL = "${pkgs.zsh}/bin/zsh"; environment.variables.LANG = "en_US.UTF-8"; @@ -13,8 +14,6 @@ settings.trusted-users = [ "root" "willem" ]; }; - programs.bash.enable = true; - programs.nix-index.enable = true; programs.zsh.enable = true; @@ -35,5 +34,5 @@ time.timeZone = "America/Vancouver"; - users.users.willem.shell = pkgs.zshInteractive; + users.users.willem.shell = pkgs.zsh; } diff --git a/system/darwin.nix b/system/darwin.nix index 9fe0015..0f8d71c 100644 --- a/system/darwin.nix +++ b/system/darwin.nix @@ -19,13 +19,14 @@ environment.loginShell = "${pkgs.zsh}/bin/zsh -l"; environment.systemPackages = with pkgs; [ colima - coreutils darwin-zsh-completions + discord freecad-mac gnused iterm2 pinentry-touchid pinentry-mac + pngpaste qbittorrent-mac spoof-mac spotify-mac @@ -41,6 +42,7 @@ }; }; + programs.bash.enable = true; programs.man.enable = true; diff --git a/system/nixos.nix b/system/nixos.nix index 657a2a3..76cccf6 100644 --- a/system/nixos.nix +++ b/system/nixos.nix @@ -1,4 +1,6 @@ -{ pkgs, ... }: { +{ pkgs, ... }: + +{ imports = [ ./common.nix ]; boot.loader.systemd-boot.enable = true; @@ -6,9 +8,18 @@ boot.loader.efi.efiSysMountPoint = "/boot/efi"; console.keyMap = "colemak"; - + + environment.systemPackages = with pkgs; [ + freecad + pinentry-gnome + qbittorrent + vlc + ]; + i18n.defaultLocale = "en_US.UTF-8"; + programs.command-not-found.enable = false; + programs.zsh.loginShellInit = '' reexec() { unset __NIX_OS_SET_ENVIRONMENT_DONE @@ -26,16 +37,16 @@ services.printing.enable = true; - services.pulseaudio.enable = false; + hardware.pulseaudio.enable = false; security.rtkit.enable = true; - + services.xserver = { enable = true; displayManager.gdm.enable = true; desktopManager.gnome.enable = true; - + layout = "us"; xkbVariant = "colemak"; }; diff --git a/system/utm-arm-vm.nix b/system/utm-arm-vm.nix index 00b3414..5ee2258 100644 --- a/system/utm-arm-vm.nix +++ b/system/utm-arm-vm.nix @@ -17,8 +17,6 @@ fsType = "vfat"; }; - networking.useDHCP = true; - services.spice-vdagentd.enable = true; swapDevices = [ ];