From 3260a9771d116dd70f1bf9a848f3d551dd0c84b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Av=C3=A9?= Date: Wed, 17 Dec 2025 09:52:36 +0100 Subject: [PATCH] Switch to vicinae --- flake.lock | 77 ++++++++++++++++++++++++++++++++------- flake.nix | 5 ++- home/Aloria.nix | 15 ++------ home/hyprland/default.nix | 28 +++----------- home/utils/desktop.nix | 3 +- home/vicinae/default.nix | 10 +++++ 6 files changed, 88 insertions(+), 50 deletions(-) create mode 100644 home/vicinae/default.nix diff --git a/flake.lock b/flake.lock index 073f8b3..8dfaf87 100644 --- a/flake.lock +++ b/flake.lock @@ -132,11 +132,11 @@ ] }, "locked": { - "lastModified": 1764636297, - "narHash": "sha256-S41K55kw+hWgDfgKmZ9/fMZ3F0BQDMvqFfE120fMHeE=", + "lastModified": 1764912896, + "narHash": "sha256-ftxQocr098v5ngqB3SXa9tW6aqovBSBOEdIRcLEj44c=", "owner": "nix-community", "repo": "home-manager", - "rev": "ff067cfc619fdf6f82d50344e7d19ff2323f0827", + "rev": "6bcb2395ab9ed05616052262da526cd7c5b4b123", "type": "github" }, "original": { @@ -184,11 +184,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1764517877, - "narHash": "sha256-pp3uT4hHijIC8JUK5MEqeAWmParJrgBVzHLNfJDZxg4=", + "lastModified": 1764667669, + "narHash": "sha256-7WUCZfmqLAssbDqwg9cUDAXrSoXN79eEEq17qhTNM/Y=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2d293cbfa5a793b4c50d17c05ef9e385b90edf6c", + "rev": "418468ac9527e799809c900eda37cbff999199b6", "type": "github" }, "original": { @@ -200,11 +200,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1764517877, - "narHash": "sha256-pp3uT4hHijIC8JUK5MEqeAWmParJrgBVzHLNfJDZxg4=", + "lastModified": 1764667669, + "narHash": "sha256-7WUCZfmqLAssbDqwg9cUDAXrSoXN79eEEq17qhTNM/Y=", "owner": "nixos", "repo": "nixpkgs", - "rev": "2d293cbfa5a793b4c50d17c05ef9e385b90edf6c", + "rev": "418468ac9527e799809c900eda37cbff999199b6", "type": "github" }, "original": { @@ -215,6 +215,22 @@ } }, "nixpkgs_4": { + "locked": { + "lastModified": 1762111121, + "narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { "locked": { "lastModified": 1730200266, "narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=", @@ -236,11 +252,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1764683664, - "narHash": "sha256-Mr5HKf/bjAJ8H7/H0qJSk2BEV/OILkDIFKrGK0dUVUk=", + "lastModified": 1764912878, + "narHash": "sha256-Wk/ZdwaC2215wh4ivsbGKWeZ91GHNYMZa5tLezZEiDE=", "owner": "nix-community", "repo": "NUR", - "rev": "b8b40e258cf4c959b06b7322648c87674633629b", + "rev": "6920615d6c99049c67e686805b09c0d2fc760474", "type": "github" }, "original": { @@ -258,13 +274,48 @@ "nixos-06cb-009a-fingerprint-sensor": "nixos-06cb-009a-fingerprint-sensor", "nixpkgs": "nixpkgs_2", "nur": "nur", + "vicinae": "vicinae", "worktimer": "worktimer" } }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "vicinae": { + "inputs": { + "nixpkgs": "nixpkgs_4", + "systems": "systems" + }, + "locked": { + "lastModified": 1765272078, + "narHash": "sha256-etv2HJA9OWvTkjnrjaNSqvebu9gWLIGPYb9PWr4qkfM=", + "owner": "vicinaehq", + "repo": "vicinae", + "rev": "32cf6b1f82e007cddba9c9ae037eff670219cd55", + "type": "github" + }, + "original": { + "owner": "vicinaehq", + "repo": "vicinae", + "type": "github" + } + }, "worktimer": { "inputs": { "flake-parts": "flake-parts_3", - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_5" }, "locked": { "lastModified": 1739738223, diff --git a/flake.nix b/flake.nix index 67caf25..baa8c1b 100644 --- a/flake.nix +++ b/flake.nix @@ -7,6 +7,7 @@ }; nur.url = "github:nix-community/NUR"; fzgo.url = "git+https://git.thomasave.be/thomasave/fzgo.git"; + vicinae.url = "github:vicinaehq/vicinae"; worktimer = { type = "git"; url = "https://git.thomasave.be/thomasave/WorkTimer"; @@ -40,15 +41,17 @@ ]; } { networking.hostName = host; - time.timeZone = "Asia/Bangkok"; + time.timeZone = "Europe/Brussels"; nix.settings = { substituters = [ "https://nix-community.cachix.org" "https://cuda-maintainers.cachix.org" + "https://vicinae.cachix.org" ]; trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E=" + "vicinae.cachix.org-1:1kDrfienkGHPYbkpNj1mWTr7Fm1+zcenzgTizIcI3oc=" ]; experimental-features = [ "nix-command" "flakes" ]; trusted-users = [ "root" user ]; diff --git a/home/Aloria.nix b/home/Aloria.nix index 19921ad..ef36699 100644 --- a/home/Aloria.nix +++ b/home/Aloria.nix @@ -20,6 +20,7 @@ in home.packages = with pkgs; [ # jetbrains.pycharm-professional + rclone zed-editor distrobox gnome-disk-utility @@ -31,21 +32,11 @@ in smile ]; - services.hyprpaper = { - settings = { - wallpaper = [ - "HDMI-A-1,${./hyprland/files/wallpaper.png}" - "DP-1,${./hyprland/files/wallpaper.png}" - "eDP-1,${./hyprland/files/wallpaper.png}" - ]; - }; - }; - wayland.windowManager.hyprland.settings = { monitor = [ - "eDP-1,2880x1800@120.00Hz,0x284,1.2,vrr,1" + "eDP-1,2880x1800@120.00Hz,480x0,1.2,vrr,1" "DP-1,1920x1080,6240x500,1" - "HDMI-A-1,3840x2160@60.00Hz,2400x0,1" + "HDMI-A-1,3840x2160@60.00Hz,0x-2160,1" ]; bind = [ ", XF86PowerOff, exec, ${pkgs.rofi}/bin/rofi -show power-menu -modi power-menu:${ diff --git a/home/hyprland/default.nix b/home/hyprland/default.nix index fb7378d..fd08e04 100644 --- a/home/hyprland/default.nix +++ b/home/hyprland/default.nix @@ -7,17 +7,7 @@ let wpctl = "${pkgs.wireplumber}/bin/wpctl"; terminal-name = "foot"; terminal = "${pkgs.foot}/bin/footclient"; - rofi = "${pkgs.rofi}/bin/rofi"; jq = "${pkgs.jq}/bin/jq"; - rofi-ykman = pkgs.writeShellScriptBin "rofi-ykman" '' - accounts=$(${pkgs.yubikey-manager}/bin/ykman oath accounts list) - prompt="YubiKey OATH" - account=$(echo "''${accounts/, TOTP/\n}" | awk '{ print $0 "\0icon\x1fyubioath"; }' | ${rofi} -dmenu -i -p "$prompt" ''${shortcuts[@]}) - code=$(${pkgs.yubikey-manager}/bin/ykman oath accounts code "$account") - IFS=', ' read -r -a code <<< "$code" - echo -n "''${code[-1]}" | ${pkgs.wl-clipboard}/bin/wl-copy; - ''; - # workspace_command_prefix = "split-"; # hyprland_plugins = [ inputs.split-monitor-workspaces.packages.${pkgs.system}.split-monitor-workspaces ]; @@ -81,12 +71,11 @@ in { services.hyprpaper = { enable = true; settings = { - ipc = "off"; + ipc = "on"; splash = false; preload = [ "${./files/wallpaper.png}" ]; wallpaper = [ - # Fill in by host-specific config! - # "Display,${./files/wallpaper.png}" + ",${./files/wallpaper.png}" ]; }; }; @@ -136,8 +125,6 @@ in { "hyprpaper" "foot --server" "hyprctl dispatch exec ags run" - "${wl-paste} --type text --watch cliphist store" - "${wl-paste} --type image --watch cliphist store" "${pkgs.mate.mate-polkit}/bin/polkit-mate" ]; env = [ @@ -161,7 +148,7 @@ in { "bordersize 0, floating:0, onworkspace:f[1]" "rounding 0, floating:0, onworkspace:f[1]" ]; - layerrule = [ "noanim,ags_bar_0" "noanim,selection" ]; + layerrule = [ "noanim,ags_bar_0" "noanim,selection" "blur,vicinae" "ignorealpha 0, vicinae" "noanim, vicinae"]; general = { gaps_in = 1; gaps_out = pkgs.lib.mkDefault 5; @@ -223,7 +210,7 @@ in { "f[1], gapsout:0, gapsin:0" ]; bindr = [ - "$mainMod, $mainMod, exec, pkill rofi || ${rofi} -show drun" + "$mainMod, $mainMod, exec, vicinae toggle" ]; bindm = [ "$mainMod, mouse:272, movewindow" @@ -247,11 +234,8 @@ in { "$mainMod, F, togglefloating," "$mainMod, SPACE, togglesplit, # dwindle" "CONTROL_L ALT_L, L, exec, ${pkgs.hyprlock}/bin/hyprlock" - ''$mainMod, C, exec, cliphist list | awk '{print $0, "\0icon\x1fcom.github.davidmhewitt.clipped"; }' | ${rofi} -dmenu -display-columns 2 | cliphist decode | wl-copy'' - "$mainMod, Y, exec, ${rofi-ykman}/bin/rofi-ykman" - "$mainMod, N, exec, ${./files/rofi-ssh.sh}" - "$mainMod, Escape, exec, ${rofi} -show power-menu -modi power-menu:${ ./files/rofi-power-menu.sh }" - + "$mainMod, C, exec, vicinae vicinae://extensions/vicinae/clipboard/history" + "$mainMod, W, exec, vicinae vicinae://extensions/vicinae/wm/switch-windows" ",XF86MonBrightnessUp, exec, ${pkgs.brightnessctl}/bin/brightnessctl set +10%" ",XF86MonBrightnessDown, exec, ${pkgs.brightnessctl}/bin/brightnessctl set 10%-" ",XF86AudioRaiseVolume, exec, ${wpctl} set-volume @DEFAULT_AUDIO_SINK@ 10%+ --limit 1.0" diff --git a/home/utils/desktop.nix b/home/utils/desktop.nix index c5ffc6d..1bd5ec0 100644 --- a/home/utils/desktop.nix +++ b/home/utils/desktop.nix @@ -6,6 +6,7 @@ (import ../hyprland { inherit inputs pkgs; }) (import ../ags { inherit inputs pkgs; }) ../rofi + ../vicinae ../alacritty ../foot ../kitty @@ -78,8 +79,6 @@ package = pkgs.adwaita-icon-theme; }; - services.cliphist = { enable = true; }; - services.mpris-proxy.enable = true; # Bluetooth media control xdg.mimeApps = { diff --git a/home/vicinae/default.nix b/home/vicinae/default.nix new file mode 100644 index 0000000..89642b3 --- /dev/null +++ b/home/vicinae/default.nix @@ -0,0 +1,10 @@ +{ inputs, ... }: # Add inputs here +{ + # Import the module definition here + imports = [ inputs.vicinae.homeManagerModules.default ]; + + services.vicinae = { + enable = true; + autoStart = true; + }; +}