about summary refs log tree commit diff
diff options
context:
space:
mode:
authoraszlig <aszlig@redmoonstudios.org>2015-03-18 18:30:42 +0100
committeraszlig <aszlig@redmoonstudios.org>2015-03-18 18:30:42 +0100
commit012fc8e4f399af06ab013ba136fe1d2cffb913f1 (patch)
tree30067e9c9420fea0a9150234a01bd43208a9d18c
parent95a16e591e9e26158ebf1604e5cb2c82dfcf2856 (diff)
Refactor overrides into my base profile.
Just moving the overrides into the base profile isn't enough here,
as we wouldn't be able to refer to packages anymore, because the global
nixpkgs.config override is now gone.

Instead, we're now putting pkgs.vuizvui.* into the NixOS module system
by a new profiles/common.nix, which is used unconditionally for all
machines.

Of course, the result of this is that we now need to change all
references to vuizvui-related packages, which also is a good thing,
because we will no longer shadow existing packages from upstream
nixpkgs.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
-rw-r--r--machines/aszlig/kzerza.nix2
-rw-r--r--modules/module-list.nix1
-rw-r--r--modules/profiles/common.nix11
-rw-r--r--modules/user/aszlig/profiles/base.nix31
-rw-r--r--modules/user/aszlig/profiles/workstation/packages.nix10
-rw-r--r--modules/user/aszlig/services/i3/default.nix3
-rw-r--r--modules/user/aszlig/services/vlock/default.nix2
-rw-r--r--modules/user/aszlig/system/kernel.nix2
-rw-r--r--nixpkgs/config.nix12
-rw-r--r--overrides/default.nix29
-rw-r--r--pkgs/default.nix2
11 files changed, 53 insertions, 52 deletions
diff --git a/machines/aszlig/kzerza.nix b/machines/aszlig/kzerza.nix
index 31ca9852..5bb51856 100644
--- a/machines/aszlig/kzerza.nix
+++ b/machines/aszlig/kzerza.nix
@@ -50,7 +50,7 @@ in {
     preStart = "${pkgs.kbd}/bin/chvt 7";
     serviceConfig = {
       Type = "idle";
-      ExecStart = "${pkgs.grandpa}/bin/grandpa";
+      ExecStart = "${pkgs.vuizvui.grandpa}/bin/grandpa";
       StandardInput = "tty";
       StandardOutput = "tty";
       TTYPath = "/dev/tty7";
diff --git a/modules/module-list.nix b/modules/module-list.nix
index 37c4ebc7..26e740b2 100644
--- a/modules/module-list.nix
+++ b/modules/module-list.nix
@@ -1,4 +1,5 @@
 [
+  ./profiles/common.nix
   ./user/aszlig/profiles/base.nix
   ./user/aszlig/profiles/workstation
   ./user/aszlig/programs/gajim
diff --git a/modules/profiles/common.nix b/modules/profiles/common.nix
new file mode 100644
index 00000000..21a22358
--- /dev/null
+++ b/modules/profiles/common.nix
@@ -0,0 +1,11 @@
+{ config, ... }:
+
+{
+  nixpkgs.config.packageOverrides = pkgs: {
+    vuizvui = import ../../pkgs {
+      # We need to make sure to incorporate other package overrides,
+      # otherwise we are unable to override packages in vuizvui.*.
+      pkgs = pkgs // config.nixpkgs.config.packageOverrides pkgs;
+    };
+  };
+}
diff --git a/modules/user/aszlig/profiles/base.nix b/modules/user/aszlig/profiles/base.nix
index 4083150c..8ccc77d2 100644
--- a/modules/user/aszlig/profiles/base.nix
+++ b/modules/user/aszlig/profiles/base.nix
@@ -58,7 +58,36 @@ in {
       xz
     ];
 
-    nixpkgs.config = import ../../../../nixpkgs/config.nix;
+    nixpkgs.config = {
+      pulseaudio = true;
+      chromium.enablePepperFlash = true;
+      firefox.jre = true;
+
+      # Needed for CPU microcode
+      allowUnfree = true;
+
+      allowBroken = true;
+
+      packageOverrides = pkgs: {
+        miro = pkgs.miro.override {
+          enableBonjour = true;
+        };
+        netrw = pkgs.netrw.override {
+          checksumType = "mhash";
+        };
+        pulseaudio = pkgs.pulseaudio.override {
+          useSystemd = true;
+        };
+        uqm = pkgs.uqm.override {
+          use3DOVideos = true;
+          useRemixPacks = true;
+        };
+        w3m = pkgs.w3m.override {
+          graphicsSupport = true;
+        };
+      };
+    };
+
     system.fsPackages = with pkgs; [ sshfsFuse ];
     time.timeZone = "Europe/Berlin";
   };
diff --git a/modules/user/aszlig/profiles/workstation/packages.nix b/modules/user/aszlig/profiles/workstation/packages.nix
index 5b60ac21..6d952448 100644
--- a/modules/user/aszlig/profiles/workstation/packages.nix
+++ b/modules/user/aszlig/profiles/workstation/packages.nix
@@ -1,11 +1,11 @@
 pkgs: with pkgs; [
-  aacolorize
+  vuizvui.aacolorize
   acpi
   apg
   ascii
   aspellDicts.de
   aspellDicts.en
-  axbo
+  vuizvui.axbo
   bc
   beets
   chromiumBeta
@@ -51,7 +51,7 @@ pkgs: with pkgs; [
   netrw
   nix-prefetch-scripts
   nix-repl
-  nixops
+  vuizvui.nixops
   nixpkgs-lint
   nmap
   openssh
@@ -61,7 +61,7 @@ pkgs: with pkgs; [
   picard
   posix_man_pages
   pulseaudio
-  pvolctrl
+  vuizvui.pvolctrl
   python
   python3
   pythonPackages.hetzner
@@ -79,7 +79,7 @@ pkgs: with pkgs; [
   surfraw
   taskwarrior
   telnet
-  tomahawk
+  vuizvui.tomahawk
   unzip
   uqm
   valgrind
diff --git a/modules/user/aszlig/services/i3/default.nix b/modules/user/aszlig/services/i3/default.nix
index f1e46b7c..6064ec99 100644
--- a/modules/user/aszlig/services/i3/default.nix
+++ b/modules/user/aszlig/services/i3/default.nix
@@ -112,7 +112,8 @@ in
       name = "i3.conf";
       src = ./i3.conf;
 
-      inherit (pkgs) dmenu xterm pvolctrl;
+      inherit (pkgs) dmenu xterm;
+      inherit (pkgs.vuizvui) pvolctrl;
       inherit (pkgs.xorg) xsetroot;
       inherit wsConfig barConfig;
 
diff --git a/modules/user/aszlig/services/vlock/default.nix b/modules/user/aszlig/services/vlock/default.nix
index fdf0522f..5eb5e83d 100644
--- a/modules/user/aszlig/services/vlock/default.nix
+++ b/modules/user/aszlig/services/vlock/default.nix
@@ -5,7 +5,7 @@ let
 
   messageFile = pkgs.runCommand "message.cat" {} ''
     echo -en '\e[H\e[2J\e[?25l' > "$out"
-    "${pkgs.aacolorize}/bin/aacolorize" \
+    "${pkgs.vuizvui.aacolorize}/bin/aacolorize" \
       "${./message.cat}" "${./message.colmap}" \
       >> "$out"
   '';
diff --git a/modules/user/aszlig/system/kernel.nix b/modules/user/aszlig/system/kernel.nix
index a98a0a44..e715ccb2 100644
--- a/modules/user/aszlig/system/kernel.nix
+++ b/modules/user/aszlig/system/kernel.nix
@@ -45,7 +45,7 @@ in {
       linuxVuizvui = pkgs.buildLinux {
         inherit (mainlineKernel) version src;
 
-        kernelPatches = singleton pkgs.vuizvuiKernelPatches.bfqsched;
+        kernelPatches = singleton pkgs.vuizvui.kernelPatches.bfqsched;
         configfile = generateKConf cfg.config;
         allowImportFromDerivation = true;
       };
diff --git a/nixpkgs/config.nix b/nixpkgs/config.nix
deleted file mode 100644
index 5edb4334..00000000
--- a/nixpkgs/config.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{
-  pulseaudio = true;
-  chromium.enablePepperFlash = true;
-  firefox.jre = true;
-
-  # Needed for CPU microcode
-  allowUnfree = true;
-
-  allowBroken = true;
-
-  packageOverrides = import ../overrides;
-}
diff --git a/overrides/default.nix b/overrides/default.nix
deleted file mode 100644
index 479a222c..00000000
--- a/overrides/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-pkgs:
-
-with pkgs.lib;
-
-let
-  allPackages = (import ../pkgs { pkgs = everything; }) // misc;
-  everything = pkgs // allPackages // drvOverrides // argOverrides;
-
-  mapOverride = overrideFun: includePackages: let
-    packages = pkgs // allPackages // includePackages;
-    overrideName = name: overrideFun (getAttr name packages);
-  in mapAttrs overrideName;
-
-  # input attrset overrides using pkg.override
-  argOverrides = mapOverride (getAttr "override") drvOverrides {
-    netrw.checksumType = "mhash";
-    pulseaudio.useSystemd = true;
-    w3m.graphicsSupport = true;
-    uqm.use3DOVideos = true;
-    uqm.useRemixPacks = true;
-    miro.enableBonjour = true;
-  };
-
-  # derivation overrides
-  drvOverrides = mapOverride overrideDerivation argOverrides {};
-
-  # misc
-  misc = {};
-in allPackages // drvOverrides // argOverrides
diff --git a/pkgs/default.nix b/pkgs/default.nix
index 9ec483a2..1931dfcd 100644
--- a/pkgs/default.nix
+++ b/pkgs/default.nix
@@ -19,7 +19,7 @@ let
     tomahawk = callPackage ./tomahawk { };
     twitchstream = callPackage ./twitchstream { };
 
-    vuizvuiKernelPatches = {
+    kernelPatches = {
       bfqsched = callPackage ./kpatches/bfqsched.nix { };
     };
   };