this repo has no description
4
fork

Configure Feed

Select the types of activity you want to include in your feed.

add niri module

dusk 8d37ea1f 8b501186

+405 -18
+4 -4
_sources/generated.json
··· 269 269 }, 270 270 "nucleus": { 271 271 "cargoLocks": null, 272 - "date": "2025-11-05", 272 + "date": "2025-11-11", 273 273 "extract": null, 274 274 "name": "nucleus", 275 275 "passthru": null, ··· 279 279 "fetchSubmodules": false, 280 280 "leaveDotGit": false, 281 281 "name": null, 282 - "rev": "1288cb9847122b8c17375f9b7bd2947e771fd433", 283 - "sha256": "sha256-BgLZW4KhzQqNVoeBMbyfFduSqVuzkJPSVutU/pCWzoo=", 282 + "rev": "a4f73517c1a76ed20b55f21618148b8afe0fa838", 283 + "sha256": "sha256-8WrGAr+aCIFCFuixtH1BSB5lMn+d/FqXsEFAmXY3HkU=", 284 284 "sparseCheckout": [], 285 285 "type": "git", 286 286 "url": "https://tangled.org/@ptr.pet/nucleus" 287 287 }, 288 - "version": "1288cb9847122b8c17375f9b7bd2947e771fd433" 288 + "version": "a4f73517c1a76ed20b55f21618148b8afe0fa838" 289 289 }, 290 290 "stylix": { 291 291 "cargoLocks": null,
+4 -4
_sources/generated.nix
··· 169 169 }; 170 170 nucleus = { 171 171 pname = "nucleus"; 172 - version = "1288cb9847122b8c17375f9b7bd2947e771fd433"; 172 + version = "a4f73517c1a76ed20b55f21618148b8afe0fa838"; 173 173 src = fetchgit { 174 174 url = "https://tangled.org/@ptr.pet/nucleus"; 175 - rev = "1288cb9847122b8c17375f9b7bd2947e771fd433"; 175 + rev = "a4f73517c1a76ed20b55f21618148b8afe0fa838"; 176 176 fetchSubmodules = false; 177 177 deepClone = false; 178 178 leaveDotGit = false; 179 179 sparseCheckout = [ ]; 180 - sha256 = "sha256-BgLZW4KhzQqNVoeBMbyfFduSqVuzkJPSVutU/pCWzoo="; 180 + sha256 = "sha256-8WrGAr+aCIFCFuixtH1BSB5lMn+d/FqXsEFAmXY3HkU="; 181 181 }; 182 - date = "2025-11-05"; 182 + date = "2025-11-11"; 183 183 }; 184 184 stylix = { 185 185 pname = "stylix";
+1 -1
dns/dnsconfig.js
··· 104 104 // atproto 105 105 TXT("_atproto", "did=did:plc:dfl62fgb7wtjj3fcbb72naae"), 106 106 A("nil", WOLUMONDE_IP, CF_PROXY_OFF), 107 - TXT("_atproto.nil", "did=did:plc:dumbmutttrskde4ibwbnbike"), 107 + TXT("_atproto.nil", "did=did:plc:dumbmutt4po52ept2tczimje"), 108 108 TXT("_atproto.june", "did=did:plc:y3z2rr7q5rywu4fjn3fmfyop"), 109 109 // june 110 110 CNAME("june", "girlboss.ceo."),
+2
hosts/chernobog/default.nix
··· 71 71 ]; 72 72 monospace = [ "Comic Mono" ]; 73 73 }; 74 + # fontconfig.hinting.style = "full"; 75 + # fontconfig.subpixel.rgba = "rgb"; 74 76 }; 75 77 76 78 services.earlyoom.enable = true;
+1 -1
hosts/chernobog/modules/greetd.nix
··· 5 5 settings = { 6 6 terminal.vt = 1; 7 7 default_session = { 8 - command = "${pkgs.tuigreet}/bin/tuigreet --issue --time --cmd sway"; 8 + command = "${pkgs.tuigreet}/bin/tuigreet --issue --time --cmd niri-session"; 9 9 user = "greeter"; 10 10 }; 11 11 };
+3 -3
hosts/chernobog/modules/lact.nix/config.yaml
··· 62 62 target_temperature: 88 63 63 zero_rpm: false 64 64 zero_rpm_threshold: 40 65 - power_cap: 198.0 65 + power_cap: 190.0 66 66 performance_level: auto 67 - max_core_clock: 3200 67 + max_core_clock: 2600 68 68 max_memory_clock: 1250 69 - voltage_offset: -25 69 + voltage_offset: -10 70 70 current_profile: oc 71 71 auto_switch_profiles: false
+1 -1
hosts/wolumonde/modules/atproto.nix
··· 56 56 "test.gaze.systems" = mkHandleCfg "gaze.systems" "did:web:dawn.gaze.systems"; 57 57 "poor.dog" = mkHandleCfg "poor.dog" "did:plc:dfl62fgb7wtjj3fcbb72naae"; 58 58 "ptr.pet" = mkHandleCfg "ptr.pet" "did:plc:dfl62fgb7wtjj3fcbb72naae"; 59 - "nil.ptr.pet" = mkHandleCfg "ptr.pet" "did:plc:dumbmutttrskde4ibwbnbike"; 59 + "nil.ptr.pet" = mkHandleCfg "ptr.pet" "did:plc:dumbmutt4po52ept2tczimje"; 60 60 "june.ptr.pet" = mkHandleCfg "ptr.pet" "did:plc:y3z2rr7q5rywu4fjn3fmfyop"; 61 61 "drew.gaze.systems" = mkHandleCfg "gaze.systems" "did:plc:vo6ie3kd6xvpjlof4pnb2zzp"; 62 62 "eris.gaze.systems" = mkHandleCfg "gaze.systems" "did:plc:bxjnsrfzozl365rsdo5yvuz5";
+3 -3
users/mayer/default.nix
··· 39 39 enable = true; 40 40 binfmt = true; 41 41 }; 42 - sway.enable = true; 42 + niri.enable = true; 43 43 }; 44 44 systemd = { 45 45 targets.network-online.enable = false; ··· 73 73 modulesToEnable = l.flatten [ 74 74 [ 75 75 "settings" 76 - "sway" 77 - "wayland" 76 + "niri" 78 77 "foot" 79 78 ] 80 79 # cli stuff ··· 115 114 xdg-utils 116 115 transmission_4-gtk 117 116 prismlauncher 117 + lutris 118 118 gearlever 119 119 signal-desktop 120 120 bs-manager
+360
users/modules/niri/config.kdl
··· 1 + // This config is in the KDL format: https://kdl.dev 2 + // "/-" comments out the following node. 3 + // Check the wiki for a full description of the configuration: 4 + // https://yalter.github.io/niri/Configuration:-Introduction 5 + 6 + // Input device configuration. 7 + // Find the full list of options on the wiki: 8 + // https://yalter.github.io/niri/Configuration:-Input 9 + input { 10 + keyboard { 11 + xkb { 12 + // You can set rules, model, layout, variant and options. 13 + // For more information, see xkeyboard-config(7). 14 + 15 + // For example: 16 + // layout "us,ru" 17 + // options "grp:win_space_toggle,compose:ralt,ctrl:nocaps" 18 + options "compose:ralt" 19 + 20 + // If this section is empty, niri will fetch xkb settings 21 + // from org.freedesktop.locale1. You can control these using 22 + // localectl set-x11-keymap. 23 + } 24 + 25 + // Enable numlock on startup, omitting this setting disables it. 26 + // numlock 27 + } 28 + 29 + touchpad { 30 + // off 31 + tap 32 + // dwt 33 + // dwtp 34 + // drag false 35 + // drag-lock 36 + natural-scroll 37 + // accel-speed 0.2 38 + accel-profile "flat" 39 + // scroll-method "two-finger" 40 + // disabled-on-external-mouse 41 + } 42 + 43 + mouse { 44 + // off 45 + // natural-scroll 46 + // accel-speed 0.2 47 + accel-profile "flat" 48 + // scroll-method "no-scroll" 49 + } 50 + 51 + trackpoint { 52 + // off 53 + // natural-scroll 54 + // accel-speed 0.2 55 + accel-profile "flat" 56 + // scroll-method "on-button-down" 57 + // scroll-button 273 58 + // scroll-button-lock 59 + // middle-emulation 60 + } 61 + 62 + warp-mouse-to-focus 63 + focus-follows-mouse 64 + 65 + mod-key "Super" 66 + mod-key-nested "Alt" 67 + } 68 + 69 + output "HDMI-A-2" { 70 + mode "1920x1080@74.973" 71 + scale 1 72 + } 73 + 74 + output "DP-1" { 75 + mode "1920x1080@165.009" 76 + scale 1 77 + } 78 + 79 + // Settings that influence how windows are positioned and sized. 80 + // Find more information on the wiki: 81 + // https://yalter.github.io/niri/Configuration:-Layout 82 + layout { 83 + // Set gaps around windows in logical pixels. 84 + gaps 0 85 + 86 + // When to center a column when changing focus, options are: 87 + // - "never", default behavior, focusing an off-screen column will keep at the left 88 + // or right edge of the screen. 89 + // - "always", the focused column will always be centered. 90 + // - "on-overflow", focusing a column will center it if it doesn't fit 91 + // together with the previously focused column. 92 + center-focused-column "never" 93 + 94 + // You can customize the widths that "switch-preset-column-width" (Mod+R) toggles between. 95 + preset-column-widths { 96 + // Proportion sets the width as a fraction of the output width, taking gaps into account. 97 + // For example, you can perfectly fit four windows sized "proportion 0.25" on an output. 98 + // The default preset widths are 1/3, 1/2 and 2/3 of the output. 99 + proportion 0.33333 100 + proportion 0.5 101 + proportion 0.66667 102 + 103 + // Fixed sets the width in logical pixels exactly. 104 + // fixed 1920 105 + } 106 + 107 + // default-column-width { proportion 1.0; } 108 + 109 + focus-ring { off; } 110 + border { off; } 111 + // shadow { off; } 112 + 113 + struts { } 114 + } 115 + 116 + spawn-at-startup "swaybg" "-c" "000000" 117 + 118 + hotkey-overlay { 119 + // skip-at-startup 120 + } 121 + 122 + prefer-no-csd 123 + 124 + screenshot-path "~/shots/%Y-%m-%d_%H-%M-%S.png" 125 + 126 + environment { 127 + ELECTRON_OZONE_PLATFORM_HINT "auto" 128 + } 129 + 130 + animations { 131 + // off 132 + 133 + // Slow down all animations by this factor. Values below 1 speed them up instead. 134 + slowdown 1.4 135 + } 136 + 137 + // Open the Firefox picture-in-picture player as floating by default. 138 + window-rule { 139 + // This app-id regular expression will work for both: 140 + // - host Firefox (app-id is "firefox") 141 + // - Flatpak Firefox (app-id is "org.mozilla.firefox") 142 + match app-id=r#"firefox$"# title="^Picture-in-Picture$" 143 + match app-id=r#"^tofi"# 144 + 145 + open-floating true 146 + } 147 + 148 + window-rule { 149 + match app-id=r#"^org\.keepassxc\.KeePassXC$"# 150 + match app-id=r#"^org\.gnome\.World\.Secrets$"# 151 + // match namespace="^notifications$" 152 + 153 + block-out-from "screen-capture" 154 + } 155 + 156 + window-rule { 157 + geometry-corner-radius 0 158 + clip-to-geometry true 159 + } 160 + 161 + binds { 162 + Mod+Shift+Slash { show-hotkey-overlay; } 163 + 164 + Mod+Return hotkey-overlay-title="terminal: foot" { spawn "footclient"; } 165 + Mod+D hotkey-overlay-title="launcher: wofi" { spawn "tofi-drun"; } 166 + 167 + Alt+S hotkey-overlay-title="screenshot screen" { screenshot-screen; } 168 + Alt+Shift+S hotkey-overlay-title="screenshot" { screenshot; } 169 + 170 + XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+"; } 171 + XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; } 172 + XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; } 173 + XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; } 174 + 175 + XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; } 176 + XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; } 177 + 178 + Mod+O repeat=false { toggle-overview; } 179 + Mod+Q cooldown-ms=50 { close-window; } 180 + 181 + Mod+Left { focus-column-left; } 182 + Mod+Down { focus-window-down; } 183 + Mod+Up { focus-window-up; } 184 + Mod+Right { focus-column-right; } 185 + Mod+H { focus-column-left; } 186 + Mod+J { focus-window-down; } 187 + Mod+K { focus-window-up; } 188 + Mod+L { focus-column-right; } 189 + 190 + Mod+Shift+Left { move-column-left; } 191 + Mod+Shift+Down { move-window-down; } 192 + Mod+Shift+Up { move-window-up; } 193 + Mod+Shift+Right { move-column-right; } 194 + Mod+Shift+H { move-column-left; } 195 + Mod+Shift+J { move-window-down; } 196 + Mod+Shift+K { move-window-up; } 197 + Mod+Shift+L { move-column-right; } 198 + 199 + // Alternative commands that move across workspaces when reaching 200 + // the first or last window in a column. 201 + // Mod+J { focus-window-or-workspace-down; } 202 + // Mod+K { focus-window-or-workspace-up; } 203 + // Mod+Ctrl+J { move-window-down-or-to-workspace-down; } 204 + // Mod+Ctrl+K { move-window-up-or-to-workspace-up; } 205 + 206 + Mod+Home { focus-column-first; } 207 + Mod+End { focus-column-last; } 208 + Mod+Ctrl+Home { move-column-to-first; } 209 + Mod+Ctrl+End { move-column-to-last; } 210 + 211 + Mod+Ctrl+Left { focus-monitor-left; } 212 + Mod+Ctrl+Down { focus-monitor-down; } 213 + Mod+Ctrl+Up { focus-monitor-up; } 214 + Mod+Ctrl+Right { focus-monitor-right; } 215 + Mod+Ctrl+H { focus-monitor-left; } 216 + Mod+Ctrl+J { focus-monitor-down; } 217 + Mod+Ctrl+K { focus-monitor-up; } 218 + Mod+Ctrl+L { focus-monitor-right; } 219 + 220 + Mod+Shift+Ctrl+Left { move-column-to-monitor-left; } 221 + Mod+Shift+Ctrl+Down { move-column-to-monitor-down; } 222 + Mod+Shift+Ctrl+Up { move-column-to-monitor-up; } 223 + Mod+Shift+Ctrl+Right { move-column-to-monitor-right; } 224 + Mod+Shift+Ctrl+H { move-column-to-monitor-left; } 225 + Mod+Shift+Ctrl+J { move-column-to-monitor-down; } 226 + Mod+Shift+Ctrl+K { move-column-to-monitor-up; } 227 + Mod+Shift+Ctrl+L { move-column-to-monitor-right; } 228 + 229 + Mod+Page_Down { focus-workspace-down; } 230 + Mod+Page_Up { focus-workspace-up; } 231 + //Mod+U { focus-workspace-down; } 232 + //Mod+I { focus-workspace-up; } 233 + Mod+Ctrl+Page_Down { move-column-to-workspace-down; } 234 + Mod+Ctrl+Page_Up { move-column-to-workspace-up; } 235 + //Mod+Ctrl+U { move-column-to-workspace-down; } 236 + //Mod+Ctrl+I { move-column-to-workspace-up; } 237 + 238 + Mod+Shift+Page_Down { move-workspace-down; } 239 + Mod+Shift+Page_Up { move-workspace-up; } 240 + Mod+Shift+U { move-workspace-down; } 241 + Mod+Shift+I { move-workspace-up; } 242 + 243 + // You can bind mouse wheel scroll ticks using the following syntax. 244 + // These binds will change direction based on the natural-scroll setting. 245 + // 246 + // To avoid scrolling through workspaces really fast, you can use 247 + // the cooldown-ms property. The bind will be rate-limited to this value. 248 + // You can set a cooldown on any bind, but it's most useful for the wheel. 249 + Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; } 250 + Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; } 251 + Mod+Shift+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; } 252 + Mod+Shift+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; } 253 + 254 + // Usually scrolling up and down with Shift in applications results in 255 + // horizontal scrolling; these binds replicate that. 256 + Alt+WheelScrollDown { focus-column-right; } 257 + Alt+WheelScrollUp { focus-column-left; } 258 + Alt+Shift+WheelScrollDown { move-column-right; } 259 + Alt+Shift+WheelScrollUp { move-column-left; } 260 + 261 + Mod+1 { focus-workspace 1; } 262 + Mod+2 { focus-workspace 2; } 263 + Mod+3 { focus-workspace 3; } 264 + Mod+4 { focus-workspace 4; } 265 + Mod+5 { focus-workspace 5; } 266 + Mod+6 { focus-workspace 6; } 267 + Mod+7 { focus-workspace 7; } 268 + Mod+8 { focus-workspace 8; } 269 + Mod+9 { focus-workspace 9; } 270 + Mod+Ctrl+1 { move-column-to-workspace 1; } 271 + Mod+Ctrl+2 { move-column-to-workspace 2; } 272 + Mod+Ctrl+3 { move-column-to-workspace 3; } 273 + Mod+Ctrl+4 { move-column-to-workspace 4; } 274 + Mod+Ctrl+5 { move-column-to-workspace 5; } 275 + Mod+Ctrl+6 { move-column-to-workspace 6; } 276 + Mod+Ctrl+7 { move-column-to-workspace 7; } 277 + Mod+Ctrl+8 { move-column-to-workspace 8; } 278 + Mod+Ctrl+9 { move-column-to-workspace 9; } 279 + 280 + // Switches focus between the current and the previous workspace. 281 + // Mod+Tab { focus-workspace-previous; } 282 + 283 + // The following binds move the focused window in and out of a column. 284 + // If the window is alone, they will consume it into the nearby column to the side. 285 + // If the window is already in a column, they will expel it out. 286 + Mod+BracketLeft { consume-or-expel-window-left; } 287 + Mod+BracketRight { consume-or-expel-window-right; } 288 + 289 + // Consume one window from the right to the bottom of the focused column. 290 + Mod+Comma { consume-window-into-column; } 291 + // Expel the bottom window from the focused column to the right. 292 + Mod+Period { expel-window-from-column; } 293 + 294 + Mod+R { switch-preset-column-width; } 295 + // Cycling through the presets in reverse order is also possible. 296 + // Mod+R { switch-preset-column-width-back; } 297 + Mod+Shift+R { switch-preset-window-height; } 298 + Mod+Ctrl+R { reset-window-height; } 299 + Mod+F { maximize-column; } 300 + Mod+Shift+F { fullscreen-window; } 301 + 302 + // Expand the focused column to space not taken up by other fully visible columns. 303 + // Makes the column "fill the rest of the space". 304 + Mod+Ctrl+F { expand-column-to-available-width; } 305 + 306 + Mod+C { center-column; } 307 + 308 + // Center all fully visible columns on screen. 309 + Mod+Ctrl+C { center-visible-columns; } 310 + 311 + // Finer width adjustments. 312 + // This command can also: 313 + // * set width in pixels: "1000" 314 + // * adjust width in pixels: "-5" or "+5" 315 + // * set width as a percentage of screen width: "25%" 316 + // * adjust width as a percentage of screen width: "-10%" or "+10%" 317 + // Pixel sizes use logical, or scaled, pixels. I.e. on an output with scale 2.0, 318 + // set-column-width "100" will make the column occupy 200 physical screen pixels. 319 + Mod+Minus { set-column-width "-10%"; } 320 + Mod+Equal { set-column-width "+10%"; } 321 + 322 + // Finer height adjustments when in column with other windows. 323 + Mod+Shift+Minus { set-window-height "-10%"; } 324 + Mod+Shift+Equal { set-window-height "+10%"; } 325 + 326 + // Move the focused window between the floating and the tiling layout. 327 + Mod+V { toggle-window-floating; } 328 + Mod+Shift+V { switch-focus-between-floating-and-tiling; } 329 + 330 + // Toggle tabbed column display mode. 331 + // Windows in this column will appear as vertical tabs, 332 + // rather than stacked on top of each other. 333 + Mod+W { toggle-column-tabbed-display; } 334 + 335 + // Actions to switch layouts. 336 + // Note: if you uncomment these, make sure you do NOT have 337 + // a matching layout switch hotkey configured in xkb options above. 338 + // Having both at once on the same hotkey will break the switching, 339 + // since it will switch twice upon pressing the hotkey (once by xkb, once by niri). 340 + // Mod+Space { switch-layout "next"; } 341 + // Mod+Shift+Space { switch-layout "prev"; } 342 + 343 + // Applications such as remote-desktop clients and software KVM switches may 344 + // request that niri stops processing the keyboard shortcuts defined here 345 + // so they may, for example, forward the key presses as-is to a remote machine. 346 + // It's a good idea to bind an escape hatch to toggle the inhibitor, 347 + // so a buggy application can't hold your session hostage. 348 + // 349 + // The allow-inhibiting=false property can be applied to other binds as well, 350 + // which ensures niri always processes them, even when an inhibitor is active. 351 + Mod+Escape allow-inhibiting=false { toggle-keyboard-shortcuts-inhibit; } 352 + 353 + // The quit action will show a confirmation dialog to avoid accidental exits. 354 + Mod+Shift+E { quit; } 355 + Ctrl+Alt+Delete { quit; } 356 + 357 + // Powers off the monitors. To turn them back on, do any input like 358 + // moving the mouse or pressing any other key. 359 + Mod+Shift+P { power-off-monitors; } 360 + }
+19
users/modules/niri/default.nix
··· 1 + { 2 + config, 3 + nixosConfig, 4 + pkgs, 5 + lib, 6 + tlib, 7 + ... 8 + }: 9 + { 10 + imports = [ 11 + ../wayland 12 + ../wlsunset 13 + ../mako 14 + ../tofi 15 + ]; 16 + 17 + home.packages = with pkgs; [niri xwayland-satellite brightnessctl swaybg]; 18 + xdg.configFile."niri/config.kdl".source = ./config.kdl; 19 + }
+7 -1
users/modules/tofi/default.nix
··· 1 - { lib, config, ... }: 1 + { pkgs, lib, config, ... }: 2 2 { 3 3 stylix.targets.tofi.enable = true; 4 4 programs.tofi = { 5 5 enable = true; 6 + package = pkgs.tofi.overrideAttrs (old: { 7 + patches = [(pkgs.fetchpatch2 { 8 + url = "https://patch-diff.githubusercontent.com/raw/philj56/tofi/pull/189.patch"; 9 + hash = "sha256-qsXRyNE9x1sSDrCq/LTQY/DTEMwYAJB3U0/dPXX/jw4="; 10 + })]; 11 + }); 6 12 settings = { 7 13 outline-width = 0; 8 14 border-width = 0;