whole bunch of stuff

This commit is contained in:
atagen 2025-01-03 16:14:31 +11:00
parent bafb226314
commit 4e99a0e323
43 changed files with 555 additions and 868 deletions

937
flake.lock generated

File diff suppressed because it is too large Load diff

127
flake.nix
View file

@ -5,8 +5,6 @@
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.05";
nur.url = "github:/nix-community/NUR";
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
@ -23,7 +21,8 @@
nix-rice.url = "github:bertof/nix-rice";
nixd.url = "github:nix-community/nixd";
# nixd.url = "github:nix-community/nixd";
nil.url = "github:oxalica/nil";
madness.url = "github:antithesishq/madness";
@ -45,16 +44,22 @@
inputs.lix.follows = "lix";
inputs.lix-module.follows = "lix-module";
inputs.nh.follows = "nh";
inputs.nixpkgs.follows = "nixpkgs";
};
culr.url = "git+https://git.atagen.co/atagen/culr";
culr = {
url = "git+https://git.atagen.co/atagen/culr";
inputs.nixpkgs.follows = "nixpkgs";
};
comfyui.url = "path:./flakes/ComfyUI";
comfyui-plugins.url = "path:./flakes/ComfyUI-Plugins";
comfyui = {
url = "path:./flakes/comfyui";
inputs.nixpkgs.follows = "nixpkgs";
};
podman = {
flake = false;
url = "github:containers/podman";
comfyui-plugins = {
url = "path:./flakes/comfyui-plugins";
inputs.nixpkgs.follows = "nixpkgs";
};
murex = {
@ -62,36 +67,47 @@
flake = false;
};
murex-jump.url = "path:./flakes/murex-module-jump";
murex-starship.url = "path:./flakes/murex-module-starship";
murex-jump = {
url = "path:./flakes/murex-module-jump";
inputs.nixpkgs.follows = "nixpkgs";
};
niri.url = "github:sodiboo/niri-flake";
murex-starship = {
url = "path:./flakes/murex-module-starship";
inputs.nixpkgs.follows = "nixpkgs";
};
niri = {
url = "github:sodiboo/niri-flake";
};
ironbar.url = "github:JakeStanger/ironbar";
sirula = {
url = "github:jlo62/sirula";
url = "github:DorianRudolph/sirula";
flake = false;
};
nixago = {
url = "github:jmgilman/nixago";
inputs.nixpkgs.follows = "nixpkgs";
};
# hjem = {
# url = "github:feel-co/hjem";
# inputs.nixpkgs.follows = "nixpkgs";
# };
wrapper-manager = {
url = "github:viperML/wrapper-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
# nixago = {
# url = "github:jmgilman/nixago";
# inputs.nixpkgs.follows = "nixpkgs";
# };
# wrapper-manager = {
# url = "github:viperML/wrapper-manager";
# inputs.nixpkgs.follows = "nixpkgs";
# };
};
outputs = {
self,
nixpkgs,
home-manager,
nur,
flatpaks,
nix-index-database,
madness,
meat,
@ -100,54 +116,25 @@
...
} @ inputs: let
inherit (self) outputs;
inherit (nixpkgs) lib;
inherit (lib) mapAttrs;
sharedModules = [
meat.nixosModules.meat
culr.nixosModules.culr
madness.nixosModules.madness
nur.nixosModules.nur
nix-index-database.nixosModules.nix-index
niri.nixosModules.niri
./system/cachix.nix
];
system = "x86_64-linux";
createSystems = definitions:
mapAttrs (name: info:
nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {
inherit inputs outputs;
mainUser = info.user;
};
modules =
[
./system/${name}.nix
home-manager.nixosModules.home-manager
{
home-manager = {
useGlobalPkgs = true;
extraSpecialArgs = {
inherit inputs outputs;
mainUser = info.user;
};
users.${info.user}.imports =
[
flatpaks.homeManagerModules.nix-flatpak
./home/${info.user}.nix
]
++ info.hmImports or [];
};
}
]
++ info.imports or []
++ sharedModules;
})
definitions;
create = import ./util/create.nix {
inherit nixpkgs home-manager inputs outputs;
system = "x86_64-linux";
sharedModules = [
culr.nixosModules.culr
meat.nixosModules.meat
madness.nixosModules.madness
niri.nixosModules.niri
nix-index-database.nixosModules.nix-index
./system/cachix.nix
];
};
in {
overlays = import ./util/overlay.nix {inherit inputs;};
overlays = import ./util/overlay.nix {
inherit inputs;
inherit (nixpkgs) lib;
};
nixosConfigurations = createSystems {
nixosConfigurations = create.systems {
quiver.user = "bolt";
adrift.user = "plank";
};

View file

@ -3,11 +3,11 @@
"gguf": {
"flake": false,
"locked": {
"lastModified": 1732341089,
"narHash": "sha256-fOGRAv42TXqM/2exNPYHH8cTy0TX6rfLlIBqBiqdQoo=",
"lastModified": 1735245753,
"narHash": "sha256-2o05HLPoFLPwj5zh/B1hHPsfZ9rbfydo/STKPXW1zkM=",
"owner": "city96",
"repo": "ComfyUI-GGUF",
"rev": "4a8432884167f2526d60ef36e985bdabebb9e1e0",
"rev": "3dc384b23366983b28222cbf681b808053949a43",
"type": "github"
},
"original": {
@ -18,10 +18,10 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1732521221,
"narHash": "sha256-2ThgXBUXAE1oFsVATK1ZX9IjPcS4nKFOAjhPNKuiMn0=",
"path": "/nix/store/frfyxcpzsdasdin76x83krbhpgkis8b0-source",
"rev": "4633a7c72337ea8fd23a4f2ba3972865e3ec685d",
"lastModified": 1735471104,
"narHash": "sha256-0q9NGQySwDQc7RhAV2ukfnu7Gxa5/ybJ2ANT8DQrQrs=",
"path": "/nix/store/8vz84mqgnm1gz5yk7hgnnb5gir5hjxas-source",
"rev": "88195a94f390381c6afcdaa933c2f6ff93959cb4",
"type": "path"
},
"original": {

View file

@ -3,11 +3,11 @@
"comfyui": {
"flake": false,
"locked": {
"lastModified": 1732969631,
"narHash": "sha256-4TNU6987zvTc9Fo6CptEq7unowEQGleFNdNQPHvOspQ=",
"lastModified": 1735863648,
"narHash": "sha256-hMe8kXco8PTtOeLq0Q2+P3MbcnnShzAlOeCnY1MSuyI=",
"owner": "comfyanonymous",
"repo": "ComfyUI",
"rev": "3fc6ebcdd72272349c0d1e18ad2f2d02f2d0fe84",
"rev": "0b9839ef433572609b37d880afb427e4c9ddf151",
"type": "github"
},
"original": {
@ -18,10 +18,10 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1732521221,
"narHash": "sha256-2ThgXBUXAE1oFsVATK1ZX9IjPcS4nKFOAjhPNKuiMn0=",
"path": "/nix/store/frfyxcpzsdasdin76x83krbhpgkis8b0-source",
"rev": "4633a7c72337ea8fd23a4f2ba3972865e3ec685d",
"lastModified": 1735471104,
"narHash": "sha256-0q9NGQySwDQc7RhAV2ukfnu7Gxa5/ybJ2ANT8DQrQrs=",
"path": "/nix/store/8vz84mqgnm1gz5yk7hgnnb5gir5hjxas-source",
"rev": "88195a94f390381c6afcdaa933c2f6ff93959cb4",
"type": "path"
},
"original": {

View file

@ -21,6 +21,7 @@ in {
plugins = mkOption {
type = with types; listOf package;
description = "list of comfyui plugins";
default = [];
};
};
config = lib.mkIf cfg.enable {

View file

@ -2,10 +2,10 @@
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1732521221,
"narHash": "sha256-2ThgXBUXAE1oFsVATK1ZX9IjPcS4nKFOAjhPNKuiMn0=",
"path": "/nix/store/frfyxcpzsdasdin76x83krbhpgkis8b0-source",
"rev": "4633a7c72337ea8fd23a4f2ba3972865e3ec685d",
"lastModified": 1735471104,
"narHash": "sha256-0q9NGQySwDQc7RhAV2ukfnu7Gxa5/ybJ2ANT8DQrQrs=",
"path": "/nix/store/8vz84mqgnm1gz5yk7hgnnb5gir5hjxas-source",
"rev": "88195a94f390381c6afcdaa933c2f6ff93959cb4",
"type": "path"
},
"original": {

View file

@ -2,10 +2,10 @@
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1732521221,
"narHash": "sha256-2ThgXBUXAE1oFsVATK1ZX9IjPcS4nKFOAjhPNKuiMn0=",
"path": "/nix/store/frfyxcpzsdasdin76x83krbhpgkis8b0-source",
"rev": "4633a7c72337ea8fd23a4f2ba3972865e3ec685d",
"lastModified": 1735471104,
"narHash": "sha256-0q9NGQySwDQc7RhAV2ukfnu7Gxa5/ybJ2ANT8DQrQrs=",
"path": "/nix/store/8vz84mqgnm1gz5yk7hgnnb5gir5hjxas-source",
"rev": "88195a94f390381c6afcdaa933c2f6ff93959cb4",
"type": "path"
},
"original": {

View file

@ -23,14 +23,15 @@
];
programs.comfyui = {
enable = true;
enable = false;
storage = "/home/${config.mainUser}/.local/share/comfyui/";
plugins = let
inherit (pkgs.comfyui-plugins) gguf openpose;
in [
gguf
# essentials
openpose
];
plugins = [];
# plugins = let
# inherit (pkgs.comfyui-plugins) gguf openpose;
# in [
# gguf
# # essentials
# openpose
# ];
};
}

View file

@ -15,7 +15,6 @@ in {
./modules/theming.nix
./modules/niri.nix
./util/ez.nix
./util/flatpak.nix
./util/murex.nix
./util/name.nix
inputs.nix-index-database.hmModules.nix-index
@ -50,10 +49,11 @@ in {
};
home.packages = let
inherit (pkgs.rice) icons fonts;
inherit (pkgs.rice) icons fonts cursor;
in
fonts.pkgs
++ icons.pkgs;
++ icons.pkgs
++ [cursor.package];
systemd.user.targets.tray = {
Unit = {
@ -91,6 +91,6 @@ in {
systemd.user.startServices = "sd-switch";
ezServices = {
ckb-next = "${getExe inputs.nixpkgs-stable.legacyPackages.x86_64-linux.ckb-next} -c -b";
ckb-next = "${getExe pkgs.ckb-next} -c -b";
};
}

View file

@ -1,7 +1,6 @@
{config, ...}: {
imports = [
../util/firefox-webapp.nix
../util/flatpak.nix
];
programs.firefox.webapps = {
"Microsoft-Teams" = {
@ -19,5 +18,4 @@
icon = ../icons/fb_msg.png;
};
};
# flatpaks = ["im.riot.Riot"];
}

View file

@ -2,9 +2,9 @@
imports = [
../programs/kitty.nix
../programs/zsh.nix
../programs/xresources.nix
# ../programs/xresources.nix
../programs/helix.nix
../programs/atuin.nix
# ../programs/atuin.nix
../programs/murex.nix
];
home.packages = with pkgs; [

View file

@ -1,10 +1,10 @@
{...}: {
imports = [
../util/flatpak.nix
];
flatpaks = [
"ar.com.tuxguitar.TuxGuitar"
"org.inkscape.Inkscape"
"com.github.PintaProject.Pinta"
];
# imports = [
# ../util/flatpak.nix
# ];
# flatpaks = [
# "ar.com.tuxguitar.TuxGuitar"
# "org.inkscape.Inkscape"
# "com.github.PintaProject.Pinta"
# ];
}

View file

@ -1,6 +1,6 @@
{pkgs, ...}: {
imports = [
../util/flatpak.nix
# ../util/flatpak.nix
];
# home.packages = with pkgs; [
# libreoffice

View file

@ -127,6 +127,7 @@ in {
hide-after-inactive-ms = 5000;
hide-when-typing = true;
size = 16;
theme = pkgs.rice.cursor.name;
};
layout = {
always-center-single-column = true;

View file

@ -157,22 +157,6 @@ in {
# theme = "nix-rice"
# [editor]
# bufferline = "multiple"
# cursorline = true
# true-color = true
# [editor.cursor-shape]
# insert = "bar"
# normal = "block"
# select = "underline"
# [editor.lsp]
# display-messages = true
# [editor.statusline]
# left = ["mode", "spinner", "version-control", "file-name", "file-modification-indicator"]
settings = {
theme = "nix-rice";
editor = {
@ -206,7 +190,7 @@ in {
}
{
name = "nix";
language-servers = ["nixd"];
language-servers = ["nil"];
file-types = ["nix"];
# auto-format = true;
formatter = {
@ -216,8 +200,8 @@ in {
];
language-server = {
nixd = {
command = "nixd";
nil = {
command = "nil";
};
rust-analyzer = {

View file

@ -17,11 +17,12 @@
"editor.fontFamily" = "${pkgs.rice.fonts.monospace.name}";
"editor.fontSize" = 12;
"workbench.colorTheme" = "KanagawaTheme";
"rust-analyzer.check.overrideCommand" = ["clippy"];
"rust-analyzer.debug.engine" = "vadimcn.vscode-lldb";
"rust-analyzer.inlayHints.chainingHints.enable" = false;
"rust-analyzer.inlayHints.parameterHints.enable" = false;
"rust-analyzer.inlayHints.typeHints.enable" = false;
"nix.enableLanguageServer" = true;
"nix.serverPath" = "nil";
};
};
}

View file

@ -13,7 +13,6 @@ in {
};
home.packages = with pkgs; [
xorg.xrdb
culr
];
xresources.properties = with palette-hex; {
"*.foreground" = util.fg;

View file

@ -1,10 +0,0 @@
[Interface]
# Device: Deep Cat
PrivateKey = MCWyrdXm37YlzX8BhmP3qPleVJEVlBmAPD7Yt6aWO3M=
Address = 10.73.2.12/32,fc00:bbbb:bbbb:bb01::a:20b/128
DNS = 10.64.0.1
[Peer]
PublicKey = 4JpfHBvthTFOhCK0f5HAbzLXAVcB97uAkuLx7E8kqW0=
AllowedIPs = 0.0.0.0/0,::0/0
Endpoint = 146.70.200.2:51820

View file

@ -1,10 +0,0 @@
[Interface]
# Device: Deep Cat
PrivateKey = MCWyrdXm37YlzX8BhmP3qPleVJEVlBmAPD7Yt6aWO3M=
Address = 10.73.2.12/32,fc00:bbbb:bbbb:bb01::a:20b/128
DNS = 10.64.0.1
[Peer]
PublicKey = lUeDAOy+iAhZDuz5+6zh0Co8wZcs3ahdu2jfqQoDW3E=
AllowedIPs = 0.0.0.0/0,::0/0
Endpoint = 146.70.141.194:51820

View file

@ -1,10 +0,0 @@
[Interface]
# Device: Deep Cat
PrivateKey = MCWyrdXm37YlzX8BhmP3qPleVJEVlBmAPD7Yt6aWO3M=
Address = 10.73.2.12/32,fc00:bbbb:bbbb:bb01::a:20b/128
DNS = 10.64.0.1
[Peer]
PublicKey = LXuRwa9JRTt2/UtldklKGlj/IVLORITqgET4II4DRkU=
AllowedIPs = 0.0.0.0/0,::0/0
Endpoint = 146.70.200.194:51820

View file

@ -1,10 +0,0 @@
[Interface]
# Device: Deep Cat
PrivateKey = MCWyrdXm37YlzX8BhmP3qPleVJEVlBmAPD7Yt6aWO3M=
Address = 10.73.2.12/32,fc00:bbbb:bbbb:bb01::a:20b/128
DNS = 10.64.0.1
[Peer]
PublicKey = NKP4jSvSDZg5HJ3JxpGYMxIYt7QzoxSFrU2F0m1ZxwA=
AllowedIPs = 0.0.0.0/0,::0/0
Endpoint = 103.136.147.3:51820

View file

@ -1,10 +0,0 @@
[Interface]
# Device: Deep Cat
PrivateKey = MCWyrdXm37YlzX8BhmP3qPleVJEVlBmAPD7Yt6aWO3M=
Address = 10.73.2.12/32,fc00:bbbb:bbbb:bb01::a:20b/128
DNS = 10.64.0.1
[Peer]
PublicKey = w825smx7YI9/SrwSYGdsuwD1Qt5UsS/CyaGTjwSYljU=
AllowedIPs = 0.0.0.0/0,::0/0
Endpoint = 103.136.147.65:51820

View file

@ -1,10 +0,0 @@
[Interface]
# Device: Deep Cat
PrivateKey = MCWyrdXm37YlzX8BhmP3qPleVJEVlBmAPD7Yt6aWO3M=
Address = 10.73.2.12/32,fc00:bbbb:bbbb:bb01::a:20b/128
DNS = 10.64.0.1
[Peer]
PublicKey = poOHsF6v91yURxDrNe/P/adyNUqsRGzhFIioyBYUPww=
AllowedIPs = 0.0.0.0/0,::0/0
Endpoint = 103.136.147.129:51820

View file

@ -1,10 +0,0 @@
[Interface]
# Device: Deep Cat
PrivateKey = MCWyrdXm37YlzX8BhmP3qPleVJEVlBmAPD7Yt6aWO3M=
Address = 10.73.2.12/32,fc00:bbbb:bbbb:bb01::a:20b/128
DNS = 10.64.0.1
[Peer]
PublicKey = 61Ovy3ObuHqllZK/P/5cOWZnY26SY2csmjzVK1q+fFs=
AllowedIPs = 0.0.0.0/0,::0/0
Endpoint = 103.136.147.197:51820

View file

@ -19,6 +19,7 @@ in {
"https://cache.garnix.io"
"https://walker-git.cachix.org"
"https://anmonteiro.nix-cache.workers.dev"
"https://viperml.cachix.org"
];
trusted-public-keys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
@ -28,6 +29,7 @@ in {
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
"walker-git.cachix.org-1:vmC0ocfPWh0S/vRAQGtChuiZBTAe4wiKDeyyXM0/7pM="
"ocaml.nix-cache.com-1:/xI2h2+56rwFfKyyFVbkJSeGqSIYMC/Je+7XXqGKDIY="
"viperml.cachix.org-1:qZhKBMTfmcLL+OG6fj/hzsMEedgKvZVFRRAhq7j8Vh8="
];
};
}

View file

@ -5,22 +5,25 @@
pkgs,
mainUser,
...
}: {
}: let
getFlakePackage = package: inputs."${package}".packages.x86_64-linux.default;
in {
# these settings propagate to home-manager's nixpkgs
nixpkgs = {
overlays = [
inputs.nix-rice.overlays.default
inputs.helix.overlays.default
inputs.nixd.overlays.default
inputs.nil.overlays.nil
# inputs.nixd.overlays.default
inputs.niri.overlays.niri
outputs.overlays.additions
# outputs.overlays.additions
outputs.overlays.rice
outputs.overlays.murex
outputs.overlays.murex-starship
outputs.overlays.murex-jump
outputs.overlays.comfyui
outputs.overlays.comfyui-plugins
outputs.overlays.sirula
# outputs.overlays.sirula
];
config = {
allowUnfree = true;
@ -55,8 +58,14 @@
./modules/nix-meta.nix
./modules/anal-retentive.nix
./modules/niri.nix
./modules/culr.nix
];
programs.meat = {
enable = true;
flake = "/home/${mainUser}/.nix";
};
hardware.enableRedistributableFirmware = true;
hardware.enableAllFirmware = true;
@ -102,15 +111,16 @@
eza
git
jujutsu
nil
];
services.atuin.enable = true;
# services.atuin.enable = true;
programs.nh = {
enable = true;
clean.enable = true;
clean.extraArgs = "--keep-since 3d --keep 3";
package = inputs.nh.packages.x86_64-linux.default;
package = getFlakePackage "nh";
};
programs.nix-index-database.comma.enable = true;

View file

@ -1,6 +1,6 @@
{...}: {
programs.meat = {
programs.culr = {
enable = true;
pattern = "rainbow-pair";
pattern = "rainbow-split";
};
}

View file

@ -1,7 +1,7 @@
{...}: {
imports = [
./mullvad.nix
];
{pkgs,...}: {
# imports = [
# ./mullvad.nix
# ];
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
systemd.services.NetworkManager-wait-online.enable = true; # for some reason nm doesn't enable without this
services.resolved = {
@ -9,7 +9,7 @@
fallbackDns = ["103.1.206.179" "168.138.8.38" "168.138.12.137"];
dnssec = "false";
};
# services.mullvad-vpn.enable = true;
services.mullvad-vpn.enable = true;
# systemd.services.mullvad-daemon.environment.TALPID_NET_CLS_MOUNT_DIR = "/opt/net-cls-v1";
networking.firewall = {
checkReversePath = "loose";

View file

@ -1,6 +1,6 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
nixd
# nixd
home-manager
cachix
alejandra

View file

@ -24,17 +24,12 @@
];
};
programs.meat = {
enable = true;
flake = "/home/bolt/.nix";
};
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "usbcore" "sd_mod"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-amd" "i2c-dev"];
boot.kernelParams = [
"mitigations=off"
"acpi_enforce_resources=lax"
# "acpi_enforce_resources=lax"
"preempt=full"
"quiet"
"loglevel=3"
@ -61,7 +56,7 @@
environment.pathsToLink = ["/share/xdg-desktop-portal" "/share/applications"];
environment.sessionVariables = {
NIXOS_OZONE_WL = "1";
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE = "fg=5";
# ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE = "fg=5";
GBM_BACKEND = "nvidia-drm";
NVD_BACKEND = "direct";
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
@ -73,6 +68,10 @@
nix.settings.trusted-users = ["bolt"];
virtualisation.lxc = {
unprivilegedContainers = true;
enable = true;
};
virtualisation.oci-containers.backend = "podman";
hardware.nvidia-container-toolkit.enable = true;
virtualisation = {
@ -80,10 +79,6 @@
enable = true;
dockerSocket.enable = true;
defaultNetwork.settings.dns_enabled = true;
# package = pkgs.podman.overrideAttrs {
# version = "5.3.0-dev";
# src = inputs.podman;
# };
};
};
@ -103,7 +98,7 @@
# description = "rgb led turn-off-er";
# serviceConfig = {
# Type = "oneshot";
# ExecStart = ''${pkgs.openrgb}/bin/openrgb -d "HyperX Fury RGB" -m static -c 000000'';
# ExecStart = ''${pkgs.openrgb}/bin/openrgb -d "HyperX DRAM" -m static -c 000000'';
# After = ["openrgb"];
# };
# };
@ -113,16 +108,19 @@
# motherboard = "amd";
# };
hardware.ckb-next= {
hardware.ckb-next = {
enable = true;
package = inputs.nixpkgs-stable.legacyPackages.x86_64-linux.ckb-next;
# package = inputs.nixpkgs-stable.legacyPackages.x86_64-linux.ckb-next;
};
environment.systemPackages = with pkgs; [
wl-clipboard
wl-clipboard-x11
xclip
];
environment.systemPackages = builtins.attrValues {
inherit
(pkgs)
wl-clipboard
wl-clipboard-x11
xclip
;
};
fileSystems = {
"/" = {

40
util/create.nix Normal file
View file

@ -0,0 +1,40 @@
{
nixpkgs,
home-manager,
system,
inputs,
outputs,
sharedModules,
...
}: {
systems = definitions:
nixpkgs.lib.mapAttrs (name: info:
nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {
inherit inputs outputs;
mainUser = info.user;
};
modules =
[
../system/${name}.nix
home-manager.nixosModules.home-manager
{
home-manager = {
useGlobalPkgs = true;
extraSpecialArgs = {
inherit inputs outputs;
mainUser = info.user;
};
users.${info.user}.imports =
[
../home/${info.user}.nix
]
++ info.hmImports or [];
};
}
]
++ info.imports or []
++ sharedModules;
}) definitions;
}

View file

@ -1,5 +1,8 @@
{inputs, ...}: {
additions = final: _prev: import ../.old/pkgs {pkgs = final;};
{
inputs,
lib,
...
}: {
rice = import ./rice.nix;
murex-jump = inputs.murex-jump.overlays.murex-jump;
murex-starship = inputs.murex-starship.overlays.murex-starship;
@ -12,10 +15,35 @@
vendorHash = "sha256-NIhg8D8snCNxpb3i2JG5tLcZteYBCGN4QbOowG/vgJE=";
};
};
sirula = final: prev: {
sirula = prev.sirula.overrideAttrs {
version = "1.0.0-${builtins.toString inputs.sirula.lastModifiedDate}";
src = inputs.sirula;
};
};
# sirula = let
# src = inputs.sirula;
# in
# final: prev: {
# sirula =
# (prev.sirula.override (old: {
# rustPlatform =
# old.rustPlatform
# // {
# buildRustPackage = args:
# old.rustPlatform.buildRustPackage (args
# // {
# inherit src;
# cargoHash = prev.lib.fakeHash;
# cargoSha256 = prev.lib.fakeHash;
# cargoLock = {
# lockFile = "${inputs.sirula}" + /Cargo.lock;
# };
# });
# };
# }))
# .overrideAttrs (oldAttrs: {
# version = "1.0.0-${builtins.toString inputs.sirula.lastModifiedDate}";
# inherit src;
# cargoDeps = oldAttrs.cargoDeps.overrideAttrs (prev.lib.const {
# inherit src;
# outputHash = prev.lib.fakeHash;
# outputHashMode = "recursive";
# });
# });
# };
}

View file

@ -102,6 +102,14 @@ in {
};
};
cursor = {
package = prev.afterglow-cursors-recolored.override {
themeVariants = ["Dracula"];
draculaColorVariants = ["Orange"];
};
name = "Afterglow-Recolored-Dracula-Orange";
};
plymouth = {
# no easy way to automate filename sadly - could try stripping "real" font name of spaces?
font = "${fonts.sans.package}/share/fonts/truetype/InriaSans-Regular.ttf";