Compare commits

...
2 Commits
Author SHA1 Message Date
4DBug 8b56376803 push 2026-08-24 04:02:10 -05:00
4DBug cbbd94a130 push 2026-08-22 21:46:30 -05:00
9 changed files with 346 additions and 37 deletions
Generated
+161 -18
View File
@@ -727,11 +727,67 @@
"type": "github"
}
},
"niri": {
"inputs": {
"niri-stable": "niri-stable",
"niri-unstable": "niri-unstable",
"nixpkgs": "nixpkgs_7",
"nixpkgs-stable": "nixpkgs-stable",
"xwayland-satellite-stable": "xwayland-satellite-stable",
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
},
"locked": {
"lastModified": 1785857305,
"narHash": "sha256-25q05zpF1sqOCxPPUG9DPPGd+EDW7SiAOWCzBWRS7r0=",
"owner": "sodiboo",
"repo": "niri-flake",
"rev": "9ee3e13b60643448228353097880521658b2fe0e",
"type": "github"
},
"original": {
"owner": "sodiboo",
"repo": "niri-flake",
"type": "github"
}
},
"niri-stable": {
"flake": false,
"locked": {
"lastModified": 1756556321,
"narHash": "sha256-RLD89dfjN0RVO86C/Mot0T7aduCygPGaYbog566F0Qo=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "01be0e65f4eb91a9cd624ac0b76aaeab765c7294",
"type": "github"
},
"original": {
"owner": "YaLTeR",
"ref": "v25.08",
"repo": "niri",
"type": "github"
}
},
"niri-unstable": {
"flake": false,
"locked": {
"lastModified": 1785701241,
"narHash": "sha256-ircVOzPWRircI39ac/tqJajr5OoJxEVrDlBb05TULEk=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "feb3e43f1475e0865bb89cbd1e898b34d1d2ccf6",
"type": "github"
},
"original": {
"owner": "YaLTeR",
"repo": "niri",
"type": "github"
}
},
"nix-cachyos-kernel": {
"inputs": {
"flake-compat": "flake-compat",
"flake-parts": "flake-parts_3",
"nixpkgs": "nixpkgs_7"
"nixpkgs": "nixpkgs_8"
},
"locked": {
"lastModified": 1785870829,
@@ -754,7 +810,7 @@
"nix-gaming": [
"nix-gaming"
],
"nixpkgs": "nixpkgs_8",
"nixpkgs": "nixpkgs_9",
"treefmt-nix": "treefmt-nix"
},
"locked": {
@@ -792,7 +848,7 @@
"flake-compat": "flake-compat_3",
"flake-parts": "flake-parts_4",
"git-hooks": "git-hooks",
"nixpkgs": "nixpkgs_9"
"nixpkgs": "nixpkgs_10"
},
"locked": {
"lastModified": 1785898401,
@@ -811,7 +867,7 @@
"nixcord": {
"inputs": {
"flake-parts": "flake-parts_5",
"nixpkgs": "nixpkgs_10",
"nixpkgs": "nixpkgs_11",
"nixpkgs-nixcord": "nixpkgs-nixcord",
"treefmt-nix": "treefmt-nix_2"
},
@@ -834,7 +890,7 @@
"blobs": "blobs",
"flake-compat": "flake-compat_4",
"git-hooks": "git-hooks_2",
"nixpkgs": "nixpkgs_11"
"nixpkgs": "nixpkgs_12"
},
"locked": {
"lastModified": 1785702596,
@@ -939,7 +995,39 @@
"type": "github"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1782847189,
"narHash": "sha256-twXPFqFsrrY5r28Zh7Homgcp2gUMBgQ6WDS98Q/3xFI=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b6018f87da91d19d0ab4cf979885689b469cdd41",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-25.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_10": {
"locked": {
"lastModified": 1785542685,
"narHash": "sha256-sjfvXMbG5pCFgpvw2OZAFcZiTvrppCWvnB6cuGrSY08=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "f8e81fc7eb063db454f563cdd596fb96a5ad1497",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_11": {
"locked": {
"lastModified": 1785386831,
"narHash": "sha256-sPS3CaXH8RAT3FZRuy4VcV47iuYIWMMfa0GbyJKC3o4=",
@@ -955,7 +1043,7 @@
"type": "github"
}
},
"nixpkgs_11": {
"nixpkgs_12": {
"locked": {
"lastModified": 1785672624,
"narHash": "sha256-TWz27RiQZf38j17BYGN/V4U2SQVtOE2pFc9u2cy3H3g=",
@@ -971,7 +1059,7 @@
"type": "github"
}
},
"nixpkgs_12": {
"nixpkgs_13": {
"locked": {
"lastModified": 1785747939,
"narHash": "sha256-D740uKsMbgsfK2oaDenJLLPIZfq7W0/g4KN/Fls8eKs=",
@@ -1065,6 +1153,22 @@
}
},
"nixpkgs_7": {
"locked": {
"lastModified": 1785828668,
"narHash": "sha256-8fsyqeO+mJqvIzeO4xIpgJe/f7MTbbVTEC6RT6WSXNs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e72e4f299401a3689d4b3d5fc6496b11db7064eb",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_8": {
"locked": {
"lastModified": 1785859399,
"narHash": "sha256-pY4X50au95QrTpAbEm08pURmeU3/Ud2oa0s2XzpDdz8=",
@@ -1080,7 +1184,7 @@
"type": "github"
}
},
"nixpkgs_8": {
"nixpkgs_9": {
"locked": {
"lastModified": 1784796856,
"narHash": "sha256-wWFrV5/Qbm+lyt5x20E/bSbfJiGKMo4RCxZV8cl/WZI=",
@@ -1096,19 +1200,23 @@
"type": "github"
}
},
"nixpkgs_9": {
"noctalia": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1785542685,
"narHash": "sha256-sjfvXMbG5pCFgpvw2OZAFcZiTvrppCWvnB6cuGrSY08=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "f8e81fc7eb063db454f563cdd596fb96a5ad1497",
"lastModified": 1787540539,
"narHash": "sha256-q6ewgZm6eAgdHWIaOV+dwR5/x711AfDUsao3nQ/CdyA=",
"owner": "noctalia-dev",
"repo": "noctalia",
"rev": "a4324409f4f07001d33fbf902be49377ee6b62e2",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"owner": "noctalia-dev",
"repo": "noctalia",
"type": "github"
}
},
@@ -1154,16 +1262,18 @@
"minecraft": "minecraft",
"minecraft-metadata": "minecraft-metadata",
"neu-nix": "neu-nix",
"niri": "niri",
"nix-cachyos-kernel": "nix-cachyos-kernel",
"nix-citizen": "nix-citizen",
"nix-flatpak": "nix-flatpak",
"nix-gaming": "nix-gaming",
"nixcord": "nixcord",
"nixos-mailserver": "nixos-mailserver",
"nixpkgs": "nixpkgs_12",
"nixpkgs": "nixpkgs_13",
"nixpkgs-lib": [
"nixpkgs"
],
"noctalia": "noctalia",
"stylix": "stylix",
"systems": "systems_5"
}
@@ -1382,6 +1492,39 @@
"repo": "treefmt-nix",
"type": "github"
}
},
"xwayland-satellite-stable": {
"flake": false,
"locked": {
"lastModified": 1755491097,
"narHash": "sha256-m+9tUfsmBeF2Gn4HWa6vSITZ4Gz1eA1F5Kh62B0N4oE=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "388d291e82ffbc73be18169d39470f340707edaa",
"type": "github"
},
"original": {
"owner": "Supreeeme",
"ref": "v0.7",
"repo": "xwayland-satellite",
"type": "github"
}
},
"xwayland-satellite-unstable": {
"flake": false,
"locked": {
"lastModified": 1784679892,
"narHash": "sha256-Mb7jpqnrcYCfNSItIkkHpuR3YxWFxPuIBfcwNKlRBkk=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "8d135d3b2854b30fd01ea6cd6c27e523dd50a839",
"type": "github"
},
"original": {
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"type": "github"
}
}
},
"root": "root",
+8 -2
View File
@@ -79,8 +79,14 @@
inputs.nixpkgs.follows = "nixpkgs";
};
wrappers.url = "github:Lassulus/wrappers";
wrapper-modules.url = "github:BirdeeHub/nix-wrapper-modules";
niri = {
url = "github:sodiboo/niri-flake";
};
noctalia = {
url = "github:noctalia-dev/noctalia";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver";
+136 -7
View File
@@ -1,17 +1,146 @@
{ inputs, ...}: {
den.aspects.nix7 = {
nixos = { pkgs, lib, ...}: {
packages.niri = inputs.wrapper-modules.wrappers.niri.wrap {
{ inputs, ... }: {
den.aspects.niri = {
nixos = { pkgs, lib, ... }: {
services.displayManager = {
sessionPackages = [ pkgs.niri ];
};
};
homeManager = { pkgs, lib, ... }: {
imports = [ inputs.niri.homeModules.niri ];
nixpkgs.overlays = [ inputs.niri.overlays.niri ];
programs.niri = {
enable = true;
package = pkgs.niri;
settings = {
spawn-at-startup = [
{ argv = [ "noctalia" "--daemon" ]; }
];
input.keyboard = {
xkb.layout = "us,ua";
};
layout.gaps = 5;
layout = {
gaps = 10;
border.enable = false;
focus-ring = {
enable = true;
width = 2;
active.color = "#cba6f7";
};
preset-column-widths = [
{ proportion = 0.50; }
{ proportion = 1.00; }
];
default-column-width = { proportion = 1.00; };
};
window-rules = [
{
geometry-corner-radius = {
top-left = 12.0;
top-right = 12.0;
bottom-left = 12.0;
bottom-right = 12.0;
};
clip-to-geometry = true;
draw-border-with-background = true;
}
{
matches = [
{ app-id = "dev.noctalia.Noctalia"; }
];
open-floating = true;
default-column-width = {
fixed = 1080;
};
default-window-height = {
fixed = 920;
};
geometry-corner-radius = {
top-left = 12.0;
top-right = 12.0;
bottom-left = 12.0;
bottom-right = 12.0;
};
clip-to-geometry = true;
draw-border-with-background = true;
}
];
binds = {
"Mod+T".spawn-sh = lib.getExe pkgs.cosmic-term;
"Mod+Q".close-window = null;
"Mod+T".action.spawn = "cosmic-term";
"Mod+D".action.spawn-sh = "noctalia msg panel-toggle launcher";
"Mod+V".action.spawn-sh = "noctalia msg panel-toggle clipboard";
"Mod+N".action.spawn-sh = "noctalia msg panel-toggle control-center";
"Mod+Comma".action.spawn-sh = "noctalia msg settings-toggle";
"Control+Alt+Delete".action.spawn-sh = "noctalia msg panel-toggle session";
"XF86AudioRaiseVolume".action.spawn-sh = "noctalia msg volume-up";
"XF86AudioLowerVolume".action.spawn-sh = "noctalia msg volume-down";
"XF86AudioMute".action.spawn-sh = "noctalia msg volume-mute";
"XF86MonBrightnessUp".action.spawn-sh = "noctalia msg brightness-up";
"XF86MonBrightnessDown".action.spawn-sh = "noctalia msg brightness-down";
# Media
"XF86AudioPlay".action.spawn = [ "playerctl" "play-pause" ];
"XF86AudioNext".action.spawn = [ "playerctl" "next" ];
"XF86AudioPrev".action.spawn = [ "playerctl" "previous" ];
"XF86AudioStop".action.spawn = [ "playerctl" "stop" ];
"Mod+W".action.spawn-sh = "noctalia msg panel-toggle wallpaper";
# Window management
"Mod+Q".action.close-window = {};
"Mod+Space".action.toggle-window-floating = {};
"Mod+Shift+Space".action.switch-focus-between-floating-and-tiling = {};
"Mod+F".action.switch-preset-column-width = {};
"Mod+Shift+F".action.fullscreen-window = {};
# Focus
"Mod+H".action.focus-column-left = {};
"Mod+J".action.focus-window-down = {};
"Mod+K".action.focus-window-up = {};
"Mod+L".action.focus-column-right = {};
# Move windows
"Mod+Shift+H".action.set-column-width = "-10%";
"Mod+Shift+L".action.set-column-width = "+10%";
"Mod+Shift+J".action.set-window-height = "+10%";
"Mod+Shift+K".action.set-window-height = "-10%";
"Mod+Control+H".action.consume-or-expel-window-left = {};
"Mod+Control+L".action.consume-or-expel-window-right = {};
"Mod+Control+K".action.move-window-up = {};
"Mod+Control+J".action.move-window-down = {};
# Screenshots
"Mod+Shift+S".action.spawn = [ "noctalia" "msg" "screenshot-region" ];
# Workspaces
"Mod+1".action.focus-workspace = 1;
"Mod+2".action.focus-workspace = 2;
"Mod+3".action.focus-workspace = 3;
"Mod+4".action.focus-workspace = 4;
"Mod+5".action.focus-workspace = 5;
"Mod+6".action.focus-workspace = 6;
"Mod+7".action.focus-workspace = 7;
"Mod+8".action.focus-workspace = 8;
"Mod+9".action.focus-workspace = 9;
"Mod+0".action.focus-workspace = 10;
"Mod+Shift+1".action.move-window-to-workspace = [ { focus = false; } 1 ];
"Mod+Shift+2".action.move-window-to-workspace = [ { focus = false; } 2 ];
"Mod+Shift+3".action.move-window-to-workspace = [ { focus = false; } 3 ];
"Mod+Shift+4".action.move-window-to-workspace = [ { focus = false; } 4 ];
"Mod+Shift+5".action.move-window-to-workspace = [ { focus = false; } 5 ];
"Mod+Shift+6".action.move-window-to-workspace = [ { focus = false; } 6 ];
"Mod+Shift+7".action.move-window-to-workspace = [ { focus = false; } 7 ];
"Mod+Shift+8".action.move-window-to-workspace = [ { focus = false; } 8 ];
"Mod+Shift+9".action.move-window-to-workspace = [ { focus = false; } 9 ];
"Mod+Shift+0".action.move-window-to-workspace = [ { focus = false; } 10 ];
"Mod+Ctrl+1".action.move-window-to-workspace = 1;
"Mod+Ctrl+2".action.move-window-to-workspace = 2;
"Mod+Ctrl+3".action.move-window-to-workspace = 3;
"Mod+Ctrl+4".action.move-window-to-workspace = 4;
"Mod+Ctrl+5".action.move-window-to-workspace = 5;
"Mod+Ctrl+6".action.move-window-to-workspace = 6;
"Mod+Ctrl+7".action.move-window-to-workspace = 7;
"Mod+Ctrl+8".action.move-window-to-workspace = 8;
"Mod+Ctrl+9".action.move-window-to-workspace = 9;
"Mod+Ctrl+0".action.move-window-to-workspace = 10;
};
};
};
+7 -1
View File
@@ -1,3 +1,9 @@
{
{ inputs, ...}: {
den.aspects.noctalia = {
nixos = { ... }: {
imports = [ inputs.noctalia.nixosModules.default ];
programs.noctalia.enable = true;
};
};
}
+3
View File
@@ -16,6 +16,9 @@
neu
#nix7
niri
noctalia
];
nixos = {
@@ -2,13 +2,13 @@
den.aspects.llama = {
nixos = { pkgs, lib, ... }: {
environment.systemPackages = [ pkgs.cloudflared ];
environment.etc."cloudflared/9c1a18f9-a2c4-41bd-9a64-86ebb3e3283d.json".source = "/home/bug/.cloudflared/9c1a18f9-a2c4-41bd-9a64-86ebb3e3283d.json";
environment.etc."cloudflared/608ba37a-1be8-49e8-be2d-abeb8b77081d.json".source = "/home/bug/.cloudflared/608ba37a-1be8-49e8-be2d-abeb8b77081d.json";
services.cloudflared = {
enable = true;
tunnels = {
"9c1a18f9-a2c4-41bd-9a64-86ebb3e3283d" = {
credentialsFile = "/etc/cloudflared/9c1a18f9-a2c4-41bd-9a64-86ebb3e3283d.json";
"608ba37a-1be8-49e8-be2d-abeb8b77081d" = {
credentialsFile = "/etc/cloudflared/608ba37a-1be8-49e8-be2d-abeb8b77081d.json";
ingress = {
"llama.bug.tools" = "http://127.0.0.1:8080";
@@ -19,7 +19,7 @@
};
};
systemd.services."cloudflared-tunnel-9c1a18f9-a2c4-41bd-9a64-86ebb3e3283d".environment = {
systemd.services."cloudflared-tunnel-608ba37a-1be8-49e8-be2d-abeb8b77081d".environment = {
TUNNEL_TRANSPORT_PROTOCOL = pkgs.lib.mkForce "http2";
};
+25
View File
@@ -0,0 +1,25 @@
{ pkgs, lib, ... }:
let
opencode-json = pkgs.writeText "opencode.json" (builtins.toJSON {
"$schema" = "https://opencode.ai/config.json";
plugin = [ "opencode-plugin-llama.cpp@latest" ];
provider = {
llama.cpp = {
npm = "@ai-sdk/openai-compatible";
name = "llama.cpp";
options.baseURL = "https://llama.bug.tools/v1";
models."qwen3.6-35b-a3b".name = "qwen3.6-35b-a3b";
};
};
});
in {
den.aspects.opencode = {
nixos = { pkgs, ... }: {
environment.systemPackages = [ pkgs.opencode ];
};
homeManager = { ... }: {
home.file.".config/opencode/opencode.json".source = opencode-json;
};
};
}
+1 -1
View File
@@ -85,7 +85,7 @@
disableCallIdle.enable = true;
ClearURLs.enable = true;
clearUrls.enable = true;
};
};
};
+1 -4
View File
@@ -1,12 +1,9 @@
{ den, ... }: {
den.aspects.bug = {
includes = [
den.batteries.host-aspects
den.provides.primary-user
(den.provides.user-shell "fish")
den.aspects.stylix
den.aspects.librewolf
den.aspects.catppuccin
#den.provides.home-manager
];
homeManager = {