- Reorganize directory structure into core/, features/, and themes/ - Colocate application Nix logic, configs, scripts, and theme overrides - Implement 'Inversion of Control' for theming: apps now pull theme-specific layouts - Update flake.nix and shared library paths to match the new structure - Document the new Feature-Centric architecture in README.md
31 lines
1015 B
Nix
31 lines
1015 B
Nix
{ config, pkgs, lib, ... }:
|
|
|
|
let
|
|
nomarchy-plymouth = pkgs.stdenv.mkDerivation {
|
|
pname = "nomarchy-plymouth";
|
|
version = "1.0";
|
|
|
|
src = ./plymouth;
|
|
|
|
installPhase = ''
|
|
mkdir -p $out/share/plymouth/themes/nomarchy
|
|
cp * $out/share/plymouth/themes/nomarchy/
|
|
# Fix path in the plymouth file to point to the nix store
|
|
sed -i "s|/[a-z]*/share/plymouth/themes/nomarchy|$out/share/plymouth/themes/nomarchy|g" $out/share/plymouth/themes/nomarchy/nomarchy.plymouth
|
|
'';
|
|
};
|
|
in
|
|
{
|
|
boot.initrd.systemd.enable = lib.mkDefault true;
|
|
boot.initrd.verbose = lib.mkDefault false;
|
|
console.earlySetup = lib.mkDefault true;
|
|
boot.consoleLogLevel = lib.mkDefault 0;
|
|
boot.plymouth = {
|
|
enable = lib.mkDefault true;
|
|
themePackages = lib.mkDefault [ nomarchy-plymouth ];
|
|
theme = lib.mkDefault "nomarchy";
|
|
};
|
|
|
|
boot.kernelParams = lib.mkDefault [ "quiet" "splash" "loglevel=3" "rd.systemd.show_status=false" "rd.udev.log_level=3" "udev.log_priority=3" "boot.shell_on_fail" ];
|
|
}
|