Compare commits

...
Sign in to create a new pull request.

13 commits

Author SHA1 Message Date
23a19015af
[wireshark] Add module 2025-12-04 10:30:43 +01:00
0b2685f9c0
[NixTop] Add vmware 2025-12-04 10:30:03 +01:00
ee26741ec2
Upgrade to 25.11 2025-12-04 10:28:40 +01:00
b9e72e8f92
[openvpn] Add client 2025-12-02 15:56:23 +01:00
2a8049a774
nixos/flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/3b955f5f0a942f9f60cdc9cacb7844335d0f21c3?narHash=sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA%3D' (2025-09-21)
  → 'github:nix-community/home-manager/44831a7eaba4360fb81f2acc5ea6de5fde90aaa3?narHash=sha256-WHkdBlw6oyxXIra/vQPYLtqY%2B3G8dUVZM8bEXk0t8x4%3D' (2025-11-24)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/4c8cdd5b1a630e8f72c9dd9bf582b1afb3127d2c?narHash=sha256-LBVOyaH6NFzQ3X/c6vfMZ9k4SV2ofhpxeL9YnhHNJQQ%3D' (2025-11-16)
  → 'github:NixOS/nixpkgs/1c8ba8d3f7634acac4a2094eef7c32ad9106532c?narHash=sha256-dY9qLD0H0zOUgU3vWacPY6Qc421BeQAfm8kBuBtPVE0%3D' (2025-11-24)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/50a96edd8d0db6cc8db57dab6bb6d6ee1f3dc49a?narHash=sha256-Y7TDFPK4GlqrKrivOcsHG8xSGqQx3A6c%2Bi7novT85Uk%3D' (2025-11-16)
  → 'github:NixOS/nixpkgs/5ae3b07d8d6527c42f17c876e404993199144b6a?narHash=sha256-6eeL1YPcY1MV3DDStIDIdy/zZCDKgHdkCmsrLJFiZf0%3D' (2025-11-24)
• Updated input 'sops-nix':
    'github:Mic92/sops-nix/3f66a7fb9626a9a9c077612ef10a0ce396286c7d?narHash=sha256-n5xDOeNN%2BsmocQp3EMIc11IzBlR9wvvTIJZeL0g33Fs%3D' (2025-11-17)
  → 'github:Mic92/sops-nix/c482a1c1bbe030be6688ed7dc84f7213f304f1ec?narHash=sha256-1m84V2ROwNEbqeS9t37/mkry23GBhfMt8qb6aHHmjuc%3D' (2025-11-24)
• Updated input 'zen-browser':
    'github:youwen5/zen-browser-flake/5d002fcacbc5423090f2bba19818adda471fe0c8?narHash=sha256-hzLnXm0v1snDENpF3KvUQBO8XOAh45qg%2By4D46K3rz8%3D' (2025-11-17)
  → 'github:youwen5/zen-browser-flake/482827614f573a2ec9dc17c8401889e536f0e7c1?narHash=sha256-E2rAiWTdrjSAciWELleI/fHoryzfxvA%2BujvqZy3u2QA%3D' (2025-11-25)
2025-11-26 09:18:48 +01:00
e92c0b8f45
[hypr] feat: New modes 2025-11-26 09:12:47 +01:00
1de1c15acc
[hypr] fix: Remove hy3 path hardcoding 2025-11-25 14:39:38 +01:00
d24e46da9e
[openrgb] fix: Also add pkg 2025-11-18 19:47:40 +01:00
61f8b8127c
[nightlight] Add own queue 2025-11-18 19:44:49 +01:00
d6acc728e9
nixos/flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/daf6dc47aa4b44791372d6139ab7b25269184d55?narHash=sha256-wxX7u6D2rpkJLWkZ2E932SIvDJW8%2BON/0Yy8%2Ba5vsDU%3D' (2025-10-27)
  → 'github:NixOS/nixpkgs/4c8cdd5b1a630e8f72c9dd9bf582b1afb3127d2c?narHash=sha256-LBVOyaH6NFzQ3X/c6vfMZ9k4SV2ofhpxeL9YnhHNJQQ%3D' (2025-11-16)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/08dacfca559e1d7da38f3cf05f1f45ee9bfd213c?narHash=sha256-o9KF3DJL7g7iYMZq9SWgfS1BFlNbsm6xplRjVlOCkXI%3D' (2025-10-28)
  → 'github:NixOS/nixpkgs/50a96edd8d0db6cc8db57dab6bb6d6ee1f3dc49a?narHash=sha256-Y7TDFPK4GlqrKrivOcsHG8xSGqQx3A6c%2Bi7novT85Uk%3D' (2025-11-16)
• Updated input 'sops-nix':
    'github:Mic92/sops-nix/5a7d18b5c55642df5c432aadb757140edfeb70b3?narHash=sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY%3D' (2025-10-20)
  → 'github:Mic92/sops-nix/3f66a7fb9626a9a9c077612ef10a0ce396286c7d?narHash=sha256-n5xDOeNN%2BsmocQp3EMIc11IzBlR9wvvTIJZeL0g33Fs%3D' (2025-11-17)
• Updated input 'zen-browser':
    'github:youwen5/zen-browser-flake/5355c0dc6857a2aa34b126fb4a93a454ed702f52?narHash=sha256-ntnfAAqSuXI/%2BuqXAWUjbY5arB7sRK9cpgFbHbCZgK8%3D' (2025-10-31)
  → 'github:youwen5/zen-browser-flake/5d002fcacbc5423090f2bba19818adda471fe0c8?narHash=sha256-hzLnXm0v1snDENpF3KvUQBO8XOAh45qg%2By4D46K3rz8%3D' (2025-11-17)
2025-11-18 18:08:02 +01:00
8923862edc
[waybar] Rework nightlight 2025-11-08 21:49:03 +01:00
c6c570dc1c
nixos/flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/33c6dca0c0cb31d6addcd34e90a63ad61826b28c?narHash=sha256-PXwG0TM7Ek87DNx4LbGWuD93PbFeKAJs4FfALtp7Wo0%3D' (2025-10-19)
  → 'github:NixOS/nixpkgs/daf6dc47aa4b44791372d6139ab7b25269184d55?narHash=sha256-wxX7u6D2rpkJLWkZ2E932SIvDJW8%2BON/0Yy8%2Ba5vsDU%3D' (2025-10-27)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/5e2a59a5b1a82f89f2c7e598302a9cacebb72a67?narHash=sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs%3D' (2025-10-19)
  → 'github:NixOS/nixpkgs/08dacfca559e1d7da38f3cf05f1f45ee9bfd213c?narHash=sha256-o9KF3DJL7g7iYMZq9SWgfS1BFlNbsm6xplRjVlOCkXI%3D' (2025-10-28)
• Updated input 'zen-browser':
    'github:youwen5/zen-browser-flake/e7d9fefd8665be5d4c77466140f21a15f6d29e93?narHash=sha256-d01CGcdNlsqIn4ncGCWHM0Velnii/Ggef1iybQvEOfc%3D' (2025-10-22)
  → 'github:youwen5/zen-browser-flake/5355c0dc6857a2aa34b126fb4a93a454ed702f52?narHash=sha256-ntnfAAqSuXI/%2BuqXAWUjbY5arB7sRK9cpgFbHbCZgK8%3D' (2025-10-31)
2025-10-31 09:09:23 +01:00
b73c93a31e
Tweaks 2025-10-30 19:57:54 +01:00
23 changed files with 297 additions and 106 deletions

51
nixos/flake.lock generated
View file

@ -25,16 +25,16 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1758463745, "lastModified": 1764736872,
"narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=", "narHash": "sha256-4mqLegNQeD54X7enm6EI9aNWl6CaIfyhl5PaYoGYwqk=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3", "rev": "3366918730bb6b699395a9d237397f1d710a94b3",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-25.05", "ref": "release-25.11",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
@ -62,26 +62,26 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1760862643, "lastModified": 1764522689,
"narHash": "sha256-PXwG0TM7Ek87DNx4LbGWuD93PbFeKAJs4FfALtp7Wo0=", "narHash": "sha256-SqUuBFjhl/kpDiVaKLQBoD8TLD+/cTUzzgVFoaHrkqY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "33c6dca0c0cb31d6addcd34e90a63ad61826b28c", "rev": "8bb5646e0bed5dbd3ab08c7a7cc15b75ab4e1d0f",
"type": "github" "type": "github"
}, },
"original": { "original": {
"id": "nixpkgs", "id": "nixpkgs",
"ref": "nixos-25.05", "ref": "nixos-25.11",
"type": "indirect" "type": "indirect"
} }
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1760878510, "lastModified": 1764517877,
"narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=", "narHash": "sha256-pp3uT4hHijIC8JUK5MEqeAWmParJrgBVzHLNfJDZxg4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67", "rev": "2d293cbfa5a793b4c50d17c05ef9e385b90edf6c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -163,8 +163,7 @@
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs-unstable": "nixpkgs-unstable",
"openconnect-sso": "openconnect-sso", "openconnect-sso": "openconnect-sso",
"sops-nix": "sops-nix", "sops-nix": "sops-nix",
"utils": "utils", "utils": "utils"
"zen-browser": "zen-browser"
} }
}, },
"sops-nix": { "sops-nix": {
@ -174,11 +173,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1760998189, "lastModified": 1764483358,
"narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=", "narHash": "sha256-EyyvCzXoHrbL467YSsQBTWWg4sR96MH1sPpKoSOelB4=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3", "rev": "5aca6ff67264321d47856a2ed183729271107c9c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -257,26 +256,6 @@
"repo": "flake-utils-plus", "repo": "flake-utils-plus",
"type": "github" "type": "github"
} }
},
"zen-browser": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1761105987,
"narHash": "sha256-d01CGcdNlsqIn4ncGCWHM0Velnii/Ggef1iybQvEOfc=",
"owner": "youwen5",
"repo": "zen-browser-flake",
"rev": "e7d9fefd8665be5d4c77466140f21a15f6d29e93",
"type": "github"
},
"original": {
"owner": "youwen5",
"repo": "zen-browser-flake",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View file

@ -2,12 +2,12 @@
description = "System configuration of my machines using flakes"; description = "System configuration of my machines using flakes";
inputs = { inputs = {
nixpkgs.url = "nixpkgs/nixos-25.05"; nixpkgs.url = "nixpkgs/nixos-25.11";
nixpkgs-unstable.url = "nixpkgs/nixos-unstable"; nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils"; flake-utils.url = "github:numtide/flake-utils";
home-manager = { home-manager = {
url = "github:nix-community/home-manager/release-25.05"; url = "github:nix-community/home-manager/release-25.11";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
openconnect-sso = { openconnect-sso = {
@ -25,15 +25,11 @@
url = "github:gytis-ivaskevicius/flake-utils-plus"; url = "github:gytis-ivaskevicius/flake-utils-plus";
inputs.flake-utils.follows = "flake-utils"; inputs.flake-utils.follows = "flake-utils";
}; };
zen-browser = {
url = "github:youwen5/zen-browser-flake";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = inputs@{ outputs = inputs@{
self, nixpkgs, nixpkgs-unstable, self, nixpkgs, nixpkgs-unstable,
flake-utils, home-manager, openconnect-sso, sops-nix, utils, zen-browser, flake-utils, home-manager, openconnect-sso, sops-nix, utils,
... }: ... }:
let let
system = utils.lib.system.x86_64-linux; system = utils.lib.system.x86_64-linux;
@ -47,6 +43,7 @@
"vista-fonts" "vista-fonts"
"intel-ocl" "intel-ocl"
"libfprint-2-tod1-broadcom" "libfprint-2-tod1-broadcom"
"vmware-workstation"
]; ];
in in
utils.lib.mkFlake { utils.lib.mkFlake {

View file

@ -20,6 +20,7 @@
networking = { networking = {
networkmanager.enable = true; networkmanager.enable = true;
openconnect-sso.enable = true; openconnect-sso.enable = true;
openvpn.enable = true;
}; };
nix = { nix = {

View file

@ -38,6 +38,7 @@
home-manager.enable = true; home-manager.enable = true;
sops.enable = true; sops.enable = true;
ssh.enable = true; ssh.enable = true;
wireshark.enable = true;
}; };
services = { services = {
@ -94,6 +95,8 @@
powerOnBoot = false; powerOnBoot = false;
}; };
nix.settings.download-buffer-size = 500 * 1024 * 1024; # 500 MiB
programs.zsh.enable = true; programs.zsh.enable = true;
services = { services = {
@ -111,17 +114,17 @@
}; };
}; };
logind = { logind.settings.Login = {
# Handle the laptop lid switch as follows: # Handle the laptop lid switch as follows:
lidSwitch = "hybrid-sleep"; HandleLidSwitch = "hybrid-sleep";
lidSwitchExternalPower = "lock"; HandleLidSwitchExternalPower = "lock";
lidSwitchDocked = "ignore"; HandleLidSwitchDocked = "ignore";
# Handle the power key # Handle the power key
powerKey = "suspend"; HandlePowerKey = "suspend";
HandlePowerKeyLongPress = "poweroff";
}; };
power-profiles-daemon.enable = false; power-profiles-daemon.enable = false;
smartd.enable = true; smartd.enable = true;
@ -140,9 +143,9 @@
libinput.enable = true; libinput.enable = true;
}; };
networking = { virtualisation.vmware.host.enable = true;
hostName = "Tibo-NixTop"; # Define your hostname.
}; networking.hostName = "Tibo-NixTop"; # Define your hostname.
# Set your time zone. # Set your time zone.
time.timeZone = "Europe/Brussels"; time.timeZone = "Europe/Brussels";
@ -159,12 +162,6 @@
useXkbConfig = true; # use xkb.options in tty. useXkbConfig = true; # use xkb.options in tty.
}; };
# Enable CUPS to print documents.
# services.printing.enable = true;
# Enable touchpad support (enabled default in most desktopManager).
# services.libinput.enable = true;
# List packages installed in system profile. # List packages installed in system profile.
# You can use https://search.nixos.org/ to find more packages (and options). # You can use https://search.nixos.org/ to find more packages (and options).
environment = { environment = {
@ -198,6 +195,5 @@
# #
# For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
system.stateVersion = "25.05"; # Did you read the comment? system.stateVersion = "25.05"; # Did you read the comment?
} }

View file

@ -14,5 +14,7 @@ in {
]; ];
programs.waybar.enable = true; programs.waybar.enable = true;
services.atd.enable = true; # Command scheduler
}; };
} }

View file

@ -41,8 +41,8 @@ in {
extraPackages = with pkgs; [ extraPackages = with pkgs; [
intel-ocl intel-ocl
intel-compute-runtime intel-compute-runtime
intel-graphics-compiler
opencl-clhpp opencl-clhpp
opencl-clang
opencl-headers opencl-headers
ocl-icd ocl-icd
]; ];

View file

@ -2,5 +2,6 @@
imports = [ imports = [
./networkmanager ./networkmanager
./openconnect-sso ./openconnect-sso
./openvpn
]; ];
} }

View file

@ -0,0 +1,14 @@
{ config, lib, ... }:
let
cfg = config.sisyphus.networking.openvpn;
in {
options.sisyphus.networking.openvpn.enable = lib.mkEnableOption "OpenVPN client";
config = lib.mkIf cfg.enable {
programs.openvpn3.enable = true;
# https://github.com/NixOS/nixpkgs/issues/379074
services.resolved.enable = true;
};
}

View file

@ -5,5 +5,6 @@
./sops ./sops
./spotify-adblock ./spotify-adblock
./ssh ./ssh
./wireshark
]; ];
} }

View file

@ -0,0 +1,23 @@
{ config, lib, pkgs, ... }:
let
cfg = config.sisyphus.programs.wireshark;
in {
options.sisyphus.programs.wireshark.enable = lib.mkEnableOption "Wireshark";
config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [
wireshark
];
programs.wireshark = {
enable = true;
dumpcap.enable = true;
usbmon.enable = false;
};
sisyphus.users.wantedGroups = [
"wireshark"
];
};
}

View file

@ -6,18 +6,24 @@ in {
options.sisyphus.services.openrgb.enable = lib.mkEnableOption "OpenRGB"; options.sisyphus.services.openrgb.enable = lib.mkEnableOption "OpenRGB";
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
services.udev.packages = with pkgs; [
openrgb
];
boot.kernelModules = [ "i2c-dev" ]; boot.kernelModules = [ "i2c-dev" ];
environment.systemPackages = with pkgs; [
openrgb-with-all-plugins
];
hardware.i2c.enable = true; hardware.i2c.enable = true;
services.hardware.openrgb = { services = {
hardware.openrgb = {
enable = true; enable = true;
package = pkgs.openrgb-with-all-plugins; package = pkgs.openrgb-with-all-plugins;
motherboard = "intel"; motherboard = "intel";
}; };
udev.packages = with pkgs; [
openrgb
];
};
}; };
} }

View file

@ -1,4 +1,4 @@
{ config, inputs, lib, pkgs, pkgs-unstable, ... }: { config, lib, pkgs, pkgs-unstable, ... }:
let let
cfg = config.sisyphus.users.tdpeuter; cfg = config.sisyphus.users.tdpeuter;
@ -46,9 +46,10 @@ in {
gh # GitHub CLI tool gh # GitHub CLI tool
glow # Terminal Markdown renderer glow # Terminal Markdown renderer
icosystem # Personal icon theme icosystem # Personal icon theme
jellyfin-media-player #jellyfin-media-player
libreoffice-fresh # Office tools libreoffice-fresh # Office tools
librewolf # Internet browser librewolf # Internet browser
logseq # Note taking
mpv # Media player mpv # Media player
nextcloud-client nextcloud-client
nsxiv # Lightweight image viewer nsxiv # Lightweight image viewer
@ -73,10 +74,7 @@ in {
# TODO Move to devshells # TODO Move to devshells
# ruff pylint # Python # ruff pylint # Python
]) ++ (with pkgs-unstable; [ ]) ++ (with pkgs-unstable; [
logseq # Note taking ]);
]) ++ [
inputs.zen-browser.packages.${pkgs.system}.default
];
}; };
fonts.packages = with pkgs; [ fonts.packages = with pkgs; [
@ -87,9 +85,8 @@ in {
noto-fonts # Dependency of Zellij config noto-fonts # Dependency of Zellij config
noto-fonts-cjk-sans # Dependency of Zellij config noto-fonts-cjk-sans # Dependency of Zellij config
noto-fonts-cjk-serif # Dependency of Zellij config noto-fonts-cjk-serif # Dependency of Zellij config
noto-fonts-emoji
noto-fonts-color-emoji # Emoji's! noto-fonts-color-emoji # Emoji's!
vistafonts # Microsoft fonts vista-fonts # Microsoft fonts
]; ];
sisyphus = { sisyphus = {

View file

@ -37,6 +37,12 @@ in {
recursive = true; recursive = true;
source = ../../../stow/hyprland/.config/hypr; source = ../../../stow/hyprland/.config/hypr;
}; };
".config/hypr/hy3-plugin.conf" = {
inherit (config.sisyphus.desktop.hyprland) enable;
text = ''
plugin = ${pkgs.hyprlandPlugins.hy3}/lib/libhy3.so
'';
};
".config/kitty" = { ".config/kitty" = {
enable = false; enable = false;
recursive = true; recursive = true;

View file

@ -1,15 +0,0 @@
#!/usr/bin/env bash
# Script to disable for an hour or immediately continue wlsunset. 'Toggle'
# Check if wlsunset is still running
pid=$(pgrep wlsunset)
if [[ -z ${pid} ]] ; then
# Start wlsunset right away.
wlsunset -l 50.50 -L 4.00 -t 3000 -T 6500 &
else
# Currently stop wlsunset but restart in an hour.
kill ${pid}
notify-send 'Stopping sunset' 'Restarting in an hour'
at now +1 hours -f "${0}"
fi

52
scripts/toggle-nightlight.sh Executable file
View file

@ -0,0 +1,52 @@
#!/usr/bin/env bash
# Script to disable for an hour or immediately continue wlsunset. 'Toggle'
# Queue for at, check man page for options
ATQUEUE='T'
# Get current state
pid=$(pgrep wlsunset)
while getopts ":g" option; do
case "${option}" in
g)
if [[ -z "${pid}" ]]; then
state='active'
tooltip='Turn off nightlight'
class='activated'
else
state='inactive'
tooltip='Turn on nightlight'
class='none'
fi
printf '{"alt": "%s", "tooltip": "%s", "class": "%s" }' \
"${state}" "${tooltip}" "${class}"
exit 0
;;
*)
echo 'Invalid option'
exit 1
;;
esac
done
# Toggle
if [[ -z ${pid} ]] ; then
# Clear queue
for job in $(at -l -q "${ATQUEUE}" | cut -f1); do
at -r "${job}"
done
if [ "$( command -v wlsunset )" ]; then
notify-send 'Starting nightlight'
wlsunset -l 50.50 -L 4.00 -t 3000 -T 6500 &
else
notify-send 'Nightlight is not available'
exit 1
fi
else
# Currently stop wlsunset but restart in an hour.
kill ${pid}
notify-send 'Stopping nightlight' 'Restarting in an hour'
at now +1 hours -f "${0}" -q "${ATQUEUE}"
fi

View file

@ -1,6 +1,9 @@
#
# ~/.config/hypr/hy3.conf
#
# TODO Do not hardcode this path # Load the plugin. File should contain `plugin = /path/to/lib/libhy3.so`
plugin = /nix/store/afivj8v5kfdsadxs4pa45vh0y65s3ajm-hy3-hl0.49.0/lib/libhy3.so source = /home/tdpeuter/.config/hypr/hy3-plugin.conf
general:layout = hy3 general:layout = hy3

View file

@ -85,9 +85,6 @@ animations {
} }
gestures { gestures {
workspace_swipe = true
workspace_swipe_fingers = 3
workspace_swipe_min_fingers = false
workspace_swipe_distance = 300 workspace_swipe_distance = 300
workspace_swipe_invert = true workspace_swipe_invert = true
workspace_swipe_min_speed_to_force = 30 workspace_swipe_min_speed_to_force = 30
@ -103,6 +100,12 @@ gestures {
workspace_swipe_forever = true workspace_swipe_forever = true
workspace_swipe_use_r = false workspace_swipe_use_r = false
# hyprlang if !HYPRLAND_V_0_53
workspace_swipe = true
workspace_swipe_fingers = 3
workspace_swipe_min_fingers = false
# hyprlang endif
} }
group { group {
@ -258,6 +261,10 @@ env = XCURSOR_SIZE,24
# SHIFT CAPS CTRL/CONTROL ALT MOD2 MOD3 SUPER/WIN/LOGO/MOD4 MOD5 # SHIFT CAPS CTRL/CONTROL ALT MOD2 MOD3 SUPER/WIN/LOGO/MOD4 MOD5
$flag = MOD4 $flag = MOD4
$LMB = mouse:272
$RMB = mouse:273
$MMB = mouse:274
$left = h $left = h
$down = j $down = j
$up = k $up = k

View file

@ -56,6 +56,10 @@ bind = $flag+Shift, s, settiled
bind = $flag, F11, fullscreen, 1 bind = $flag, F11, fullscreen, 1
bind = $flag+Shift, F11, fullscreen, 0 bind = $flag+Shift, F11, fullscreen, 0
bindm = $flag, $LMB, movewindow
bindm = $flag, $RMB, resizewindow
bindc = $flag, $LMB, togglefloating
# Workspaces # Workspaces
$ws1 = 1 $ws1 = 1

View file

@ -1,3 +1,62 @@
# Resizing
$mode_resize = Resize
bind = $flag, R, submap, $mode_resize
submap = $mode_resize
bind = , F, togglefloating
binde = , $right, resizeactive, 10 0
binde = , $up, resizeactive, 0 -10
binde = , $left, resizeactive, -10 0
binde = , $down, resizeactive, 0 10
binde = , Right , resizeactive, 10 0
binde = , Up, resizeactive, 0 -10
binde = , Left, resizeactive, -10 0
binde = , Down, resizeactive, 0 10
binde = Shift, $right, resizeactive, 50 0
binde = Shift, $up, resizeactive, 0 -50
binde = Shift, $left, resizeactive, -50 0
binde = Shift, $down, resizeactive, 0 50
binde = Shift, Right, resizeactive, 50 0
binde = Shift, Up, resizeactive, 0 -50
binde = Shift, Left, resizeactive, -50 0
binde = Shift, Down, resizeactive, 0 50
binde = $flag, $right, moveactive, 10 0
binde = $flag, $up, moveactive, 0 -10
binde = $flag, $left, moveactive, -10 0
binde = $flag, $down, moveactive, 0 10
binde = $flag, Right, moveactive, 10 0
binde = $flag, Up, moveactive, 0 -10
binde = $flag, Left, moveactive, -10 0
binde = $flag, Down, moveactive, 0 10
binde = $flag+Shift, $right, moveactive, 50 0
binde = $flag+Shift, $up, moveactive, 0 -50
binde = $flag+Shift, $left, moveactive, -50 0
binde = $flag+Shift, $down, moveactive, 0 50
binde = $flag+Shift, Right , moveactive, 50 0
binde = $flag+Shift, Up, moveactive, 0 -50
binde = $flag+Shift, Left, moveactive, -50 0
binde = $flag+Shift, Down, moveactive, 0 50
# hyprlang if HYPRLAND_V_0_53
#gesture = 3, swipe, move
#gesture = 4, swipe, resize
# hyprlang endif
bind = $flag, R, submap, reset
bind = , Escape, submap, reset
bind = , Return, submap, reset
submap = reset
# System actions # System actions
$mode_system = System (l)ock, (s)leep, (h)ibernate, (r)eboot, (Shift+s)hutdown $mode_system = System (l)ock, (s)leep, (h)ibernate, (r)eboot, (Shift+s)hutdown
bind = Ctrl+Alt, Delete, submap, $mode_system bind = Ctrl+Alt, Delete, submap, $mode_system
@ -36,3 +95,11 @@ bind = , Return, submap, reset
submap = reset submap = reset
# Ignore (all) keybinds. Useful when working with Virtual Machines.
$mode_ignore=Ignore keybinds - Press Control+Alt+Insert to escape.
bind = Ctrl+Alt, Insert, submap, $mode_ignore
submap = $mode_ignore
bind = Ctrl+Alt, Insert, submap, reset
submap = reset

View file

@ -25,8 +25,7 @@ set smarttab
set tabstop=4 set tabstop=4
set title set title
set wildignore=*.docx,*.jpg,*.png,*.gif,*.pdf,*.pyc,*.exe,*.flv,*.img,*.xlsx set wildignore=*.docx,*.jpg,*.png,*.gif,*.pdf,*.pyc,*.exe,*.flv,*.img,*.xlsx
"" Show suggestions on another line instead of inplace set wildmenu "" Show suggestions on another line instead of inplace
set wildmenu
syntax enable syntax enable

View file

@ -51,6 +51,7 @@
"privacy", "privacy",
"tray", "tray",
"group/control-center", "group/control-center",
"group/display",
"group/network", "group/network",
"pulseaudio", "pulseaudio",
"group/power", "group/power",

View file

@ -1,4 +1,15 @@
{ {
"backlight": {
"device": "intel_backlight",
"format": "{percent}% {icon}",
"format-icons": [
"\uf111", /* */
"\uf185" /* */
],
"on-click": "brightnessctl -sq set 0",
"on-click-right": "wl-mirror $(hyprctl monitors -j | jq --raw-output '.[] | select(.focused) | .name')"
},
"battery": { "battery": {
"format": "{capacity}% {icon}", "format": "{capacity}% {icon}",
"format-alt": "{time} {icon}", "format-alt": "{time} {icon}",
@ -71,6 +82,12 @@
"tooltip": false "tooltip": false
}, },
"custom/display": {
"format": "\ue163", /* */
"tooltip": false,
"on-click": "wdisplays"
},
"custom/meta": { "custom/meta": {
"format": "\uf17c", /* */ "format": "\uf17c", /* */
"tooltip": false, "tooltip": false,
@ -134,6 +151,19 @@
"tooltip": true "tooltip": true
}, },
"custom/toggle-nightlight": {
"exec": "bash ${SCRIPT_DIR}/toggle-nightlight.sh -g",
"interval": 60,
"return-type": "json",
"on-click": "bash ${SCRIPT_DIR}/toggle-nightlight.sh",
"format": "{icon}",
"format-icons": {
"active": "\uf186", /* */
"inactive": "\uf0eb" /* */
},
"tooltip": true
},
"custom/toggle-notifications": { "custom/toggle-notifications": {
"exec": "bash ${SCRIPT_DIR}/toggle-notifications.sh -g", "exec": "bash ${SCRIPT_DIR}/toggle-notifications.sh -g",
"interval": 60, "interval": 60,
@ -163,12 +193,31 @@
"group/control-center": { "group/control-center": {
"orientation": "inherit", "orientation": "inherit",
"modules": [ "modules": [
/* Preview */
"custom/control-center", "custom/control-center",
/* Left-most */
"group/language", "group/language",
/* "hyprland/language", "sway/language", */ "custom/toggle-notifications"
"custom/toggle-notifications", /* Right-most */
],
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false,
"children-class": "drawer-child"
}
},
"group/display": {
"orientation": "inherit",
"modules": [
/* Preview */
"custom/display",
/* Most-left */
"idle_inhibitor",
"custom/toggle-nightlight",
"custom/toggle-light-dark", "custom/toggle-light-dark",
"bluetooth" "backlight"
/* Most-right */
], ],
"drawer": { "drawer": {
"transition-duration": 500, "transition-duration": 500,
@ -199,6 +248,7 @@
/* Preview */ /* Preview */
"network", "network",
/* Most-left */ /* Most-left */
"bluetooth",
"custom/toggle-tailscale" "custom/toggle-tailscale"
/* Most-right */ /* Most-right */
], ],
@ -220,8 +270,7 @@
"custom/system-hibernate", "custom/system-hibernate",
"custom/system-sleep", "custom/system-sleep",
"custom/system-lock", "custom/system-lock",
"power-profiles-daemon", "power-profiles-daemon"
"idle_inhibitor"
/* Most-right */ /* Most-right */
], ],
"drawer": { "drawer": {

View file

@ -82,12 +82,13 @@ window#waybar {
#privacy, #privacy,
#privacy-item, #privacy-item,
#privacy-item.screenshare, #privacy-item.screenshare,
#privacy-item.audio-in { #privacy-item.audio-in,
#privacy-item.audio-out {
background-color: @safety; background-color: @safety;
} }
#privacy-item.screenshare { #privacy-item {
background-color: #000000; padding: 0;
} }
#pulseaudio.muted { #pulseaudio.muted {