7 Commits

39 changed files with 181 additions and 166 deletions

View File

@@ -1,5 +1,5 @@
{ config, pkgs, forEachUser, makeEnable, realUsers, ... }:
makeEnable config "modules.base" true {
makeEnable config "myModules.base" true {
nixpkgs.config.permittedInsecurePackages = [
"openssl-1.0.2u"
"electron-12.2.3"
@@ -59,6 +59,9 @@ makeEnable config "modules.base" true {
services.locate.enable = true;
virtualisation.docker.enable = true;
virtualisation.docker.enableNvidia = true;
hardware.nvidia-container-toolkit.enable = true;
hardware.nvidia.open = false;
hardware.keyboard.zsa.enable = true;

View File

@@ -1,5 +1,5 @@
{ pkgs, inputs, config, makeEnable, ... }:
makeEnable config "modules.ben" true {
makeEnable config "myModules.ben" true {
home-manager.backupFileExtension = "backup"; # Add this line
home-manager.users.ben = {
programs.zsh = {

View File

@@ -1,10 +1,10 @@
{ config, lib, ... }:
with lib;
let cfg = config.modules.cache-server;
let cfg = config.myModules.cache-server;
in
{
options = {
modules.cache-server = {
myModules.cache-server = {
enable = mkEnableOption "nix cache server";
port = mkOption {
type = types.int;

View File

@@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, ... }:
makeEnable config "modules.code" true {
makeEnable config "myModules.code" true {
programs.direnv = {
enable = true;
nix-direnv.enable = true;

View File

@@ -42,17 +42,17 @@
};
config = lib.mkIf config.features.full.enable {
modules.base.enable = true;
modules.desktop.enable = true;
modules.plasma.enable = true;
modules.gnome.enable = false;
modules.xmonad.enable = true;
modules.extra.enable = true;
modules.electron.enable = true;
modules.code.enable = true;
modules.games.enable = true;
modules.syncthing.enable = true;
modules.fonts.enable = true;
modules.nixified-ai.enable = false;
myModules.base.enable = true;
myModules.desktop.enable = true;
myModules.plasma.enable = true;
myModules.gnome.enable = false;
myModules.xmonad.enable = true;
myModules.extra.enable = true;
myModules.electron.enable = true;
myModules.code.enable = true;
myModules.games.enable = true;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.nixified-ai.enable = false;
};
}

View File

@@ -1,5 +1,5 @@
{ config, pkgs, makeEnable, ... }:
makeEnable config "modules.desktop" true {
makeEnable config "myModules.desktop" true {
imports = [
./fonts.nix
];
@@ -70,7 +70,6 @@ makeEnable config "modules.desktop" true {
networkmanagerapplet
notify-osd-customizable
okular
picom
pinentry
psensor
quassel

View File

@@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, forEachUser, ... }:
makeEnable config "modules.electron" false {
makeEnable config "myModules.electron" false {
environment.systemPackages = with pkgs; [
element-desktop
# bitwarden

View File

@@ -1,5 +1,5 @@
{ config, pkgs, makeEnable, ... }:
makeEnable config "modules.extra" false {
makeEnable config "myModules.extra" false {
services.expressvpn.enable = true;
programs.hyprland.enable = true;

62
nixos/flake.lock generated
View File

@@ -781,11 +781,11 @@
]
},
"locked": {
"lastModified": 1723399884,
"narHash": "sha256-97wn0ihhGqfMb8WcUgzzkM/TuAxce2Gd20A8oiruju4=",
"lastModified": 1724435763,
"narHash": "sha256-UNky3lJNGQtUEXT2OY8gMxejakSWPTfWKvpFkpFlAfM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "086f619dd991a4d355c07837448244029fc2d9ab",
"rev": "c2cd2a52e02f1dfa1c88f95abeb89298d46023be",
"type": "github"
},
"original": {
@@ -959,11 +959,11 @@
"nixpkgs-regression": "nixpkgs-regression"
},
"locked": {
"lastModified": 1723343056,
"narHash": "sha256-ixvBNplVIqUqvshVi5azgPiGIFXlXDmahDcoP/guuTE=",
"lastModified": 1724874960,
"narHash": "sha256-cmmNq/tFU4MZYU5RAuUVt1NGt5e6RMaMsvJtU5ybEJI=",
"owner": "NixOS",
"repo": "nix",
"rev": "18485d2d53622c6ec7beab80c77efbd49ed682e2",
"rev": "b89eca9aecc69d4dfc0f0afd9353c126eb7b5858",
"type": "github"
},
"original": {
@@ -1016,11 +1016,11 @@
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1723124175,
"narHash": "sha256-w+rlZdbj4kn70uPJl4WrPDFoGEy0A9oJqw684nvZ9dY=",
"lastModified": 1724664098,
"narHash": "sha256-4SgV4jCoN5RffR1Mtn3HI1cjgHmARh+rZrpVlBclj9U=",
"owner": "nix-community",
"repo": "NixOS-WSL",
"rev": "be1a6b2e4ddc34b9b6a297e7df2f2a2ecee24690",
"rev": "345dfa06658a37873ca18aa205f409e4aaf1caa6",
"type": "github"
},
"original": {
@@ -1079,11 +1079,11 @@
},
"nixpkgs-regression_2": {
"locked": {
"lastModified": 1723405223,
"narHash": "sha256-VSHY8GQ64AseobyeoVkJl+ZDaWPGzKs+CG6RfDM159o=",
"lastModified": 1725042541,
"narHash": "sha256-2ItfpRi49hr3LrHnWLBqEFrnKbREHnWjgyrJzaPnjkI=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "938253e0f8d5c98c4515a10cc388239cc1431db8",
"rev": "963ea288f4a82f4945813037d4e8d1bfd149c3e5",
"type": "github"
},
"original": {
@@ -1094,11 +1094,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1721548954,
"narHash": "sha256-7cCC8+Tdq1+3OPyc3+gVo9dzUNkNIQfwSDJ2HSi2u3o=",
"lastModified": 1723688146,
"narHash": "sha256-sqLwJcHYeWLOeP/XoLwAtYjr01TISlkOfz+NG82pbdg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "63d37ccd2d178d54e7fb691d7ec76000740ea24a",
"rev": "c3d4ac725177c030b1e289015989da2ad9d56af0",
"type": "github"
},
"original": {
@@ -1126,11 +1126,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1722087241,
"narHash": "sha256-2ShmEaFi0kJVOEEu5gmlykN5dwjWYWYUJmlRTvZQRpU=",
"lastModified": 1724316499,
"narHash": "sha256-Qb9MhKBUTCfWg/wqqaxt89Xfi6qTD3XpTzQ9eXi3JmE=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "8c50662509100d53229d4be607f1a3a31157fa12",
"rev": "797f7dc49e0bc7fab4b57c021cdf68f595e47841",
"type": "github"
},
"original": {
@@ -1142,16 +1142,16 @@
},
"nixpkgs_5": {
"locked": {
"lastModified": 1723175592,
"narHash": "sha256-M0xJ3FbDUc4fRZ84dPGx5VvgFsOzds77KiBMW/mMTnI=",
"owner": "NixOS",
"lastModified": 1725043766,
"narHash": "sha256-iNXaq3XJkLDc9Fhs1dWi9Fj/pmMbVZ2PV33ME3JhcUI=",
"owner": "colonelpanic8",
"repo": "nixpkgs",
"rev": "5e0ca22929f3342b19569b21b2f3462f053e497b",
"rev": "f53b146e86208b06645bfabf5527d47f0b0c6c5e",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"owner": "colonelpanic8",
"ref": "with-cursor",
"repo": "nixpkgs",
"type": "github"
}
@@ -1300,11 +1300,11 @@
"nixpkgs": "nixpkgs_7"
},
"locked": {
"lastModified": 1722639965,
"narHash": "sha256-ZRe5Z5s/UNaXI2piyncQ3YrFl5q3GryZAfFTyeJ/vhM=",
"lastModified": 1723672467,
"narHash": "sha256-6GbCvAboNKot15sHrYJqONIyu9T5OUokEubghgPHLUw=",
"ref": "refs/heads/master",
"rev": "9a92b83c3ad376620db3556c33e51a4300c5badd",
"revCount": 73,
"rev": "e067ec9b790bbe76d8bff667c072e2e19cd68fa7",
"revCount": 76,
"type": "git",
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
},
@@ -1593,11 +1593,11 @@
},
"unstable": {
"locked": {
"lastModified": 1723175592,
"narHash": "sha256-M0xJ3FbDUc4fRZ84dPGx5VvgFsOzds77KiBMW/mMTnI=",
"lastModified": 1724819573,
"narHash": "sha256-GnR7/ibgIH1vhoy8cYdmXE6iyZqKqFxQSVkFgosBh6w=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "5e0ca22929f3342b19569b21b2f3462f053e497b",
"rev": "71e91c409d1e654808b2621f28a327acfdad8dc2",
"type": "github"
},
"original": {

View File

@@ -6,7 +6,7 @@
nixos-hardware = { url = "github:colonelpanic8/nixos-hardware/add-g834jzr"; };
nixpkgs = {
url = "github:NixOS/nixpkgs/nixos-unstable";
url = "github:colonelpanic8/nixpkgs/with-cursor";
};
home-manager = {

View File

@@ -1,5 +1,5 @@
{ pkgs, makeEnable, config, ... }:
makeEnable config "modules.fonts" true {
makeEnable config "myModules.fonts" true {
# Enable the gtk icon cache
gtk.iconCache.enable = true;

View File

@@ -1,5 +1,5 @@
{ config, pkgs, makeEnable, ... }:
makeEnable config "modules.games" false {
makeEnable config "myModules.games" false {
environment.systemPackages = with pkgs; [
steam
# heroic

View File

@@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, ... }:
makeEnable config "modules.gitea-runner" false {
makeEnable config "myModules.gitea-runner" false {
age.secrets.gitea-runner-token = {
file = ./secrets/gitea-runner-token.${config.networking.hostName}.age;
group = "docker";

View File

@@ -1,5 +1,5 @@
{ config, makeEnable, ... }:
makeEnable config "modules.gitea" false {
makeEnable config "myModules.gitea" false {
services.gitea = {
enable = true;

View File

@@ -1,5 +1,5 @@
{ config, makeEnable, ... }:
makeEnable config "modules.gnome" false {
makeEnable config "myModules.gnome" false {
services.xserver = {
desktopManager.gnome.enable = true;
displayManager.gdm.enable = true;

View File

@@ -1,10 +1,11 @@
{ pkgs, inputs, config, makeEnable, ... }:
makeEnable config "modules.kat" false {
makeEnable config "myModules.kat" false {
environment.systemPackages = with pkgs; [
bitwarden
obsidian
obs-studio
ffmpeg
code-cursor
];
environment.extraInit = ''

View File

@@ -6,16 +6,16 @@
inputs.nixos-hardware.nixosModules.dell-xps-17-9700-nvidia
];
modules.base.enable = true;
modules.desktop.enable = true;
modules.xmonad.enable = true;
modules.extra.enable = false;
modules.code.enable = true;
modules.games.enable = false;
modules.syncthing.enable = true;
modules.fonts.enable = true;
modules.nixified-ai.enable = false;
modules.gitea-runner.enable = false;
myModules.base.enable = true;
myModules.desktop.enable = true;
myModules.xmonad.enable = true;
myModules.extra.enable = false;
myModules.code.enable = true;
myModules.games.enable = false;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.nixified-ai.enable = false;
myModules.gitea-runner.enable = false;
hardware.enableRedistributableFirmware = true;

View File

@@ -8,10 +8,10 @@
sublime
vlc
];
modules.desktop.enable = false;
modules.plasma.enable = false;
myModules.desktop.enable = false;
myModules.plasma.enable = false;
imalison.nixOverlay.enable = false;
modules.wsl.enable = true;
myModules.wsl.enable = true;
networking.hostName = "bencbox";

View File

@@ -13,25 +13,25 @@ in
extraGroups = ["syncthing"];
};
modules.raspberry-pi.enable = true;
myModules.raspberry-pi.enable = true;
modules.base.enable = true;
modules.desktop.enable = true;
modules.xmonad.enable = false;
modules.extra.enable = false;
modules.code.enable = true;
modules.games.enable = false;
modules.syncthing.enable = true;
modules.fonts.enable = true;
modules.nixified-ai.enable = false;
modules.cache-server = {
myModules.base.enable = true;
myModules.desktop.enable = true;
myModules.xmonad.enable = false;
myModules.extra.enable = false;
myModules.code.enable = true;
myModules.games.enable = false;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.nixified-ai.enable = false;
myModules.cache-server = {
enable = false;
host-string = biskcomp-nginx-hostnames;
port = 80;
path = "/nix-cache";
};
modules.gitea.enable = true;
modules.gitea-runner.enable = false;
myModules.gitea.enable = true;
myModules.gitea-runner.enable = false;
services.vaultwarden = {
enable = true;
@@ -85,6 +85,16 @@ in
'';
};
};
"docs.railbird.ai" = {
enableACME = true;
forceSSL = true;
root = "/var/lib/syncthing/railbird/docs";
locations."/" = {
extraConfig = ''
autoindex on;
'';
};
};
};
};

View File

@@ -5,15 +5,15 @@
../configuration.nix
];
modules.base.enable = true;
modules.desktop.enable = true;
modules.xmonad.enable = false;
modules.extra.enable = false;
modules.code.enable = true;
modules.games.enable = false;
modules.syncthing.enable = true;
modules.fonts.enable = true;
modules.nixified-ai.enable = false;
myModules.base.enable = true;
myModules.desktop.enable = true;
myModules.xmonad.enable = false;
myModules.extra.enable = false;
myModules.code.enable = true;
myModules.games.enable = false;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.nixified-ai.enable = false;
hardware.enableRedistributableFirmware = true;

View File

@@ -5,10 +5,10 @@
];
services.xserver.enable = true;
environment.systemPackages = with pkgs; [sublime];
modules.desktop.enable = false;
modules.plasma.enable = false;
myModules.desktop.enable = false;
myModules.plasma.enable = false;
imalison.nixOverlay.enable = false;
modules.wsl.enable = true;
myModules.wsl.enable = true;
networking.hostName = "dean-zephyrus";

View File

@@ -5,7 +5,7 @@
];
imalison.nixOverlay.enable = false;
modules.wsl.enable = true;
myModules.wsl.enable = true;
networking.hostName = "jay-lenovo-wsl";

View File

@@ -11,6 +11,7 @@
android-studio
linuxPackages_latest.perf
zenmonitor
code-cursor
];
hardware.enableRedistributableFirmware = true;
@@ -26,7 +27,7 @@
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
modules.postgres.enable = true;
myModules.postgres.enable = true;
networking.networkmanager.enable = true;

View File

@@ -5,17 +5,17 @@
../configuration.nix
];
modules.base.enable = true;
modules.desktop.enable = true;
modules.xmonad.enable = true;
modules.extra.enable = false;
modules.code.enable = true;
modules.games.enable = false;
modules.syncthing.enable = true;
modules.fonts.enable = true;
modules.nixified-ai.enable = false;
modules.gitea-runner.enable = true;
modules.postgres.enable = true;
myModules.base.enable = true;
myModules.desktop.enable = true;
myModules.xmonad.enable = true;
myModules.extra.enable = false;
myModules.code.enable = true;
myModules.games.enable = false;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.nixified-ai.enable = false;
myModules.gitea-runner.enable = true;
myModules.postgres.enable = true;
hardware.enableRedistributableFirmware = true;

View File

@@ -5,12 +5,13 @@
];
features.full.enable = true;
modules.cache-server = {
myModules.cache-server = {
enable = true;
port = 3090;
};
modules.gitea-runner.enable = true;
modules.vscode.enable = true;
myModules.gitea-runner.enable = true;
myModules.vscode.enable = true;
myModules.kat.enable = true;
networking.hostName = "nixquick";

View File

@@ -55,15 +55,15 @@
};
features.full.enable = false;
modules.base.enable = true;
modules.desktop.enable = true;
modules.xmonad.enable = false;
modules.gnome.enable = true;
modules.code.enable = true;
modules.syncthing.enable = true;
modules.fonts.enable = true;
modules.plasma.enable = false;
modules.gitea-runner.enable = true;
myModules.base.enable = true;
myModules.desktop.enable = true;
myModules.xmonad.enable = false;
myModules.gnome.enable = true;
myModules.code.enable = true;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.plasma.enable = false;
myModules.gitea-runner.enable = true;
fileSystems."/" =
{ device = "/dev/disk/by-uuid/a317d456-6f84-41ee-a149-8e466e414aae";

View File

@@ -7,13 +7,13 @@
features.full.enable = true;
# Needed for now because monitors have different refresh rates
modules.xmonad.picom.vSync.enable = false;
modules.cache-server = {
myModules.xmonad.picom.vSync.enable = false;
myModules.cache-server = {
enable = true;
port = 3090;
};
modules.gitea-runner.enable = true;
modules.postgres.enable = true;
myModules.gitea-runner.enable = true;
myModules.postgres.enable = true;
boot.loader.systemd-boot.configurationLimit = 5;

View File

@@ -4,7 +4,7 @@
../configuration.nix
];
modules.wsl.enable = true;
myModules.wsl.enable = true;
networking.hostName = "strixi-minaj-wsl";

View File

@@ -6,16 +6,16 @@
inputs.nixos-hardware.nixosModules.asus-rog-strix-g834jzr
];
modules.base.enable = true;
modules.desktop.enable = true;
modules.xmonad.enable = true;
modules.extra.enable = false;
modules.code.enable = true;
modules.games.enable = false;
modules.syncthing.enable = true;
modules.fonts.enable = true;
modules.nixified-ai.enable = false;
modules.gitea-runner.enable = false;
myModules.base.enable = true;
myModules.desktop.enable = true;
myModules.xmonad.enable = true;
myModules.extra.enable = false;
myModules.code.enable = true;
myModules.games.enable = false;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.nixified-ai.enable = false;
myModules.gitea-runner.enable = false;
hardware.enableRedistributableFirmware = true;

View File

@@ -1,5 +1,5 @@
{ inputs, config, specialArgs, ... }:
specialArgs.makeEnable config "modules.nixified-ai" false {
specialArgs.makeEnable config "myModules.nixified-ai" false {
imports = [
inputs.nixified-ai.nixosModules.invokeai
];

View File

@@ -1,6 +1,6 @@
{ lib, ... }: {
options = {
modules.xmonad.picom.vSync.enable = lib.mkOption {
myModules.xmonad.picom.vSync.enable = lib.mkOption {
default = true;
type = lib.types.bool;
};

View File

@@ -1,5 +1,5 @@
{ config, makeEnable, ... }:
makeEnable config "modules.plasma" true {
makeEnable config "myModules.plasma" true {
services.displayManager.sddm.enable = true;
services.xserver = {
desktopManager.plasma5.enable = true;

View File

@@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, realUsers, ... }:
makeEnable config "modules.postgres" true {
makeEnable config "myModules.postgres" true {
services.postgresql = {
enable = true;
package = pkgs.postgresql_15;

View File

@@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, realUsers, ... }:
makeEnable config "modules.rabbitmq" true {
makeEnable config "myModules.rabbitmq" true {
services.rabbitmq = {
enable = true;
};

View File

@@ -1,6 +1,6 @@
{ config, pkgs, inputs, makeEnable, ... }:
makeEnable config "modules.raspberry-pi" false {
makeEnable config "myModules.raspberry-pi" false {
imports = [
inputs.nixos-hardware.nixosModules.raspberry-pi-4
];

View File

@@ -21,7 +21,7 @@ let
};
allDevices = builtins.attrNames devices;
in
makeEnable config "modules.syncthing" true {
makeEnable config "myModules.syncthing" true {
system.activationScripts.syncthingPermissions = {
text = ''
chown -R syncthing:syncthing /var/lib/syncthing

View File

@@ -1,5 +1,5 @@
{ inputs, config, makeEnable, forEachUser, ... }:
makeEnable config "modules.vscode" true {
makeEnable config "myModules.vscode" true {
home-manager.users = forEachUser {
imports = [inputs.vscode-server.homeModules.default];
services.vscode-server.enable = true;

View File

@@ -1,13 +1,13 @@
{ config, inputs, pkgs, makeEnable, ... }:
makeEnable config "modules.wsl" false {
makeEnable config "myModules.wsl" false {
imports = [
inputs.nixos-wsl.nixosModules.wsl
];
modules.base.enable = false;
modules.desktop.enable = false;
modules.xmonad.enable = false;
modules.plasma.enable = false;
myModules.base.enable = false;
myModules.desktop.enable = false;
myModules.xmonad.enable = false;
myModules.plasma.enable = false;
# Update timezone automatically
services.tzupdate.enable = true;

View File

@@ -1,5 +1,5 @@
{ config, pkgs, inputs, forEachUser, makeEnable, ... }:
makeEnable config "modules.xmonad" true {
makeEnable config "myModules.xmonad" true {
nixpkgs.overlays = with inputs; [
xmonad.overlay
xmonad-contrib.overlay
@@ -25,7 +25,7 @@ makeEnable config "modules.xmonad" true {
# Haskell Desktop
haskellPackages.xmonad
haskellPackages.imalison-xmonad
haskellPackages.notifications-tray-icon
# haskellPackages.notifications-tray-icon
haskellPackages.gtk-sni-tray
haskellPackages.status-notifier-item
haskellPackages.dbus-hslogger
@@ -80,7 +80,7 @@ makeEnable config "modules.xmonad" true {
services.picom = {
enable = true;
vSync = config.modules.xmonad.picom.vSync.enable;
vSync = config.myModules.xmonad.picom.vSync.enable;
backend = "glx";
extraArgs = ["--experimental-backends"];
@@ -137,21 +137,21 @@ makeEnable config "modules.xmonad" true {
};
};
systemd.user.services.notifications-tray-icon = {
Unit = {
Description = "Notifications tray icon";
After = [ "graphical-session-pre.target" "tray.target" ];
PartOf = [ "graphical-session.target" ];
};
# systemd.user.services.notifications-tray-icon = {
# Unit = {
# Description = "Notifications tray icon";
# After = [ "graphical-session-pre.target" "tray.target" ];
# PartOf = [ "graphical-session.target" ];
# };
Install = { WantedBy = [ "graphical-session.target" ]; };
# Install = { WantedBy = [ "graphical-session.target" ]; };
Service = {
ExecStart = "${pkgs.haskellPackages.notifications-tray-icon}/bin/notifications-tray-icon --github-token-pass dfinity-github-api-token";
Restart = "always";
RestartSec = 3;
};
};
# Service = {
# ExecStart = "${pkgs.haskellPackages.notifications-tray-icon}/bin/notifications-tray-icon --github-token-pass dfinity-github-api-token";
# Restart = "always";
# RestartSec = 3;
# };
# };
systemd.user.services.shutter = {
Unit = {