1

Compare commits

...

5 Commits

9 changed files with 95 additions and 147 deletions

115
flake.lock generated
View File

@ -1,24 +1,5 @@
{ {
"nodes": { "nodes": {
"comfyui-nix": {
"inputs": {
"flake-parts": "flake-parts",
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1776979072,
"narHash": "sha256-1BUQDAMWGVcUhPuI5JFQmCTYlBmN/Fmon6MGmaKXrCk=",
"owner": "utensils",
"repo": "comfyui-nix",
"rev": "8a90889efc8fae81a8e03b8d9a8406c9f8ff425b",
"type": "github"
},
"original": {
"owner": "utensils",
"repo": "comfyui-nix",
"type": "github"
}
},
"crane": { "crane": {
"locked": { "locked": {
"lastModified": 1754269165, "lastModified": 1754269165,
@ -36,7 +17,7 @@
}, },
"devshell": { "devshell": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1768818222, "lastModified": 1768818222,
@ -75,7 +56,7 @@
}, },
"elephant": { "elephant": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs_2",
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
@ -161,24 +142,6 @@
} }
}, },
"flake-parts": { "flake-parts": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1767609335,
"narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "250481aafeb741edfe23d29195671c19b36b6dca",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_2": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
"lanzaboote", "lanzaboote",
@ -199,7 +162,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_3": { "flake-parts_2": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
"nixvim", "nixvim",
@ -220,7 +183,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_4": { "flake-parts_3": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
"nur", "nur",
@ -357,7 +320,7 @@
}, },
"hytale-launcher": { "hytale-launcher": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1777394001, "lastModified": 1777394001,
@ -376,7 +339,7 @@
"impermanence": { "impermanence": {
"inputs": { "inputs": {
"home-manager": "home-manager_2", "home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_5" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1769548169, "lastModified": 1769548169,
@ -396,7 +359,7 @@
"inputs": { "inputs": {
"crane": "crane", "crane": "crane",
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
"flake-parts": "flake-parts_2", "flake-parts": "flake-parts",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
@ -442,7 +405,7 @@
"naersk": { "naersk": {
"inputs": { "inputs": {
"fenix": "fenix", "fenix": "fenix",
"nixpkgs": "nixpkgs_8" "nixpkgs": "nixpkgs_7"
}, },
"locked": { "locked": {
"lastModified": 1763384566, "lastModified": 1763384566,
@ -520,7 +483,7 @@
"inputs": { "inputs": {
"flake-compat": "flake-compat_2", "flake-compat": "flake-compat_2",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nixpkgs": "nixpkgs_6" "nixpkgs": "nixpkgs_5"
}, },
"locked": { "locked": {
"lastModified": 1776242217, "lastModified": 1776242217,
@ -596,35 +559,20 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1766902085, "lastModified": 1762156382,
"narHash": "sha256-coBu0ONtFzlwwVBzmjacUQwj3G+lybcZ1oeNSQkgC0M=", "narHash": "sha256-Yg7Ag7ov5+36jEFC1DaZh/12SEXo6OO3/8rqADRxiqs=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c0b0e0fddf73fd517c3471e546c0df87a42d53f4", "rev": "7241bcbb4f099a66aafca120d37c65e8dda32717",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-unstable", "ref": "nixpkgs-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs-lib": {
"locked": {
"lastModified": 1765674936,
"narHash": "sha256-k00uTP4JNfmejrCLJOwdObYC9jHRrr/5M/a/8L2EIdo=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "2075416fcb47225d9b68ac469a5c4801a9c4dd85",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1777428379, "lastModified": 1777428379,
@ -658,22 +606,6 @@
} }
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": {
"lastModified": 1762156382,
"narHash": "sha256-Yg7Ag7ov5+36jEFC1DaZh/12SEXo6OO3/8rqADRxiqs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "7241bcbb4f099a66aafca120d37c65e8dda32717",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1764242076, "lastModified": 1764242076,
"narHash": "sha256-sKoIWfnijJ0+9e4wRvIgm/HgE27bzwQxcEmo2J/gNpI=", "narHash": "sha256-sKoIWfnijJ0+9e4wRvIgm/HgE27bzwQxcEmo2J/gNpI=",
@ -689,7 +621,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_4": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1777268161, "lastModified": 1777268161,
"narHash": "sha256-bxrdOn8SCOv8tN4JbTF/TXq7kjo9ag4M+C8yzzIRYbE=", "narHash": "sha256-bxrdOn8SCOv8tN4JbTF/TXq7kjo9ag4M+C8yzzIRYbE=",
@ -705,7 +637,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_5": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1768564909, "lastModified": 1768564909,
"narHash": "sha256-Kell/SpJYVkHWMvnhqJz/8DqQg2b6PguxVWOuadbHCc=", "narHash": "sha256-Kell/SpJYVkHWMvnhqJz/8DqQg2b6PguxVWOuadbHCc=",
@ -721,7 +653,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_6": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1775710090, "lastModified": 1775710090,
"narHash": "sha256-ar3rofg+awPB8QXDaFJhJ2jJhu+KqN/PRCXeyuXR76E=", "narHash": "sha256-ar3rofg+awPB8QXDaFJhJ2jJhu+KqN/PRCXeyuXR76E=",
@ -737,7 +669,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_7": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1777268161, "lastModified": 1777268161,
"narHash": "sha256-bxrdOn8SCOv8tN4JbTF/TXq7kjo9ag4M+C8yzzIRYbE=", "narHash": "sha256-bxrdOn8SCOv8tN4JbTF/TXq7kjo9ag4M+C8yzzIRYbE=",
@ -753,7 +685,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_8": { "nixpkgs_7": {
"locked": { "locked": {
"lastModified": 1752077645, "lastModified": 1752077645,
"narHash": "sha256-HM791ZQtXV93xtCY+ZxG1REzhQenSQO020cu6rHtAPk=", "narHash": "sha256-HM791ZQtXV93xtCY+ZxG1REzhQenSQO020cu6rHtAPk=",
@ -769,7 +701,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_9": { "nixpkgs_8": {
"locked": { "locked": {
"lastModified": 1775710090, "lastModified": 1775710090,
"narHash": "sha256-ar3rofg+awPB8QXDaFJhJ2jJhu+KqN/PRCXeyuXR76E=", "narHash": "sha256-ar3rofg+awPB8QXDaFJhJ2jJhu+KqN/PRCXeyuXR76E=",
@ -787,7 +719,7 @@
}, },
"nixvim": { "nixvim": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_3", "flake-parts": "flake-parts_2",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
@ -832,7 +764,7 @@
}, },
"nur": { "nur": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_4", "flake-parts": "flake-parts_3",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
@ -879,7 +811,6 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"comfyui-nix": "comfyui-nix",
"devshell": "devshell", "devshell": "devshell",
"disko": "disko", "disko": "disko",
"elephant": "elephant", "elephant": "elephant",
@ -893,7 +824,7 @@
"nix-alien": "nix-alien", "nix-alien": "nix-alien",
"nix-darwin": "nix-darwin", "nix-darwin": "nix-darwin",
"nix-flatpak": "nix-flatpak", "nix-flatpak": "nix-flatpak",
"nixpkgs": "nixpkgs_7", "nixpkgs": "nixpkgs_6",
"nixpkgs-stable": "nixpkgs-stable_2", "nixpkgs-stable": "nixpkgs-stable_2",
"nixvim": "nixvim", "nixvim": "nixvim",
"nps": "nps", "nps": "nps",
@ -1061,7 +992,7 @@
"elephant": [ "elephant": [
"elephant" "elephant"
], ],
"nixpkgs": "nixpkgs_9", "nixpkgs": "nixpkgs_8",
"systems": "systems_5" "systems": "systems_5"
}, },
"locked": { "locked": {

View File

@ -86,9 +86,6 @@
# musnix.url = "github:musnix/musnix"; # musnix.url = "github:musnix/musnix";
# musnix.inputs.nixpkgs.follows = "nixpkgs"; # musnix.inputs.nixpkgs.follows = "nixpkgs";
# ComfyUI
comfyui-nix.url = "github:utensils/comfyui-nix";
# HyTale # HyTale
hytale-launcher.url = "github:JPyke3/hytale-launcher-nix"; hytale-launcher.url = "github:JPyke3/hytale-launcher-nix";
@ -145,7 +142,6 @@
inputs.nur.overlays.default inputs.nur.overlays.default
inputs.niri.overlays.niri inputs.niri.overlays.niri
# inputs.emacs-overlay.overlay # inputs.emacs-overlay.overlay
inputs.comfyui-nix.overlays.default
# All my own overlays (derivations + modifications) # All my own overlays (derivations + modifications)
(import ./overlays {inherit inputs nixpkgs pkgs-stable;}) (import ./overlays {inherit inputs nixpkgs pkgs-stable;})
@ -256,8 +252,6 @@
extraModules = extraModules =
[ [
inputs.disko.nixosModules.disko inputs.disko.nixosModules.disko
# inputs.nixified-ai.nixosModules.comfyui
inputs.comfyui-nix.nixosModules.default
] ]
++ commonModules; ++ commonModules;
}; };

View File

@ -86,7 +86,8 @@ in {
programs.firefox = { programs.firefox = {
enable = true; enable = true;
configPath = "${config.xdg.configHome}/mozilla/firefox"; # configPath = "${config.xdg.configHome}/mozilla/firefox";
configPath = "${config.home.homeDirectory}/.mozilla/firefox";
# firefox-unwrapped is the pure firefox browser, wrapFirefox adds configuration ontop # firefox-unwrapped is the pure firefox browser, wrapFirefox adds configuration ontop
package = pkgs.wrapFirefox pkgs.firefox-unwrapped { package = pkgs.wrapFirefox pkgs.firefox-unwrapped {

View File

@ -96,6 +96,7 @@ in {
lurk # strace analysis lurk # strace analysis
radare2 radare2
disktui disktui
lldb
# Hardware/Software info # Hardware/Software info
pciutils # lspci pciutils # lspci

View File

@ -47,6 +47,8 @@ in {
wrap_navigation: false, wrap_navigation: false,
enable_mouse: true, enable_mouse: true,
enable_config_hot_reload: true, enable_config_hot_reload: true,
enable_lyrics_hot_reload: true,
enable_lyrics_index: true,
status_update_interval_ms: 1000, status_update_interval_ms: 1000,
rewind_to_start_sec: 30, rewind_to_start_sec: 30,
lyrics_dir: "${config.home.homeDirectory}/Music", lyrics_dir: "${config.home.homeDirectory}/Music",
@ -88,24 +90,37 @@ in {
( (
name: "Queue (1)", name: "Queue (1)",
pane: Split( pane: Split(
borders: "NONE",
direction: Horizontal, direction: Horizontal,
panes: [ panes: [
// Left Column (Queue + Cava) // Left Column (Queue + Cava)
( (
size: "70%", size: "70%",
borders: "NONE",
pane: Split( pane: Split(
direction: Vertical, direction: Vertical,
panes: [ panes: [
( (
size: "75%", size: "75%",
borders: "ALL", borders: "ALL",
pane: Pane(Queue), border_symbols: Rounded,
pane: Split(
direction: Vertical,
panes: [
(
size: "2",
pane: Pane(QueueHeader()),
),
(
size: "100%",
pane: Pane(Queue),
),
],
),
), ),
( (
size: "25%", size: "25%",
borders: "ALL", borders: "ALL",
border_symbols: Rounded,
pane: Pane(Cava), pane: Pane(Cava),
) )
] ]
@ -115,18 +130,19 @@ in {
// Right Column (AlbumArt + Lyrics) // Right Column (AlbumArt + Lyrics)
( (
size: "30%", size: "30%",
borders: "NONE",
pane: Split( pane: Split(
direction: Vertical, direction: Vertical,
panes: [ panes: [
( (
size: "75%", size: "75%",
borders: "ALL", borders: "ALL",
border_symbols: Rounded,
pane: Pane(AlbumArt), pane: Pane(AlbumArt),
), ),
( (
size: "25%", size: "25%",
borders: "ALL", borders: "ALL",
border_symbols: Rounded,
pane: Pane(Lyrics), pane: Pane(Lyrics),
), ),
] ]
@ -137,31 +153,59 @@ in {
), ),
( (
name: "Albums (2)", name: "Albums (2)",
pane: Pane(Albums), pane: Split(
size: "100%",
direction: Vertical,
panes: [(size: "100%", borders: "ALL", border_symbols: Rounded, pane: Pane(Albums))],
)
), ),
( (
name: "Album Artists (3)", name: "Album Artists (3)",
pane: Pane(AlbumArtists), pane: Split(
size: "100%",
direction: Vertical,
panes: [(size: "100%", borders: "ALL", border_symbols: Rounded, pane: Pane(AlbumArtists))],
)
), ),
( (
name: "Artists (4)", name: "Artists (4)",
pane: Pane(Artists), pane: Split(
size: "100%",
direction: Vertical,
panes: [(size: "100%", borders: "ALL", border_symbols: Rounded, pane: Pane(Artists))],
)
), ),
( (
name: "Playlists (5)", name: "Playlists (5)",
pane: Pane(Playlists), pane: Split(
size: "100%",
direction: Vertical,
panes: [(size: "100%", borders: "ALL", border_symbols: Rounded, pane: Pane(Playlists))],
)
), ),
// ( // (
// name: "Directories (6)", // name: "Directories (6)",
// pane: Pane(Directories), // pane: Split(
// size: "100%",
// direction: Vertical,
// panes: [(size: "100%", borders: "ALL", border_symbols: Rounded, pane: Pane(Directories))],
// )
// ), // ),
( (
name: "Search (6)", name: "Search (6)",
pane: Pane(Search), pane: Split(
size: "100%",
direction: Vertical,
panes: [(size: "100%", borders: "ALL", border_symbols: Rounded, pane: Pane(Search))],
)
), ),
// ( // (
// name: "Visualizer (8)", // name: "Visualizer (8)",
// pane: Pane(Cava), // pane: Split(
// size: "100%",
// direction: Vertical,
// panes: [(size: "100%", borders: "ALL", border_symbols: Rounded, pane: Pane(Cava))],
// )
// ), // ),
], ],
@ -287,8 +331,6 @@ in {
#![enable(unwrap_variant_newtypes)] #![enable(unwrap_variant_newtypes)]
( (
default_album_art_path: None, default_album_art_path: None,
show_song_table_header: true,
draw_borders: true,
format_tag_separator: " | ", format_tag_separator: " | ",
browser_column_widths: [20, 38, 42], browser_column_widths: [20, 38, 42],
modal_backdrop: false, modal_backdrop: false,
@ -395,6 +437,8 @@ in {
), ),
( (
pane: Pane(Tabs), pane: Pane(Tabs),
borders: "ALL",
border_symbols: Rounded,
size: "3", size: "3",
), ),
( (

View File

@ -23,14 +23,14 @@
substituters = [ substituters = [
"https://cache.nixos.org" "https://cache.nixos.org"
"https://nix-community.cachix.org" "https://nix-community.cachix.org"
"https://comfyui.cachix.org" # "https://comfyui.cachix.org"
# "https://ai.cachix.org" # "https://ai.cachix.org"
# "https://app.cachix.org/cache/nixos-rocm" # "https://app.cachix.org/cache/nixos-rocm"
]; ];
trusted-public-keys = [ trusted-public-keys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"comfyui.cachix.org-1:33mf9VzoIjzVbp0zwj+fT51HG0y31ZTK3nzYZAX0rec=" # "comfyui.cachix.org-1:33mf9VzoIjzVbp0zwj+fT51HG0y31ZTK3nzYZAX0rec="
# "ai.cachix.org-1:N9dzRK+alWwoKXQlnn0H6aUx0lU/mspIoz8hMvGvbbc=" # "ai.cachix.org-1:N9dzRK+alWwoKXQlnn0H6aUx0lU/mspIoz8hMvGvbbc="
# "nixos-rocm.cachix.org-1:VEpsf7pRIijjd8csKjFNBGzkBqOmw8H9PRmgAq14LnE=" # "nixos-rocm.cachix.org-1:VEpsf7pRIijjd8csKjFNBGzkBqOmw8H9PRmgAq14LnE="
]; ];

View File

@ -12,7 +12,7 @@
./disks.nix ./disks.nix
# General services # General services
# ../services/comfyui.nix ../services/comfyui.nix
../services/fileflows-node.nix ../services/fileflows-node.nix
]; ];
@ -124,7 +124,6 @@
# 31431 # Parsec # 31431 # Parsec
5173 # SvelteKit 5173 # SvelteKit
8090 # PocketBase 8090 # PocketBase
8188 # ComfyUI
]; ];
allowedUDPPorts = [ allowedUDPPorts = [
@ -135,7 +134,6 @@
# 31431 # Parsec # 31431 # Parsec
5173 # SvelteKit 5173 # SvelteKit
8090 # PocketBase 8090 # PocketBase
8188 # ComfyUI
]; ];
}; };
@ -234,27 +232,6 @@
fileSystems = ["/"]; fileSystems = ["/"];
}; };
# Temporarily ban IPs for SSH after failed login attempts
fail2ban = {
enable = true;
};
greetd = {
enable = false;
restart = false;
useTextGreeter = true;
settings = {
terminal.vt = 1;
default_session = {
# command = "${pkgs.tuigreet}/bin/tuigreet --time --cmd $SHELL";
command = "${pkgs.tuigreet}/bin/tuigreet --time --cmd niri-session";
user = "greeter";
};
};
};
kmscon = { kmscon = {
enable = false; enable = false;
hwRender = true; hwRender = true;

View File

@ -146,8 +146,8 @@
nvidia-container-toolkit.enable = true; nvidia-container-toolkit.enable = true;
nvidia = { nvidia = {
package = config.boot.kernelPackages.nvidiaPackages.stable; # package = config.boot.kernelPackages.nvidiaPackages.stable;
# package = config.boot.kernelPackages.nvidiaPackages.beta; package = config.boot.kernelPackages.nvidiaPackages.beta;
open = true; open = true;
nvidiaSettings = false; # Those are for x-server nvidiaSettings = false; # Those are for x-server

View File

@ -7,8 +7,8 @@
}: let }: let
# comfyuiVersion = "cu128-slim-20260316"; # comfyuiVersion = "cu128-slim-20260316";
# comfyuiVersion = "cu128-megapak-20260413"; # comfyuiVersion = "cu128-megapak-20260413";
# comfyuiVersion = "cu130-megapak-pt211-20260330"; # comfyuiVersion = "cu130-megapak-pt211-20260413";
comfyuiVersion = "cu130-megapak-pt211-20260413"; comfyuiVersion = "cu130-megapak-pt211-20260508";
in { in {
virtualisation.oci-containers.containers = { virtualisation.oci-containers.containers = {
comfyui = { comfyui = {
@ -58,11 +58,11 @@ in {
# https://github.com/Comfy-Org/ComfyUI/blob/master/comfy/cli_args.py # https://github.com/Comfy-Org/ComfyUI/blob/master/comfy/cli_args.py
CLI_ARGS = lib.concatStringsSep " " [ CLI_ARGS = lib.concatStringsSep " " [
# "--cache-none" # Leads to single nodes being executed multiple times for each output connection :/ # "--cache-none" # Leads to single nodes being executed multiple times for each output connection :/
"--lowvram" # "--lowvram"
"--disable-smart-memory" # "--disable-smart-memory"
"--disable-pinned-memory" # "--disable-pinned-memory"
"--disable-xformers" # "--disable-xformers"
"--use-sage-attention" # Crashes # "--use-sage-attention" # Crashes
# "--reserve-vram 1" # (1 or 2) => Assume less vram is available to mitigate OOM due to wrong vram estimation # "--reserve-vram 1" # (1 or 2) => Assume less vram is available to mitigate OOM due to wrong vram estimation
]; ];
}; };