From d24af7bef55bcfa9f83f5c49b72410bf03027c4c Mon Sep 17 00:00:00 2001 From: Chris Cochrun Date: Sun, 31 Aug 2025 07:01:25 -0500 Subject: [PATCH] well.... this is awkward --- .config/qutebrowser/config.py | 6 +- flake.lock | 110 ++++++++++++++++++++++++++++++- flake.nix | 7 +- home/home.nix | 1 + home/modules/niri.nix | 119 ++++++++++++++++++++++++++++++++++ pkgs/desktop-packages.nix | 1 + 6 files changed, 239 insertions(+), 5 deletions(-) create mode 100644 home/modules/niri.nix diff --git a/.config/qutebrowser/config.py b/.config/qutebrowser/config.py index 02b7d6d..9942c78 100644 --- a/.config/qutebrowser/config.py +++ b/.config/qutebrowser/config.py @@ -2133,8 +2133,8 @@ c.tabs.width = 30 ## Type: Dict c.url.searchengines = { "b": "https://search.brave.com/search?q={}", - "vid": "https://search.brave.com/videos?q={}", - "img": "https://search.brave.com/images?q={}", + "vid": "https://search.tfcconnection.org/?q=!videos%20{}", + "img": "https://search.tfcconnection.org/?q=!images%20{}", "DEFAULT": "https://search.tfcconnection.org/?q={}", "yt": "https://yewtu.be/search?q={}", "mel": "https://melpa.org/#/?q={}", @@ -2159,7 +2159,7 @@ c.url.start_pages = ['https://staff.tfcconnection.org'] ## Hide the window decoration. This setting requires a restart on ## Wayland. ## Type: Bool -# c.window.hide_decoration = False +c.window.hide_decoration = True ## Format to use for the window title. The same placeholders like for ## `tabs.title.format` are defined. diff --git a/flake.lock b/flake.lock index 1c6b0de..7454193 100644 --- a/flake.lock +++ b/flake.lock @@ -325,6 +325,64 @@ "type": "github" } }, + "niri": { + "inputs": { + "niri-stable": "niri-stable", + "niri-unstable": "niri-unstable", + "nixpkgs": [ + "nixpkgs" + ], + "nixpkgs-stable": "nixpkgs-stable_2", + "xwayland-satellite-stable": "xwayland-satellite-stable", + "xwayland-satellite-unstable": "xwayland-satellite-unstable" + }, + "locked": { + "lastModified": 1756630712, + "narHash": "sha256-Rzr++5ZpaGWTaXwYLcksUtclSH703XLpquLoLRoFdlI=", + "owner": "sodiboo", + "repo": "niri-flake", + "rev": "dd88a1da72300083ff6ee4ad15fe30e7b2c7ad30", + "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": 1756628420, + "narHash": "sha256-GWuU2XP+/72ybXSMXDugP3/qNbgyQWSFE9ZG5euk8cc=", + "owner": "YaLTeR", + "repo": "niri", + "rev": "db419b4fc7dbfb32a5c954502839c2331bcb4ecc", + "type": "github" + }, + "original": { + "owner": "YaLTeR", + "repo": "niri", + "type": "github" + } + }, "nix-bitcoin": { "inputs": { "extra-container": "extra-container", @@ -449,6 +507,22 @@ } }, "nixpkgs-stable_2": { + "locked": { + "lastModified": 1756469547, + "narHash": "sha256-YvtD2E7MYsQ3r7K9K2G7nCslCKMPShoSEAtbjHLtH0k=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "41d292bfc37309790f70f4c120b79280ce40af16", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-25.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable_3": { "locked": { "lastModified": 1755922037, "narHash": "sha256-wY1+2JPH0ZZC4BQefoZw/k+3+DowFyfOxv17CN/idKs=", @@ -667,11 +741,12 @@ "darkly": "darkly", "emacs": "emacs", "home-manager": "home-manager", + "niri": "niri", "nix-bitcoin": "nix-bitcoin", "nixos-hardware": "nixos-hardware", "nixos-unstable-small": "nixos-unstable-small", "nixpkgs": "nixpkgs_5", - "nixpkgs-stable": "nixpkgs-stable_2", + "nixpkgs-stable": "nixpkgs-stable_3", "plasma-manager": "plasma-manager", "quickemu": "quickemu", "simple-nixos-mailserver": "simple-nixos-mailserver", @@ -895,6 +970,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": 1756570086, + "narHash": "sha256-vnbIvAqSt+hSd6blDc9IMvZKxAcHpqLhy25tDvosrug=", + "owner": "Supreeeme", + "repo": "xwayland-satellite", + "rev": "1d156aa8d30b124ff770488e5e34289a08ff4207", + "type": "github" + }, + "original": { + "owner": "Supreeeme", + "repo": "xwayland-satellite", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 7bdbfac..48998a4 100644 --- a/flake.nix +++ b/flake.nix @@ -22,6 +22,10 @@ quickemu = { url = "https://flakehub.com/f/quickemu-project/quickemu/4.9.6.tar.gz"; }; + niri = { + url = "github:sodiboo/niri-flake"; + inputs.nixpkgs.follows = "nixpkgs"; + }; # radicle = { # type = "git"; # url = "https://seed.radicle.garden/z3gqcJUoA1n9HaHKufZs5FCSGazv5.git"; @@ -56,7 +60,7 @@ outputs = inputs@{ nixpkgs, nixpkgs-stable, home-manager, plasma-manager , quickemu, nixos-hardware, emacs, nix-bitcoin #, eww - , simple-nixos-mailserver, anipy-cli, darkly, + , simple-nixos-mailserver, anipy-cli, darkly, niri, # ags, stylix, ... }: let @@ -125,6 +129,7 @@ home-manager.nixosModules.home-manager # hyprland.nixosModules.default # stylix.nixosModules.stylix + niri.nixosModules.niri nixos-hardware.nixosModules.framework-11th-gen-intel # nixos-cosmic.nixosModules.default # libre-presenter.defaultPackage diff --git a/home/home.nix b/home/home.nix index 95897ae..b0c4408 100644 --- a/home/home.nix +++ b/home/home.nix @@ -7,6 +7,7 @@ let in { imports = [ ./modules/hyprland.nix + ./modules/niri.nix ./modules/rofi.nix # ags.homeManagerModules.default # ./modules/plasma.nix diff --git a/home/modules/niri.nix b/home/modules/niri.nix new file mode 100644 index 0000000..5ae5d7b --- /dev/null +++ b/home/modules/niri.nix @@ -0,0 +1,119 @@ + +{ config, lib, pkgs, ... }: + +let + laptop = builtins.readFile "/etc/hostname" == "syl\n"; +in +{ + programs.niri = { + enable = true; + settings = { + binds = { + "XF86AudioRaiseVolume".action.spawn = ["volup"]; + "XF86AudioLowerVolume".action.spawn = ["voldown"]; + "Mod+E".action.spawn = "emacslof"; + "Mod+B".action.spawn = "qblof"; + "Mod+Shift+Q".action = quit; + "Mod+O".action = toggle-overview; + "Mod+F".action = fullscreen-window; + "Mod+M".action = toggle-windowed-fullscreen; + "Mod+C".action = close-window; + "Mod+Left".action = focus-column-left; + "Mod+Right".action = focus-column-right; + }; + spawn-at-startup = [ + { argv = ["waybar"]; } + { argv = ["kwalled6"]; } + { argv = ["swww-daemon"]; } + { argv = ["rbw-agent"]; } + { argv = ["/usr/lib/kdeconnectd"]; } + { argv = ["kdeconnect-indicator"]; } + { argv = ["wl-paste --watch cliphist store"]; } + { argv = ["swww img /home/chris/pics/wallpapers/tech.jpg --resize crop -t grow --transition-bezier .14,0,.14,.99"]; } + { argv = ["dbus-update-activation-environment --systemd --all"]; } + ]; + workspaces = { + "main" = { + open-on-output = "eDP-1"; + }; + }; + window-rules = [ + all = { + geometry-corner-radius = { + top-left = 18; + top-right = 18; + bottom-left = 18; + bottom-right = 18; + }; + }; + emacs = { + matches.app-id = "emacs"; + open-on-workspace = "main"; + }; + browser = { + matches.app-id = "org.qutebrowser.qutebrowser"; + open-on-workspace = "main"; + }; + cosmic-files = { + matches.app-id = "com.system76.CosmicFiles"; + open-on-workspace = "main"; + open-floating = true; + }; + ]; + layout = { + gaps = 15; + struts = { + bottom = 5; + left = 5; + right = 5; + top = 5; + }; + shadow = { + enable = true; + draw-behind-window = false; + }; + border = { + enable = true; + width = 4; + + }; + }; + screenshot-path = "~/pics/screenshot_%Y-%m-%d_%H-%M-%S.png"; + cursor = { + hide-after-inactive-ms = 3000; + hide-when-typing = true; + theme = "phinger-cursors-light"; + }; + outputs = { + "eDP-1" = { + enable = true; + mode = { + height = 1504; + width = 2256; + refresh = 60; + name = "A"; + }; + }; + }; + input = { + mod-key = "Super"; + touchpad = { + accel-profile = "adaptive"; + accel-speed = 0.75; + click-method = "clickfinger"; + drag = true; + }; + keyboard = { + repeat-delay = 180; + repeat-rate = 180; + }; + warp-mouse-to-focus = { + enable = true; + }; + }; + environment = { + + }; + }; + }; +} diff --git a/pkgs/desktop-packages.nix b/pkgs/desktop-packages.nix index 14c7f43..7d0ae73 100644 --- a/pkgs/desktop-packages.nix +++ b/pkgs/desktop-packages.nix @@ -14,6 +14,7 @@ kdePackages.ark harper mumble + niri # pantalaimon ifuse dash