about summary refs log tree commit diff stats
path: root/flake
diff options
context:
space:
mode:
Diffstat (limited to 'flake')
-rw-r--r--flake/default.nix17
-rw-r--r--flake/nixosConfigurations/common.nix122
-rw-r--r--flake/nixosConfigurations/default.nix15
-rw-r--r--flake/packages/default.nix9
4 files changed, 17 insertions, 146 deletions
diff --git a/flake/default.nix b/flake/default.nix
index be6d2b70..ae17ad39 100644
--- a/flake/default.nix
+++ b/flake/default.nix
@@ -4,6 +4,7 @@
   pkgs,
   pkgsStable,
   nixLib,
+  baseLib,
   myPkgs,
   system,
   sysLib,
@@ -20,13 +21,12 @@
   disko,
   lanzaboote,
   nix-index-database,
+  arkenfox-nixos,
   # external dependencies
-  user_js,
   treefmt-nix,
   templates,
   # my binaries
   shell_library,
-  river_init_lesser,
   qmk_firmware,
 }: let
   treefmtEval = import ./treefmt.nix {inherit treefmt-nix pkgs;};
@@ -43,6 +43,7 @@
       shell_library
       sysLib
       nixLib
+      baseLib
       templates
       # modules
       home-manager
@@ -55,20 +56,16 @@
       disko
       lanzaboote
       nix-index-database
+      arkenfox-nixos
       # bins
-      river_init_lesser
       qmk_firmware
-      # external
-      user_js
       ;
   };
 
   tests = import ../tests {
-    inherit pkgs nixpkgs_as_input myPkgs sysLib nixLib;
+    inherit pkgs nixpkgs_as_input myPkgs sysLib nixLib nixpkgs_open_prs system;
     inherit (pkgs) lib;
     extraModules = {
-      termfilechooser = "${nixpkgs_open_prs.nixpkgs-tfc}/nixos/modules/config/xdg/portals/termfilechooser.nix";
-
       nixvim = {
         homeManagerModule = nixVim.homeManagerModules.nixvim;
       };
@@ -111,6 +108,8 @@ in {
 
   formatter."${system}" = treefmtEval.config.build.wrapper;
 
+  baseLib."${system}" = baseLib;
+
   apps."${system}" = import ./apps {inherit self system;};
 
   devShells."${system}" = {
@@ -136,11 +135,11 @@ in {
 
         # nix
         pkgs.alejandra
+        pkgs.deadnix
 
         # update
         myPkgs.generate_moz_extension # needed for the firefox extension update script
         myPkgs.lf-make-map # needed to generate the lf cd mappings
-        myPkgs.update-vim-plugins
       ];
     };
   };
diff --git a/flake/nixosConfigurations/common.nix b/flake/nixosConfigurations/common.nix
deleted file mode 100644
index b8601c75..00000000
--- a/flake/nixosConfigurations/common.nix
+++ /dev/null
@@ -1,122 +0,0 @@
-# This file contains common configuration applied to every host.
-# It should only `enable` options defined in the `modules/by-name` directory.
-{
-  config,
-  pkgs,
-  ...
-}: {
-  soispha = {
-    boot.enable = true;
-    cleanup.enable = true;
-    documentation.enable = true;
-
-    fonts = {
-      enable = true;
-      enableEmoji = true;
-    };
-
-    home-manager.enable = true;
-    impermanence = {
-      enable = true;
-
-      directories = [
-        "/etc/nixos"
-        "/var/log"
-        "/var/lib/systemd"
-        "/var/lib/nixos"
-      ];
-    };
-    polkit.enable = true;
-    power.enable = true;
-
-    services = {
-      adb = {
-        enable = true;
-        user = "soispha";
-      };
-      fwupd.enable = true;
-      mpd = {
-        enable = true;
-        directories = let
-          data = "${config.home-manager.users.soispha.xdg.dataHome}/mpd";
-        in {
-          inherit data;
-          playlists = "${data}/playlists";
-          runtime = "/run/user/${builtins.toString config.users.users.soispha.uid}/mpd";
-          music = config.home-manager.users.soispha.programs.beets.settings.directory;
-        };
-        mpc = {
-          enable = true;
-          beetsPkg = config.home-manager.users.soispha.programs.beets.package;
-        };
-      };
-      ollama.enable = false;
-      postgresql.enable = false;
-      printing.enable = true;
-      scanning.enable = true;
-      snapper.enable = true;
-      steam.enable = false;
-      systemDiff.enable = true;
-      unison = {
-        enable = true;
-
-        foreign.userName = "soispha";
-        dataDir = "${config.home-manager.users.soispha.xdg.dataHome}/unison";
-        userSourceDir = "/srv/home/soispha";
-        pathsToIgnore = let
-          extractTarget = attr: "~/${attr.target}";
-          homeManagerSymlinks =
-            builtins.map extractTarget
-            (builtins.attrValues
-              config.home-manager.users.soispha.home.file);
-        in
-          [
-            # already synchronized by the taskserver
-            "~/.local/share/task"
-
-            # Should not be synchronized
-            "~/.local/share/unison"
-
-            # Is just to big to be synchronized (# TODO: Work around that <2024-08-31> )
-            "~/media/music"
-          ]
-          ++ homeManagerSymlinks;
-
-        pathsToSync = [
-          "~/.local/state/mpv"
-          "~/.local/state/nvim"
-          "~/.local/share"
-          "~/.local/.Trash-1000"
-
-          "~/.mozilla/.Trash-1000"
-          "~/.mozilla/firefox"
-
-          "~/media"
-          "~/school"
-          "~/repos"
-        ];
-      };
-    };
-
-    programs = {
-      nvim = {
-        enable = true;
-        shell = pkgs.zsh;
-      };
-      atuin.enable = true;
-      git.enable = true;
-      imv.enable = true;
-      less.enable = true;
-      lf.enable = true;
-      river.enable = true;
-      taskwarrior.enable = true;
-      yambar.enable = true;
-      yt.enable = true;
-      zathura.enable = true;
-      zsh.enable = true;
-    };
-
-    sound.enable = true;
-    version.enable = true;
-  };
-}
diff --git a/flake/nixosConfigurations/default.nix b/flake/nixosConfigurations/default.nix
index b0a02580..1831cd1b 100644
--- a/flake/nixosConfigurations/default.nix
+++ b/flake/nixosConfigurations/default.nix
@@ -9,6 +9,7 @@
   shell_library,
   sysLib,
   nixLib,
+  baseLib,
   templates,
   # modules
   home-manager,
@@ -21,15 +22,11 @@
   disko,
   lanzaboote,
   nix-index-database,
+  arkenfox-nixos,
   # bins
-  river_init_lesser,
   qmk_firmware,
-  # external
-  user_js,
 }: let
   modules = [
-    "${nixpkgs_open_prs.nixpkgs-tfc}/nixos/modules/config/xdg/portals/termfilechooser.nix"
-
     agenix.nixosModules.default
     disko.nixosModules.default
     home-manager.nixosModules.home-manager
@@ -38,7 +35,7 @@
     serverphone.nixosModules.default
 
     ../../modules
-    ./common.nix
+    ../../modules/common
   ];
 
   specialArgs = {
@@ -50,23 +47,22 @@
       shell_library
       sysLib
       nixLib
+      baseLib
       # extra information
       system
       # modules
       impermanence
       nix-index-database
       nixVim
+      arkenfox-nixos
       # nix registry
       nixpkgs_as_input
       self
       templates
       # bins
       # TODO: Integrate these into `pkgs/by-name` <2024-05-22>
-      river_init_lesser
       qmk_firmware
       serverphone
-      # external deps
-      user_js
       ;
   };
 
@@ -84,7 +80,6 @@
 
   # FIXME: These need to stay in this position for the install script
   hosts = ["tiamat" "apzu"];
-  inactiveHosts = ["mammun" "lahmu"];
 
   generatedHosts = builtins.listToAttrs (builtins.map generateHost hosts);
 in
diff --git a/flake/packages/default.nix b/flake/packages/default.nix
index a8fc2d64..95aa539a 100644
--- a/flake/packages/default.nix
+++ b/flake/packages/default.nix
@@ -5,7 +5,6 @@
   myPkgs,
   pkgsStable,
   sysLib,
-  nixVim,
   system,
   shell_library,
   ...
@@ -23,7 +22,10 @@
         # NOTE: This is copied from `nixvim`, and could be achieved by setting
         # `config.wrapRc` to `true`. But I have yet to find a way to set this in this
         # context, but not in the general context.  <2024-11-09>
-        wrapped = config.build.package.override (prev: {
+        # NOTE: I'm not sure why we need `nvimPackage` instead of just the `package`
+        # attribute here, but the bare `package` attribute does not provide a `override`
+        # function. <2025-02-02>
+        wrapped = config.build.nvimPackage.override (prev: {
           wrapperArgs =
             (
               if lib.isString prev.wrapperArgs
@@ -64,8 +66,6 @@
             value)
         myPkgs
       )));
-
-  firefox = (import ../../modules/home.legacy/conf/firefox/scripts) {inherit pkgs sysLib;};
 in
   {
     # install-iso = nixos-generators.nixosGenerate {
@@ -94,5 +94,4 @@ in
   }
   // output
   // output_neovim
-  // firefox
   // myPkgsFlat