Compare commits
378 Commits
79c559eb47
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 5a7b719a20 | |||
| 805a503259 | |||
| 7362d6d60b | |||
| 3044b20e00 | |||
| e1f9b4cb18 | |||
| 31687e7be7 | |||
| 289db855b0 | |||
| 3432aa07d4 | |||
| 69f02224f1 | |||
| fc6b0e8adc | |||
| 6ac620dd76 | |||
| e976e189e3 | |||
| c5a15e1ed4 | |||
| 6ff59a990b | |||
| 93b437f78a | |||
| 5d98c8f325 | |||
| c7aa148a67 | |||
| 47a6f1ce30 | |||
| 8e36702732 | |||
| ebb03eb278 | |||
| 3106055e4b | |||
| 63837791fb | |||
| 9c4df89324 | |||
| dc7eb3a11a | |||
| 6fd0fc4cd4 | |||
| ef17679446 | |||
| 0bb5e3c9bd | |||
| 17d3f13d12 | |||
| 4123c33731 | |||
| 985ae948d7 | |||
| 4c6a4ec839 | |||
| 1d1b18ec9c | |||
| a32a776778 | |||
| 2ba973cdb3 | |||
| 53f6843356 | |||
| 23b0c1c3f6 | |||
| b566595ae8 | |||
| 49ff649765 | |||
| 4291bc2da0 | |||
| 8f4b14cd12 | |||
| 0e25ad519b | |||
| 11f1da1b75 | |||
| 663117b352 | |||
| 9b12730dba | |||
| 652dbf831f | |||
| 3fd2ec4132 | |||
| f8ba6b9ca1 | |||
| 6c7cf81efe | |||
| 5165e9b7df | |||
| 18cf266828 | |||
| 0950197416 | |||
| b08966eaeb | |||
| 75f4969882 | |||
| 6b466a626f | |||
| fdad1d166b | |||
| 56ab6eac72 | |||
| 78898f78dd | |||
| 6a0f7502aa | |||
| 10210c9df0 | |||
| 2736934ce4 | |||
| f3b39f8e9c | |||
| f8aa4870a4 | |||
| 9fb9a3fbd2 | |||
| bcee95d0a1 | |||
| c7d1edc35e | |||
| 0ccbc3a5c5 | |||
| a245aa223d | |||
| bca90e6f34 | |||
| f8bf8f54f1 | |||
| 8e82977bc9 | |||
| 8447a9b596 | |||
| 7416c8adb6 | |||
| c017a00f81 | |||
| 373feab3cf | |||
| 3aeb7d5192 | |||
| 2d5a2c2976 | |||
| 391166c034 | |||
| c7f0f46908 | |||
| dcf7d59ad2 | |||
| 9ade89f82c | |||
| 3e9b1805ea | |||
| 1225ed4f9b | |||
| 339d53823c | |||
| 28c242282e | |||
| 190f03410d | |||
| 2337b36319 | |||
| defeb49847 | |||
| 0917467acf | |||
| e75067946f | |||
| 94cd41b3e7 | |||
| 8fae55ea64 | |||
| 64fc569836 | |||
| 415b1df455 | |||
| b03354ec37 | |||
| b74e017bbf | |||
| f43715f201 | |||
| 98a7800c37 | |||
| 9468f2653b | |||
| 8d46e2ded6 | |||
| 704784ef74 | |||
| 03b3734aa8 | |||
| c1c5322563 | |||
| ea25c798bd | |||
| 8f23b8ba4f | |||
| 9d6becf5a0 | |||
| f565412974 | |||
| d6a077b2ea | |||
| e89e3b322f | |||
| ba7de29921 | |||
| a7dc5bd6f8 | |||
| c83dcd8de5 | |||
| eeb5ff9de0 | |||
| 7679734df4 | |||
| 963b975b92 | |||
| bcc4d9081e | |||
| 7c78fee0a1 | |||
| a5bf0d816e | |||
| c9ad2d3d89 | |||
| c321cedd37 | |||
| b28a82f90f | |||
| 480f214cdf | |||
| 5d1ce337b1 | |||
| feed32000f | |||
| 390ac245db | |||
| eacbf6044b | |||
| 46b324d8d7 | |||
| 0c89582f00 | |||
| 0c20194115 | |||
| 04f955242f | |||
| ebb5d5ef6b | |||
| 78990eed5c | |||
| 59be47bf32 | |||
| abe2405b27 | |||
| 59f2141768 | |||
| 583bdd49c1 | |||
| 4ee2036fba | |||
| d2e1416013 | |||
| 16378146d0 | |||
| f988762015 | |||
| 23689dd1e1 | |||
| 21695419ee | |||
| 4b2d49efa9 | |||
| 38b12c196a | |||
| d92bce24f5 | |||
| 710b0348a1 | |||
| 32a20bfa91 | |||
| 4c1e19c8c2 | |||
| ecceaa5307 | |||
| 0a68e25533 | |||
| e0809cec70 | |||
| 278845d900 | |||
| d795e633a5 | |||
| 0ed2dc4fde | |||
| 6496af887e | |||
| 3f3bb5a71b | |||
| 45de11a4a5 | |||
| a0e90643dd | |||
| a49823141b | |||
| ca5f232d47 | |||
| 11dbd5db04 | |||
| 94629554bf | |||
| 61329d967a | |||
| 53fbd4ea92 | |||
| 76f0ccb466 | |||
| 153abf0c49 | |||
| 075a058b06 | |||
| 16dc9685a7 | |||
| 36d39f7a44 | |||
| 08d978103f | |||
| bb0d3f51b8 | |||
| 1468b90ae9 | |||
| 58392825fc | |||
| cdb73706a7 | |||
| 259bd54914 | |||
| 000ee1cca4 | |||
| 522f2a25c9 | |||
| c364f62ea1 | |||
| 04e522548a | |||
| 91f37618e2 | |||
| 3d646d5895 | |||
| 6581faa392 | |||
| 711832dff2 | |||
| 82b041c872 | |||
| fc4ea6047d | |||
| 5a058db718 | |||
| 306487df72 | |||
| 8862e8fa15 | |||
| 07ebec86c9 | |||
| b96ec1fc5f | |||
| 9ebd0ebdae | |||
| 0f32aa31c3 | |||
| 9d662211c9 | |||
| bbf327ca48 | |||
| 7c32580e95 | |||
| ccea6cf946 | |||
| 3992caf295 | |||
| 8c2a134545 | |||
| 7528c9791e | |||
| 745ff2426c | |||
| d598fbf686 | |||
| 5f247b31d8 | |||
| b152edca7d | |||
| 8be4651af6 | |||
| 7307a72341 | |||
| f48ab77b0c | |||
| d584be475b | |||
| 662689b70d | |||
| f4c9a90ff2 | |||
| be78eaf5e3 | |||
| 632eebfe42 | |||
| 3fe6f702b9 | |||
| 01eee1289a | |||
| b89e7ebec9 | |||
| 1af95ba75e | |||
| eef0f25aaf | |||
| dc5b230471 | |||
| 10a1652795 | |||
| ae3100a6c8 | |||
| 68410cd7e7 | |||
| 1bfad729aa | |||
| b295132dae | |||
| 9e4add9075 | |||
| e0356b0edb | |||
| 3ec8adfc1b | |||
| 1c9d142646 | |||
| e0dbb28b2e | |||
| 12b816b2e4 | |||
| 71331929ba | |||
| 913a8e9ab2 | |||
| d16ecc28da | |||
| 33825fc137 | |||
| 1f150d71d2 | |||
| 0da45a5b0d | |||
| 1dbf772873 | |||
| f0db85e714 | |||
| 507cde3788 | |||
| a19f71c8b9 | |||
| bdefe77b67 | |||
| 0c705f7837 | |||
| 7a1c4ea6f4 | |||
| 4483e46102 | |||
| bb5a385292 | |||
| 636b8a5645 | |||
| 776c7db8d2 | |||
| 124d59b5af | |||
| b62f685322 | |||
| a0ca179798 | |||
| d0847ac23d | |||
| e55d5bb5da | |||
| f85a02dc03 | |||
| 6a9d0b6cd4 | |||
| 87ba0f5c06 | |||
| 3de57e0786 | |||
| 15712267d6 | |||
| 73b27b5f19 | |||
| 6c4e5f3eb3 | |||
| f7b10fde04 | |||
| 7e56a4bca6 | |||
| 4976f3fd36 | |||
| 8213197399 | |||
| 4aef99222f | |||
| c4101683ba | |||
| 48d21c8b59 | |||
| aa6a9b9a65 | |||
| 7b5effc44f | |||
| 80c3343b70 | |||
| 28e24bea15 | |||
| d4991a5a57 | |||
| 4283d661c4 | |||
| e4197625b0 | |||
| cd73e023bc | |||
| 8e83b62f99 | |||
| 7cac78df85 | |||
| d30e28dbe1 | |||
| ff4b8df4b4 | |||
| 905003f5c7 | |||
| a736dbfed0 | |||
| 8102ac4d89 | |||
| dd64045f47 | |||
| 848daabdff | |||
| 65f93f7231 | |||
| 3f5f9b9cb7 | |||
| 473ed9149c | |||
| e397b05654 | |||
| e9f4bcb08c | |||
| da7d319de8 | |||
| df03210327 | |||
| 8d1e17832e | |||
| f18fed8a1b | |||
| 494e74843b | |||
| a1f630506e | |||
| 6a2fa7f534 | |||
| 0843ad7ce0 | |||
| 30a3d6e7ee | |||
| e7db323cb5 | |||
| 4110fd8a35 | |||
| 93f944cbea | |||
| 0b335dec3a | |||
| 919d056489 | |||
| 89f9b7bee6 | |||
| fa04d757c5 | |||
| ba4d1fd1fd | |||
| eafce390d6 | |||
| 758c03a9bf | |||
| 8f5996d903 | |||
| 3d15e4e2d7 | |||
| abe8818958 | |||
| c1716b0319 | |||
| 0ba6f18b63 | |||
| bc0c949cd7 | |||
| 0c9e71f2a7 | |||
| b04a193268 | |||
| 7a27295f86 | |||
| df70128156 | |||
| 8ef5d38340 | |||
| 447024e143 | |||
| b158f2247d | |||
| c67212c94f | |||
| 1850e8dc26 | |||
| 9381322401 | |||
| 730d10edee | |||
| a965fa973b | |||
| 8aea9c3ee6 | |||
| 37fdb75bd9 | |||
| 449e4826c0 | |||
| 867264e3b7 | |||
| 16fe744990 | |||
| fec2ac4026 | |||
| 2a5ce1df3f | |||
| 3dfba5b464 | |||
| 5b2c1dad2e | |||
| 386e6048fc | |||
| 107f8b4756 | |||
| 0d5fd3fe33 | |||
| 61728f95d3 | |||
| 3fad61abde | |||
| 3bae780610 | |||
| fdf9621639 | |||
| aa845e843a | |||
| e6f4fd70f9 | |||
| f34b51453f | |||
| 0dabfee6da | |||
| 9ce7af9429 | |||
| ecc6a42519 | |||
| a10900f62b | |||
| 7b2872ee95 | |||
| b5e428bf5e | |||
| 460d3d2b51 | |||
| a3a6057358 | |||
| cc0a043757 | |||
| 038393e5fb | |||
| 38a5cb8a29 | |||
| 4b1c9f29e2 | |||
| df74a65831 | |||
| 16fbfc00e1 | |||
| 1e85b6a8d8 | |||
| d6518d9f14 | |||
| 21188d4674 | |||
| a0c8e24997 | |||
| 5644973db0 | |||
| 059fc7f5f4 | |||
| d00fa76fa3 | |||
| 80abd13d44 | |||
| f00b6c3c15 | |||
| 827dd21eb5 | |||
| 3e2440d395 | |||
| c886c9be8f | |||
| f730526c18 | |||
| 21d9880738 | |||
| 6b427ec38c | |||
| ceaf5667f2 | |||
| a04926b1fa | |||
| 0e272f5411 | |||
| ccbe1cc1a4 | |||
| eaca264460 | |||
| 8314ba348d | |||
| b73c206ee5 | |||
| a5c30c7310 |
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"project_name": "Droidnix"
|
||||
}
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 6.0 MiB |
+1932
-927
File diff suppressed because it is too large
Load Diff
+1511
-567
File diff suppressed because it is too large
Load Diff
@@ -1,19 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Get active workspace ID
|
||||
ws=$(hyprctl activeworkspace -j | jq -r '.id')
|
||||
|
||||
# Format number with leading zero (01, 02, ...)
|
||||
num=$(printf "%02d" "$ws")
|
||||
|
||||
# Build wallpaper path
|
||||
wall="$HOME/Wallpapers/pictures/${num}.jpg"
|
||||
|
||||
# Check if file exists
|
||||
if [ -f "$wall" ]; then
|
||||
# Set wallpaper with smooth transition
|
||||
awww img "$wall" \
|
||||
--transition-type wipe \
|
||||
--transition-duration 0.5 \
|
||||
--transition-fps 60
|
||||
fi
|
||||
@@ -1,9 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
socket="$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock"
|
||||
|
||||
socat -U - UNIX-CONNECT:$socket | while read -r line; do
|
||||
if [[ "$line" == workspace* ]]; then
|
||||
~/.config/hypr/scripts/set-workspace-wallpaper.sh
|
||||
fi
|
||||
done
|
||||
@@ -1,83 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# -------------------------------
|
||||
# Config
|
||||
# -------------------------------
|
||||
HOME_DIR="$HOME"
|
||||
PICTURES_DIR="$HOME_DIR/Wallpapers/pictures"
|
||||
STATE_DIR="$HOME_DIR/.cache/hypr-wallpapers"
|
||||
NAMESPACE="main"
|
||||
|
||||
CURRENTPATH=/run/current-system/sw/bin
|
||||
|
||||
# Required environment variables
|
||||
: "${XDG_RUNTIME_DIR:?XDG_RUNTIME_DIR is not set}"
|
||||
: "${HYPRLAND_INSTANCE_SIGNATURE:?HYPRLAND_INSTANCE_SIGNATURE is not set}"
|
||||
: "${WAYLAND_DISPLAY:?WAYLAND_DISPLAY is not set}"
|
||||
|
||||
IPC_SOCKET="$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock"
|
||||
|
||||
# -------------------------------
|
||||
# Wait for Hyprland IPC socket
|
||||
# -------------------------------
|
||||
until [ -S "$IPC_SOCKET" ]; do
|
||||
echo "Waiting for Hyprland IPC socket..."
|
||||
sleep 1
|
||||
done
|
||||
|
||||
# -------------------------------
|
||||
# Start awww-daemon if not already running
|
||||
# -------------------------------
|
||||
awww_SOCKET="$XDG_RUNTIME_DIR/awww/$NAMESPACE.sock"
|
||||
|
||||
if [ ! -S "$awww_SOCKET" ]; then
|
||||
if ! pgrep -f "awww-daemon.*--namespace $NAMESPACE" >/dev/null; then
|
||||
echo "Starting awww-daemon for namespace $NAMESPACE..."
|
||||
"$CURRENTPATH/awww-daemon" --namespace "$NAMESPACE" &
|
||||
sleep 0.5
|
||||
else
|
||||
echo "awww-daemon already running for namespace $NAMESPACE"
|
||||
fi
|
||||
fi
|
||||
|
||||
# -------------------------------
|
||||
# Load wallpapers
|
||||
# -------------------------------
|
||||
mapfile -t IMAGES < <(find "$PICTURES_DIR" -type f \( -iname '*.png' -o -iname '*.jpg' -o -iname '*.jpeg' \))
|
||||
[ "${#IMAGES[@]}" -eq 0 ] && { echo "No wallpapers found in $PICTURES_DIR"; exit 1; }
|
||||
|
||||
mkdir -p "$STATE_DIR"
|
||||
|
||||
get_wallpaper() {
|
||||
local ws="$1"
|
||||
local mon="$2"
|
||||
local key="$STATE_DIR/ws${ws}_mon${mon}.txt"
|
||||
|
||||
if [ -f "$key" ]; then
|
||||
cat "$key"
|
||||
else
|
||||
local image="${IMAGES[RANDOM % ${#IMAGES[@]}]}"
|
||||
echo "$image" > "$key"
|
||||
echo "$image"
|
||||
fi
|
||||
}
|
||||
|
||||
# -------------------------------
|
||||
# Subscribe to workspace events
|
||||
# -------------------------------
|
||||
{
|
||||
echo '{"subscribe":["workspace"]}'
|
||||
"$CURRENTPATH/socat" - UNIX-CONNECT:"$IPC_SOCKET"
|
||||
} | while read -r line; do
|
||||
[[ "$line" =~ ^\{ ]] || continue
|
||||
|
||||
WS_NUM=$("$CURRENTPATH/jq" -r 'select(.type=="workspace" and .active==true) | .workspace' <<< "$line" 2>/dev/null || true)
|
||||
MONITOR=$("$CURRENTPATH/jq" -r '.monitor' <<< "$line" 2>/dev/null || true)
|
||||
|
||||
if [ -n "$WS_NUM" ] && [ -n "$MONITOR" ]; then
|
||||
WALLPAPER=$(get_wallpaper "$WS_NUM" "$MONITOR")
|
||||
echo "Setting wallpaper for workspace $WS_NUM on monitor $MONITOR: $WALLPAPER"
|
||||
"$CURRENTPATH/awww" img "$WALLPAPER" --resize stretch --namespace "$WS_NUM"
|
||||
fi
|
||||
done
|
||||
@@ -1,67 +0,0 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
let
|
||||
colors = {
|
||||
crust = "#11111b";
|
||||
mantle = "#181825";
|
||||
base = "#1e1e2e";
|
||||
surface0 = "#313244";
|
||||
surface1 = "#45475a";
|
||||
surface2 = "#585b70";
|
||||
overlay0 = "#6c7086";
|
||||
overlay1 = "#7f849c";
|
||||
overlay2 = "#9399b2";
|
||||
subtext0 = "#a6adc8";
|
||||
subtext1 = "#bac2de";
|
||||
text = "#cdd6f4";
|
||||
rosewater = "#f5e0dc";
|
||||
flamingo = "#f2cdcd";
|
||||
pink = "#f5c2e7";
|
||||
mauve = "#cba6f7";
|
||||
red = "#f38ba8";
|
||||
maroon = "#eba0ac";
|
||||
peach = "#fab387";
|
||||
yellow = "#f9e2af";
|
||||
green = "#a6e3a1";
|
||||
teal = "#94e2d5";
|
||||
sapphire = "#74c7ec";
|
||||
blue = "#89b4fa";
|
||||
lavender = "#b4befe";
|
||||
};
|
||||
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
cssContent = ''
|
||||
/* Catppuccin Mocha Palette - auto-generated, do not edit manually */
|
||||
'' + lib.concatStringsSep "\n" (
|
||||
lib.mapAttrsToList (name: value:
|
||||
"@define-color ${name} ${value};"
|
||||
) colors
|
||||
) + "\n@define-color base-alpha rgba(30, 30, 46, 0.9);";
|
||||
|
||||
qmlContent = ''
|
||||
// Catppuccin Mocha Palette - auto-generated, do not edit manually
|
||||
import QtQuick
|
||||
QtObject {
|
||||
readonly property color baseAlpha: Qt.rgba(30/255, 30/255, 46/255, 0.9)
|
||||
'' + lib.concatStringsSep "\n" (
|
||||
lib.mapAttrsToList (name: value:
|
||||
" readonly property color ${name}: \"${value}\""
|
||||
) colors
|
||||
) + "\n}";
|
||||
|
||||
in
|
||||
{
|
||||
home-manager.users.${username} = {
|
||||
home.file = {
|
||||
".config/shared/colors.css" = {
|
||||
text = cssContent;
|
||||
force = true;
|
||||
};
|
||||
".config/quickshell/Colors.qml" = {
|
||||
text = qmlContent;
|
||||
force = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Generated
+61
-61
@@ -20,11 +20,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775558810,
|
||||
"narHash": "sha256-fy95EdPnqQlpbP8+rk0yWKclWShCUS5VKs6P7/1MF2c=",
|
||||
"lastModified": 1776876344,
|
||||
"narHash": "sha256-Ubqb/agkuMJK+k19gjQgHux/eOYRc1sRGoOZOho8+VY=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "7371b669b22aa2af980f913fc312a786d2f1abb2",
|
||||
"rev": "648a13d0ee1e03a843b3e145b8ece15393058701",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -109,11 +109,11 @@
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1776362623,
|
||||
"narHash": "sha256-GT9GB1EWzAS9sVxeqL8zEdXpBJFFp/qoklaVeLzL76o=",
|
||||
"lastModified": 1777543690,
|
||||
"narHash": "sha256-zsUewdyvEKysZPX9VOAKd3Vqozk8uBLhDjp9gs+khQA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "emacs-overlay",
|
||||
"rev": "1a0129b355cbc765ae868529997175a5af59959d",
|
||||
"rev": "55b9bd836f08ec5b31f919fbc383d00cabd2bb2b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -177,11 +177,11 @@
|
||||
},
|
||||
"flatpak": {
|
||||
"locked": {
|
||||
"lastModified": 1768656715,
|
||||
"narHash": "sha256-Sbh037scxKFm7xL0ahgSCw+X2/5ZKeOwI2clqrYr9j4=",
|
||||
"lastModified": 1777402031,
|
||||
"narHash": "sha256-6gkfl9y3+ti0Z6dgby8/R4/DRT8sWU0I0TLCIxwWtjk=",
|
||||
"owner": "gmodena",
|
||||
"repo": "nix-flatpak",
|
||||
"rev": "123fe29340a5b8671367055b75a6e7c320d6f89a",
|
||||
"rev": "22a3adbe7c5c8c8a10a635d32c9ef7fc01a6e4b8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -252,11 +252,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1776184304,
|
||||
"narHash": "sha256-No6QGBmIv5ChiwKCcbkxjdEQ/RO2ZS1gD7SFy6EZ7rc=",
|
||||
"lastModified": 1777518431,
|
||||
"narHash": "sha256-SwgiG2T5pbyo33Vz7/vUCAhEMgwCK8Pa2nDSx5a6/WE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "3c7524c68348ef79ce48308e0978611a050089b2",
|
||||
"rev": "2e54a938cdd4c8e414b2518edc3d82308027c670",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -281,11 +281,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772461003,
|
||||
"narHash": "sha256-pVICsV7FtcEeVwg5y/LFh3XFUkVJninm/P1j/JHzEbM=",
|
||||
"lastModified": 1776511930,
|
||||
"narHash": "sha256-fCpwFiTW0rT7oKJqr3cqHMnkwypSwQKpbtUEtxdkgrM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "b62396457b9cfe2ebf24fe05404b09d2a40f8ed7",
|
||||
"rev": "39435900785d0c560c6ae8777d29f28617d031ef",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -310,11 +310,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775496928,
|
||||
"narHash": "sha256-Ds759WU03mGWtu3I43J+5GF5Ni8TvF+GYQUFD+fVeMo=",
|
||||
"lastModified": 1776426399,
|
||||
"narHash": "sha256-RUESLKNikIeEq9ymGJ6nmcDXiSFQpUW1IhJ245nL3xM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"rev": "cf95d93d17baa18f1d9b016b3afe27f820521a6e",
|
||||
"rev": "68d064434787cf1ed4a2fe257c03c5f52f33cf84",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -340,11 +340,11 @@
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1776365273,
|
||||
"narHash": "sha256-Tzjt/E5JNuo07CQ/PPiY5zh11PqWzd07A/3mSZvtm0Y=",
|
||||
"lastModified": 1777550343,
|
||||
"narHash": "sha256-onTHP/FGrF8nDn9EWRBxyBIUm7svUI/8rr1Dz0Wm1bE=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "b5ea887f072fa055cf23ec389ed81e3ee4c5319a",
|
||||
"rev": "8884b9e6ce608a22c993b1a871e864171626e8e5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -386,11 +386,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1774710575,
|
||||
"narHash": "sha256-p7Rcw13+gA4Z9EI3oGYe3neQ3FqyOOfZCleBTfhJ95Q=",
|
||||
"lastModified": 1776426575,
|
||||
"narHash": "sha256-KI6nIfVihn/DPaeB5Et46Xg3dkNHrrEtUd5LBBVomB0=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-guiutils",
|
||||
"rev": "0703df899520001209646246bef63358c9881e36",
|
||||
"rev": "a968d211048e3ed538e47b84cb3649299578f19d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -440,11 +440,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772459629,
|
||||
"narHash": "sha256-/iwvNUYShmmnwmz/czEUh6+0eF5vCMv0xtDW0STPIuM=",
|
||||
"lastModified": 1776426736,
|
||||
"narHash": "sha256-rl7i4aY+9p8LysJp7o8uRWahCkpFznCgGHXszlTw7b0=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "7615ee388de18239a4ab1400946f3d0e498a8186",
|
||||
"rev": "7833ff33b2e82d3406337b5dcf0d1cec595d83e9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -517,11 +517,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1774911391,
|
||||
"narHash": "sha256-c4YVwO33Mmw+FIV8E0u3atJZagHvGTJ9Jai6RtiB8rE=",
|
||||
"lastModified": 1777492286,
|
||||
"narHash": "sha256-PwuoEJQcjSKJNP5T55qhfDwIP0tw5zxEhfu8GDfKfeg=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "e6caa3d4d1427eedbdf556cf4ceb70f2d9c0b56d",
|
||||
"rev": "ec5c0c709706bad5b82f667fd8758eae442577ce",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -542,11 +542,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772459835,
|
||||
"narHash": "sha256-978jRz/y/9TKmZb/qD4lEYHCQGHpEXGqy+8X2lFZsak=",
|
||||
"lastModified": 1777148232,
|
||||
"narHash": "sha256-Uv0WZLhu89SafuSOmYDA7akrPt4wBRmsa1ucasO5aXg=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "0a692d4a645165eebd65f109146b8861e3a925e7",
|
||||
"rev": "fec9cf1abcc1011e46f0a0986f46bf93c6bf8b92",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -571,11 +571,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775414057,
|
||||
"narHash": "sha256-mDpHnf+MkdOxEqIM1TnckYYh9p1SXR8B3KQfNZ12M8s=",
|
||||
"lastModified": 1776728575,
|
||||
"narHash": "sha256-z9eGphrArEBpl1O/GCH0wlY6z4K9vA6yWh2gAS6qytU=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwire",
|
||||
"rev": "86012ee01b0fdd8bf3101ef38816f2efbee42490",
|
||||
"rev": "f3a80888783702a39691b684d099e16b83ed4702",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -601,11 +601,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1775423009,
|
||||
"narHash": "sha256-vPKLpjhIVWdDrfiUM8atW6YkIggCEKdSAlJPzzhkQlw=",
|
||||
"lastModified": 1776877367,
|
||||
"narHash": "sha256-EHq1/OX139R1RvBzOJ0aMRT3xnWyqtHBRUBuO1gFzjI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "68d8aa3d661f0e6bd5862291b5bb263b2a6595c9",
|
||||
"rev": "0726a0ecb6d4e08f6adced58726b95db924cef57",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -617,11 +617,11 @@
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1776067740,
|
||||
"narHash": "sha256-B35lpsqnSZwn1Lmz06BpwF7atPgFmUgw1l8KAV3zpVQ=",
|
||||
"lastModified": 1777428379,
|
||||
"narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "7e495b747b51f95ae15e74377c5ce1fe69c1765f",
|
||||
"rev": "755f5aa91337890c432639c60b6064bb7fe67769",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -633,11 +633,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1776169885,
|
||||
"narHash": "sha256-l/iNYDZ4bGOAFQY2q8y5OAfBBtrDAaPuRQqWaFHVRXM=",
|
||||
"lastModified": 1777268161,
|
||||
"narHash": "sha256-bxrdOn8SCOv8tN4JbTF/TXq7kjo9ag4M+C8yzzIRYbE=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4bd9165a9165d7b5e33ae57f3eecbcb28fb231c9",
|
||||
"rev": "1c3fe55ad329cbcb28471bb30f05c9827f724c76",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -682,11 +682,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775036584,
|
||||
"narHash": "sha256-zW0lyy7ZNNT/x8JhzFHBsP2IPx7ATZIPai4FJj12BgU=",
|
||||
"lastModified": 1776796298,
|
||||
"narHash": "sha256-PcRvlWayisPSjd0UcRQbhG8Oqw78AcPE6x872cPRHN8=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "4e0eb042b67d863b1b34b3f64d52ceb9cd926735",
|
||||
"rev": "3cfd774b0a530725a077e17354fbdb87ea1c4aad",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -702,11 +702,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1776066068,
|
||||
"narHash": "sha256-SwKVkgEsqsp5ki9m7fqvhncb5MjvH1hlZqbn3s+x/Uk=",
|
||||
"lastModified": 1777341401,
|
||||
"narHash": "sha256-QEAVYeXxvTamsYJVBq8+qSJV9ml2MxqRaZvkobfuPWA=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "fb08eced449e87e47321e95beeb890a63d2c67bd",
|
||||
"revCount": 801,
|
||||
"rev": "0baa81aa03559ca315668e5a306364cddf1a6f49",
|
||||
"revCount": 812,
|
||||
"type": "git",
|
||||
"url": "https://git.outfoxxed.me/outfoxxed/quickshell"
|
||||
},
|
||||
@@ -748,11 +748,11 @@
|
||||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1776170745,
|
||||
"narHash": "sha256-Tl1aZVP5EIlT+k0+iAKH018GLHJpLz3hhJ0LNQOWxCc=",
|
||||
"lastModified": 1777501441,
|
||||
"narHash": "sha256-+QWZ2/LvtEfbI4a5OiJmfv8aypBdm0u4Ui9t6LNHkRc=",
|
||||
"owner": "nix-community",
|
||||
"repo": "stylix",
|
||||
"rev": "e3861617645a43c9bbefde1aa6ac54dd0a44bfa9",
|
||||
"rev": "0bd266569c03b74234b8a2ae73d05055fb02a35f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -883,11 +883,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773601989,
|
||||
"narHash": "sha256-2tJf/CQoHApoIudxHeJye+0Ii7scR0Yyi7pNiWk0Hn8=",
|
||||
"lastModified": 1777035886,
|
||||
"narHash": "sha256-m1TNuBoSXUBSKhD9UVMkU90M0wFTPTfvIOOltO8IM8A=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "a9b862d1aa000a676d310cc62d249f7ad726233d",
|
||||
"rev": "ecfcdcc781f48821d83e1e2a0e30d7beca0eeb5e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -903,11 +903,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775710180,
|
||||
"narHash": "sha256-sCokvdNvl8zIzsnjgG0TN5h3RUI7GJyWW9ErfmEj0rM=",
|
||||
"lastModified": 1777352968,
|
||||
"narHash": "sha256-BZ+BHCINHSyyCOWo4pCJQU4T994iZLiw7lgFMNw+W9k=",
|
||||
"owner": "youwen5",
|
||||
"repo": "zen-browser-flake",
|
||||
"rev": "2c138beb648d1cbbfae76695a8230ee04e4db25a",
|
||||
"rev": "bebce586893c7d441edd6cf9cf2cf62a1799361e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
+34
-32
@@ -1,79 +1,81 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{
|
||||
description = "Droidnix: A dendritic NixOS + Home Manager configuration";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
quickshell = {
|
||||
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
import-tree.url = "github:vic/import-tree";
|
||||
|
||||
stylix = {
|
||||
url = "github:nix-community/stylix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
flatpak = {
|
||||
url = "github:gmodena/nix-flatpak";
|
||||
};
|
||||
|
||||
emacs-overlay = {
|
||||
url = "github:nix-community/emacs-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
zen-browser = {
|
||||
url = "github:youwen5/zen-browser-flake";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
hyprland.url = "github:hyprwm/Hyprland";
|
||||
};
|
||||
|
||||
outputs = { self,
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
import-tree,
|
||||
stylix,
|
||||
hyprland,
|
||||
emacs-overlay,
|
||||
zen-browser,
|
||||
flatpak
|
||||
,... }:
|
||||
outputs = { self, nixpkgs, home-manager, import-tree, stylix, hyprland,
|
||||
emacs-overlay, zen-browser, quickshell, flatpak, ... }:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
flakeRoot = self;
|
||||
buildUser = "henrov";
|
||||
mutableConfigPath = "${flakeRoot}/generated/.config";
|
||||
in {
|
||||
nixosConfigurations = {
|
||||
traveldroid = nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
|
||||
modules = [
|
||||
({ ... }: {
|
||||
nixpkgs.overlays = [ emacs-overlay.overlays.default ];
|
||||
})
|
||||
flatpak.nixosModules."nix-flatpak"
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.extraSpecialArgs = {
|
||||
inherit
|
||||
flakeRoot
|
||||
import-tree
|
||||
stylix
|
||||
hyprland
|
||||
zen-browser
|
||||
quickshell
|
||||
buildUser
|
||||
mutableConfigPath
|
||||
;
|
||||
};
|
||||
}
|
||||
./generated/hosts/traveldroid/host.nix
|
||||
./generated/users/henrov.nix
|
||||
];
|
||||
specialArgs = {
|
||||
inherit
|
||||
flakeRoot
|
||||
home-manager
|
||||
import-tree
|
||||
stylix
|
||||
hyprland
|
||||
zen-browser
|
||||
;
|
||||
flakeRoot
|
||||
home-manager
|
||||
import-tree
|
||||
stylix
|
||||
hyprland
|
||||
zen-browser
|
||||
quickshell
|
||||
buildUser
|
||||
mutableConfigPath
|
||||
;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
+2
-1
@@ -1,4 +1,5 @@
|
||||
#!/run/current-system/sw/bin/bash
|
||||
#!/usr/bin/env bash
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
set -euo pipefail
|
||||
|
||||
WALLPAPER_DIR="$HOME/Wallpapers/pictures"
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env bash
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
set -euo pipefail
|
||||
|
||||
SOCK="$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock"
|
||||
|
||||
exec socat -U - UNIX-CONNECT:"$SOCK" | while IFS= read -r line; do
|
||||
case "$line" in
|
||||
workspace\>\>*)
|
||||
WS="${line#workspace>>}"
|
||||
"$HOME/Wallpapers/scripts/ws-wallpaper.sh" "$WS"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
#!/usr/bin/env bash
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
WS=$1
|
||||
|
||||
case "$WS" in
|
||||
0)
|
||||
awww img /home/henrov/Wallpapers/pictures/10.jpg --transition-type random
|
||||
;;
|
||||
1)
|
||||
awww img /home/henrov/Wallpapers/pictures/01.jpg --transition-type random
|
||||
;;
|
||||
2)
|
||||
awww img /home/henrov/Wallpapers/pictures/02.jpg --transition-type random
|
||||
;;
|
||||
3)
|
||||
awww img /home/henrov/Wallpapers/pictures/03.jpg --transition-type random
|
||||
;;
|
||||
4)
|
||||
awww img /home/henrov/Wallpapers/pictures/04.jpg --transition-type random
|
||||
;;
|
||||
5)
|
||||
awww img /home/henrov/Wallpapers/pictures/05.jpg --transition-type random
|
||||
;;
|
||||
6)
|
||||
awww img /home/henrov/Wallpapers/pictures/06.jpg --transition-type random
|
||||
;;
|
||||
7)
|
||||
awww img /home/henrov/Wallpapers/pictures/07.jpg --transition-type random
|
||||
;;
|
||||
8)
|
||||
awww img /home/henrov/Wallpapers/pictures/08.jpg --transition-type random
|
||||
;;
|
||||
9)
|
||||
awww img /home/henrov/Wallpapers/pictures/09.jpg --transition-type random
|
||||
;;
|
||||
esac
|
||||
@@ -1,11 +1,34 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
|
||||
# ─────────────────────────────
|
||||
# 🌊 Smooth fluid motion curve (less snap, more glide)
|
||||
# ─────────────────────────────
|
||||
bezier = fluid, 0.10, 0.85, 0.15, 1.00
|
||||
|
||||
# ─────────────────────────────
|
||||
# 🪟 Windows (primary UI motion)
|
||||
# slightly slower + softer entry/exit
|
||||
# ─────────────────────────────
|
||||
animation = windows, 1, 8, fluid
|
||||
animation = windowsIn, 1, 8, fluid
|
||||
animation = windowsOut, 1, 7, fluid, popin 90%
|
||||
|
||||
# ─────────────────────────────
|
||||
# 🧭 Workspaces (camera-like movement)
|
||||
# make this the most “fluid” feeling part
|
||||
# ─────────────────────────────
|
||||
animation = workspaces, 1, 7, fluid
|
||||
|
||||
# ─────────────────────────────
|
||||
# 🌫️ Fades (keep snappy but soft)
|
||||
# ─────────────────────────────
|
||||
animation = fade, 1, 6, fluid
|
||||
|
||||
# ─────────────────────────────
|
||||
# 🧱 Borders (stable, minimal motion)
|
||||
# ─────────────────────────────
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 9, fluid
|
||||
}
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
# Keyboard and mouse settings
|
||||
input {
|
||||
numlock_by_default = true
|
||||
touchpad {
|
||||
touchpad {
|
||||
natural_scroll = true
|
||||
tap-to-click = true
|
||||
drag_lock = true
|
||||
|
||||
@@ -3,8 +3,8 @@ $mainMod = SUPER
|
||||
|
||||
# launcher / kill / reload
|
||||
|
||||
bind = $mainMod, Space, exec, ~/.config/scripts/wofi-launcher.sh
|
||||
bind = ALT, Space, exec, ~/.config/scripts/wofi-launcher.sh
|
||||
bind = $mainMod, Space, exec, ~/.config/wofi/scripts/wofi-launcher.sh
|
||||
bind = ALT, Space, exec, ~/.config/wofi/scripts/wofi-launcher.sh
|
||||
bind = $mainMod, Q, killactive,
|
||||
bind = $mainMod SHIFT, Q, exit,
|
||||
bind = $mainMod SHIFT, R, exec, hyprctl reload
|
||||
@@ -12,18 +12,11 @@ bind = $mainMod, X , exec, qs -c powermenu
|
||||
bind = $mainMod, L, exec, hyprlock
|
||||
|
||||
# grimblast
|
||||
# bind = $mainMod SHIFT, P, exec, grimblast -n -f copysave active
|
||||
# bind = $mainMod SHIFT, S, exec, grimblast -n -f copysave area
|
||||
# bind = , XF86Screenshot, exec, grimblast -n -f copysave area
|
||||
# bind = $mainMod ALT, P, exec, grimblast -n -f copysave output
|
||||
# bind = $mainMod CTRL, P, exec, grimblast -n -f copysave screen
|
||||
|
||||
# Flameshot keybindings
|
||||
bind = $mainMod SHIFT, P, exec, flameshot full -p ~/Pictures/Screenshots -c
|
||||
bind = $mainMod SHIFT, S, exec, flameshot gui
|
||||
bind = , XF86Screenshot, exec, flameshot gui
|
||||
bind = $mainMod ALT, P, exec, flameshot full -d 5000 -p ~/Pictures/Screenshots -c
|
||||
bind = $mainMod CTRL, P, exec, flameshot screen -n 0 -p ~/Pictures/Screenshots -c
|
||||
bind = $mainMod SHIFT, P, exec, grimblast -n -f copysave active
|
||||
bind = $mainMod SHIFT, S, exec, grimblast -n -f copysave area
|
||||
bind = , XF86Screenshot, exec, grimblast -n -f copysave area
|
||||
bind = $mainMod ALT, P, exec, grimblast -n -f copysave output
|
||||
bind = $mainMod CTRL, P, exec, grimblast -n -f copysave screen
|
||||
|
||||
# Switch windows
|
||||
bind = ALT, TAB, cyclenext, prev
|
||||
@@ -36,6 +29,7 @@ bind = CTRL ALT, right, layoutmsg, colwidth +conf
|
||||
bind = CTRL ALT, left, layoutmsg, colwidth -conf
|
||||
|
||||
# switch layouts
|
||||
bind = $mainMod, T , exec, qs -c layoutswitcher
|
||||
|
||||
# Hyprscrolling
|
||||
bind = $mainMod, period, layoutmsg, move +col
|
||||
@@ -48,7 +42,6 @@ bind = $mainMod, S, togglegroup
|
||||
# Cycle tabs in the group
|
||||
bind = $mainMod, bracketright, changegroupactive, f
|
||||
bind = $mainMod, bracketleft, changegroupactive, b
|
||||
bind = $mainMod, T, exec, ~/.config/scripts/layout-selector.sh
|
||||
|
||||
# Focus movement
|
||||
bind = $mainMod, H, movefocus, l
|
||||
@@ -93,6 +86,7 @@ bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
|
||||
# Moving windows to workspaces
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
@@ -123,7 +117,7 @@ bind = , XF86AudioMicMute, exec, pamixer --default-source -t
|
||||
#########################
|
||||
# Media (playerctl)
|
||||
#########################
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioPlay, exec, bash -c "playerctl -l | grep -q spotify && playerctl -p spotify play-pause || playerctl play-pause"
|
||||
bind = , XF86AudioPause, exec, playerctl pause
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
@@ -143,7 +137,7 @@ bind = , XF86KbdBrightnessDown, exec, brightnessctl -d '*kbd_backlight*' set 10%
|
||||
bind = , XF86Sleep, exec, systemctl suspend
|
||||
bind = , XF86PowerOff, exec, systemctl poweroff
|
||||
bind = , XF86WakeUp, exec, systemctl suspend
|
||||
bind = CTRL ALT, L, exec, loginctl lock-session
|
||||
bind = , XF86ScreenSaver, exec, loginctl lock-session
|
||||
|
||||
#########################
|
||||
# Start apps
|
||||
@@ -154,13 +148,11 @@ bind = CTRL ALT, B, exec, flatpak run eu.betterbird.Betterbird
|
||||
bind = CTRL ALT, S, exec, spotify
|
||||
bind = $mainMod, Z, exec, zeditor
|
||||
bind = $mainMod, W, exec, zen
|
||||
|
||||
#########################
|
||||
# Auto apps
|
||||
#########################
|
||||
bind = , workspace, exec, ~/.config/scripts/set-workspace-wallpaper.sh
|
||||
bind = CTRL ALT, T, exec, solidtime-desktop
|
||||
bind = , XF86Calculator, exec, gnome-calculator
|
||||
|
||||
#########################
|
||||
# System stuff
|
||||
#########################
|
||||
bind = $mainMod, U, exec, kitty -e bash -lc "$HOME/.config/scripts/update.sh"
|
||||
# bind = $mainMod, U, exec, kitty --class update-term -e bash -lc "~/.config/shared/scripts/update.sh; exec bash"
|
||||
bind = $mainMod, U, exec, qs -c updater
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
exec-once = dbus-update-activation-environment --systemd --all
|
||||
exec-once = systemctl --user start --no-block xdg-desktop-portal-hyprland
|
||||
exec-once = systemctl --user start --no-block xdg-desktop-portal
|
||||
exec-once = hypridle
|
||||
exec-once = systemd-run --user --scope --unit=elephant elephant
|
||||
exec-once = waybar
|
||||
exec-once = awww-daemon
|
||||
exec-once = awww img ~/Wallpapers/pictures/01.jpg
|
||||
exec-once = ~/.config/scripts/set-workspace-wallpaper.sh
|
||||
exec-once = ~/.config/scripts/workspace-listener.sh
|
||||
exec-once = ~/.config/awww/scripts/ws-daemon.sh
|
||||
exec-once = ~/.config/shared/scripts/numlock-check.sh
|
||||
exec-once = /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1
|
||||
exec-once = nextcloud --background
|
||||
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once flameshot
|
||||
exec-once = transip-stack
|
||||
exec-once = waybar
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
layerrule = blur on, ignore_alpha 1, match:namespace waybar
|
||||
layerrule = xray 1, match:namespace waybar
|
||||
layerrule = blur on, ignore_alpha 1, match:namespace walker
|
||||
layerrule = xray 1, match:namespace walker
|
||||
layerrule = blur on, ignore_alpha 1, match:namespace swaync-control-center
|
||||
layerrule = blur on, ignore_alpha 1, match:namespace swaync-notification-window
|
||||
layerrule = xray 1, match:namespace swaync-control-center
|
||||
|
||||
@@ -27,6 +27,15 @@ windowrule {
|
||||
size = 900 700
|
||||
}
|
||||
|
||||
# Networks
|
||||
windowrule {
|
||||
name = iwgtk
|
||||
match:class = org.twosheds.iwgtk
|
||||
float = on
|
||||
move = move onscreen 100%-w 0
|
||||
size = 900 700
|
||||
}
|
||||
|
||||
#Quickshell powermenu
|
||||
windowrule {
|
||||
name = quickshell-powermenu
|
||||
@@ -37,6 +46,26 @@ windowrule {
|
||||
pin = on
|
||||
}
|
||||
|
||||
#Quickshell updater
|
||||
windowrule {
|
||||
name = quickshell-updater
|
||||
match:title = quickshell-updater
|
||||
opacity = 1.0 0.8
|
||||
float = on
|
||||
move = cursor -50% 0
|
||||
pin = on
|
||||
}
|
||||
|
||||
#Quickshell layoutswitcher
|
||||
windowrule {
|
||||
name = quickshell-layoutswitcher
|
||||
match:title = quickshell-layoutswitcher
|
||||
opacity = 1.0 0.8
|
||||
float = on
|
||||
move = cursor -50% 0
|
||||
pin = on
|
||||
}
|
||||
|
||||
#Quickshell media menu
|
||||
windowrule {
|
||||
name = quickshell-media
|
||||
@@ -47,10 +76,18 @@ windowrule {
|
||||
}
|
||||
|
||||
# Wofi window rules
|
||||
# (match: fields do not support $variables, hardcoded intentionally)
|
||||
windowrule {
|
||||
name = wofi
|
||||
match:class = ^(wofi)$
|
||||
border_color = rgb(89b4fa) rgb(a6e3a1) 45deg
|
||||
rounding = 14
|
||||
}
|
||||
|
||||
# Update terminal window rules
|
||||
windowrule {
|
||||
name = update-term
|
||||
match:class = ^(update-term)$
|
||||
float = true
|
||||
size = 900 600
|
||||
center = true
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
workspace = 1, monitor:eDP-1, layout:master
|
||||
workspace = 2, monitor:eDP-1, layout:monocle
|
||||
workspace = 3, monitor:eDP-1, layout:master
|
||||
workspace = 4, monitor:DP-1, layout:scrolling
|
||||
workspace = 5, monitor:DP-1, layout:dwindle
|
||||
workspace = 6, monitor:DP-1, layout:dwindle
|
||||
workspace = 1, monitor:eDP-1 #, layout:master
|
||||
workspace = 2, monitor:eDP-1 #, layout:monocle
|
||||
workspace = 3, monitor:eDP-1 #, layout:master
|
||||
workspace = 4, monitor:DP-1 #, layout:scrolling
|
||||
workspace = 5, monitor:DP-1 #, layout:dwindle
|
||||
workspace = 6, monitor:DP-1 #, layout:dwindle
|
||||
|
||||
@@ -0,0 +1,139 @@
|
||||
// --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
import Quickshell
|
||||
import Quickshell.Io
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
|
||||
ShellRoot {
|
||||
QtObject {
|
||||
id: colors
|
||||
readonly property color baseAlpha: Qt.rgba(30/255, 30/255, 46/255, 0.9)
|
||||
readonly property color base: "#1e1e2e"
|
||||
readonly property color surface0: "#313244"
|
||||
readonly property color surface1: "#45475a"
|
||||
readonly property color surface2: "#585b70"
|
||||
readonly property color text: "#cdd6f4"
|
||||
readonly property color subtext0: "#a6adc8"
|
||||
readonly property color subtext1: "#bac2de"
|
||||
readonly property color blue: "#89b4fa"
|
||||
readonly property color green: "#a6e3a1"
|
||||
readonly property color teal: "#94e2d5"
|
||||
readonly property color red: "#f38ba8"
|
||||
readonly property color mauve: "#cba6f7"
|
||||
readonly property color peach: "#fab387"
|
||||
readonly property color lavender: "#b4befe"
|
||||
}
|
||||
|
||||
FloatingWindow {
|
||||
id: root
|
||||
title: "quickshell-layoutswitcher"
|
||||
visible: true
|
||||
width: 220
|
||||
height: contentLayout.implicitHeight + 32
|
||||
color: colors.base
|
||||
|
||||
Shortcut {
|
||||
sequence: "Escape"
|
||||
onActivated: Qt.quit()
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
anchors.margins: -2
|
||||
radius: 18
|
||||
z: -1
|
||||
opacity: Qt.application.active ? 0 : 1
|
||||
Behavior on opacity {
|
||||
NumberAnimation { duration: 150 }
|
||||
}
|
||||
gradient: Gradient {
|
||||
orientation: Gradient.Horizontal
|
||||
GradientStop { position: 0.0; color: colors.blue }
|
||||
GradientStop { position: 1.0; color: colors.green }
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
radius: 16
|
||||
color: colors.base
|
||||
|
||||
ColumnLayout {
|
||||
id: contentLayout
|
||||
anchors {
|
||||
top: parent.top
|
||||
left: parent.left
|
||||
right: parent.right
|
||||
margins: 16
|
||||
}
|
||||
spacing: 4
|
||||
|
||||
Text {
|
||||
text: " Layout"
|
||||
color: colors.text
|
||||
font.pixelSize: 13
|
||||
font.bold: true
|
||||
Layout.bottomMargin: 8
|
||||
}
|
||||
|
||||
Repeater {
|
||||
|
||||
|
||||
model: [
|
||||
{ label: " Dwindle", layout: "dwindle", description: "Vensters splitsen recursief — elk nieuw venster halveert de ruimte" },
|
||||
{ label: " Master", layout: "master", description: "Één groot hoofdvenster links, overige vensters gestapeld rechts" },
|
||||
{ label: " Scrolling", layout: "scrolling", description: "Vensters naast elkaar in een horizontaal scrollbare rij" },
|
||||
{ label: " Monocle", layout: "monocle", description: "Één venster tegelijk op volledig scherm, anderen verborgen" },
|
||||
]
|
||||
|
||||
delegate: Rectangle {
|
||||
id: item
|
||||
Layout.fillWidth: true
|
||||
height: 38
|
||||
radius: 8
|
||||
color: hovered ? colors.surface1 : colors.base
|
||||
property bool hovered: false
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
anchors.margins: -2
|
||||
radius: parent.radius + 2
|
||||
visible: item.hovered
|
||||
z: -1
|
||||
gradient: Gradient {
|
||||
orientation: Gradient.Horizontal
|
||||
GradientStop { position: 0.0; color: colors.blue }
|
||||
GradientStop { position: 1.0; color: colors.green }
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: 12
|
||||
text: modelData.label
|
||||
color: item.hovered ? colors.text : colors.subtext1
|
||||
font.pixelSize: 13
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
hoverEnabled: true
|
||||
onEntered: item.hovered = true
|
||||
onExited: item.hovered = false
|
||||
onClicked: proc.running = true
|
||||
}
|
||||
|
||||
Process {
|
||||
id: proc
|
||||
command: ["bash", "-c", "hyprctl keyword general:layout " + modelData.layout + " && hyprctl dispatch layoutmsg reload"]
|
||||
onExited: Qt.quit()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Item { height: 4 }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,241 @@
|
||||
// --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
import Quickshell
|
||||
import Quickshell.Io
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
|
||||
ShellRoot {
|
||||
QtObject {
|
||||
id: colors
|
||||
readonly property color base: "#1e1e2e"
|
||||
readonly property color surface0: "#313244"
|
||||
readonly property color surface1: "#45475a"
|
||||
readonly property color text: "#cdd6f4"
|
||||
readonly property color subtext0: "#a6adc8"
|
||||
readonly property color green: "#a6e3a1"
|
||||
readonly property color blue: "#89b4fa"
|
||||
readonly property color red: "#f38ba8"
|
||||
readonly property color yellow: "#f9e2af"
|
||||
}
|
||||
|
||||
property int currentStep: 0
|
||||
property bool isRunning: false
|
||||
property bool isFailed: false
|
||||
property string currentLog: ""
|
||||
property bool started: false
|
||||
|
||||
readonly property var steps: [
|
||||
{ label: "Updating flake.lock", cmd: ["nix", "flake", "update"], cwd: "/home/henrov/Repos/nixos/Droidnix" },
|
||||
{ label: "Updating Flatpaks", cmd: ["flatpak", "update", "-y"], cwd: "/home/henrov" },
|
||||
{ label: "Staging changes", cmd: ["git", "add", "."], cwd: "/home/henrov/Repos/nixos/Droidnix" },
|
||||
{ label: "Committing changes", cmd: ["git", "commit", "-m", "Updated system"], cwd: "/home/henrov/Repos/nixos/Droidnix" },
|
||||
{ label: "Pushing to remote", cmd: ["git", "push"], cwd: "/home/henrov/Repos/nixos/Droidnix" },
|
||||
{ label: "Rebuilding NixOS", cmd: ["sudo", "nixos-rebuild", "switch", "--flake", ".#traveldroid"], cwd: "/home/henrov/Repos/nixos/Droidnix" },
|
||||
{ label: "Reloading Hyprland", cmd: ["hyprctl", "reload"], cwd: "/home/henrov" },
|
||||
]
|
||||
|
||||
function runStep(index) {
|
||||
if (index >= steps.length) {
|
||||
isRunning = false
|
||||
currentStep = steps.length
|
||||
return
|
||||
}
|
||||
currentStep = index
|
||||
currentLog = ""
|
||||
isRunning = true
|
||||
stepProc.command = steps[index].cmd
|
||||
stepProc.workingDirectory = steps[index].cwd
|
||||
stepProc.running = true
|
||||
}
|
||||
|
||||
Process {
|
||||
id: stepProc
|
||||
|
||||
stdout: SplitParser {
|
||||
onRead: (line) => {
|
||||
currentLog = (currentLog + "\n" + line).split("\n").slice(-8).join("\n").trim()
|
||||
}
|
||||
}
|
||||
|
||||
stderr: SplitParser {
|
||||
onRead: (line) => {
|
||||
if (line.trim() !== "")
|
||||
currentLog = (currentLog + "\n" + line).split("\n").slice(-8).join("\n").trim()
|
||||
}
|
||||
}
|
||||
|
||||
onExited: (code) => {
|
||||
if (code !== 0 && currentStep !== 3) {
|
||||
isFailed = true
|
||||
isRunning = false
|
||||
} else {
|
||||
runStep(currentStep + 1)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
FloatingWindow {
|
||||
title: "quickshell-updater"
|
||||
visible: true
|
||||
width: 540
|
||||
height: contentCol.implicitHeight + 32
|
||||
color: "transparent"
|
||||
|
||||
Shortcut {
|
||||
sequence: "Escape"
|
||||
onActivated: Qt.quit()
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
anchors.margins: -2
|
||||
radius: 18
|
||||
z: -1
|
||||
gradient: Gradient {
|
||||
orientation: Gradient.Horizontal
|
||||
GradientStop { position: 0.0; color: colors.blue }
|
||||
GradientStop { position: 1.0; color: colors.green }
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
radius: 16
|
||||
color: colors.base
|
||||
|
||||
ColumnLayout {
|
||||
id: contentCol
|
||||
anchors {
|
||||
top: parent.top
|
||||
left: parent.left
|
||||
right: parent.right
|
||||
margins: 20
|
||||
}
|
||||
spacing: 8
|
||||
|
||||
Text {
|
||||
text: " System Update"
|
||||
color: colors.text
|
||||
font.pixelSize: 15
|
||||
font.bold: true
|
||||
Layout.topMargin: 8
|
||||
}
|
||||
|
||||
// Steps
|
||||
Repeater {
|
||||
model: steps.length
|
||||
|
||||
delegate: RowLayout {
|
||||
spacing: 10
|
||||
Layout.fillWidth: true
|
||||
|
||||
readonly property bool done: !isFailed && (index < currentStep || (!isRunning && currentStep === steps.length))
|
||||
readonly property bool active: isRunning && index === currentStep
|
||||
readonly property bool failed: isFailed && index === currentStep
|
||||
readonly property bool pending: !done && !active && !failed
|
||||
|
||||
// icon
|
||||
Text {
|
||||
font.pixelSize: 14
|
||||
text: failed ? "✗" : done ? "✓" : active ? "›" : "○"
|
||||
color: failed ? colors.red : done ? colors.green : active ? colors.yellow : colors.surface1
|
||||
}
|
||||
|
||||
// label
|
||||
Text {
|
||||
text: steps[index].label
|
||||
font.pixelSize: 13
|
||||
color: failed ? colors.red : done ? colors.green : active ? colors.text : colors.surface1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Log box
|
||||
Rectangle {
|
||||
Layout.fillWidth: true
|
||||
height: 160
|
||||
radius: 8
|
||||
color: colors.surface0
|
||||
visible: currentLog !== "" && started
|
||||
|
||||
Text {
|
||||
anchors {
|
||||
fill: parent
|
||||
margins: 10
|
||||
}
|
||||
text: currentLog
|
||||
color: colors.subtext0
|
||||
font.pixelSize: 11
|
||||
font.family: "monospace"
|
||||
wrapMode: Text.WrapAnywhere
|
||||
verticalAlignment: Text.AlignBottom
|
||||
}
|
||||
}
|
||||
|
||||
// Bottom bar
|
||||
RowLayout {
|
||||
Layout.fillWidth: true
|
||||
Layout.bottomMargin: 8
|
||||
|
||||
Text {
|
||||
font.pixelSize: 12
|
||||
text: {
|
||||
if (!started) return "Press Start to begin"
|
||||
if (isFailed) return "✗ Failed at: " + steps[currentStep].label
|
||||
if (currentStep === steps.length) return "✓ All done!"
|
||||
if (isRunning) return steps[currentStep].label + "…"
|
||||
return ""
|
||||
}
|
||||
color: isFailed ? colors.red : currentStep === steps.length ? colors.green : colors.subtext0
|
||||
}
|
||||
|
||||
Item { Layout.fillWidth: true }
|
||||
|
||||
Rectangle {
|
||||
visible: !started
|
||||
width: 80; height: 28
|
||||
radius: 14
|
||||
gradient: Gradient {
|
||||
orientation: Gradient.Horizontal
|
||||
GradientStop { position: 0.0; color: colors.blue }
|
||||
GradientStop { position: 1.0; color: colors.green }
|
||||
}
|
||||
Text {
|
||||
anchors.centerIn: parent
|
||||
text: "Start"
|
||||
color: colors.base
|
||||
font.pixelSize: 12
|
||||
font.bold: true
|
||||
}
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
cursorShape: Qt.PointingHandCursor
|
||||
onClicked: {
|
||||
started = true
|
||||
runStep(0)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
visible: !isRunning && started
|
||||
width: 80; height: 28
|
||||
radius: 14
|
||||
color: colors.surface1
|
||||
Text {
|
||||
anchors.centerIn: parent
|
||||
text: currentStep === steps.length ? "Close" : "Dismiss"
|
||||
color: colors.text
|
||||
font.pixelSize: 12
|
||||
}
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
cursorShape: Qt.PointingHandCursor
|
||||
onClicked: Qt.quit()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
# layout-selector.sh
|
||||
# Select a workspace layout using Wofi, shows description, applies with layoutmsg
|
||||
|
||||
# Define layouts and descriptions
|
||||
declare -A LAYOUTS=(
|
||||
[dwindle]="舘 Dwindle: Auto-tiling, windows shrink progressively"
|
||||
[master]=" Master: One main window, others stacked"
|
||||
[scrolling]=" Scrolling: Vertical list, scroll through windows"
|
||||
[monocle]=" Monocle: One window fills the screen"
|
||||
[floating]=" Floating: Free move & resize"
|
||||
)
|
||||
ORDER=(dwindle master scrolling monocle floating)
|
||||
|
||||
# Prepare Wofi menu: show "layoutname: description"
|
||||
MENU_ITEMS=()
|
||||
for key in "${ORDER[@]}"; do
|
||||
MENU_ITEMS+=("$key: ${LAYOUTS[$key]}")
|
||||
done
|
||||
|
||||
# Show selection menu via Wofi
|
||||
CHOICE=$(printf '%s\n' "${MENU_ITEMS[@]}" | wofi --dmenu --prompt "Select Layout")
|
||||
|
||||
# Exit if cancelled
|
||||
[ -z "$CHOICE" ] && exit 0
|
||||
|
||||
# Extract layout name from selection (before colon)
|
||||
LAYOUT_NAME="${CHOICE%%:*}"
|
||||
|
||||
# Apply layout via layoutmsg
|
||||
hyprctl dispatch layoutmsg setlayout "$LAYOUT_NAME"
|
||||
|
||||
# Show OSD feedback
|
||||
hyprctl dispatch oSD "Layout: $LAYOUT_NAME" 2000
|
||||
@@ -1,48 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
#
|
||||
# Launch a power menu
|
||||
#
|
||||
# Requires fzf and systemd (loginctl, systemctl)
|
||||
#
|
||||
# Author: Jesse Mirabel <sejjymvm@gmail.com>
|
||||
# Date: August 19, 2025
|
||||
# License: MIT
|
||||
|
||||
main() {
|
||||
local list=(
|
||||
" Lock"
|
||||
" Shutdown"
|
||||
" Reboot"
|
||||
" Logout"
|
||||
" Hibernate"
|
||||
" Suspend"
|
||||
)
|
||||
|
||||
local options=(
|
||||
"--border=sharp"
|
||||
"--border-label= Power Menu "
|
||||
"--cycle"
|
||||
"--ghost=Search"
|
||||
"--height=~100%"
|
||||
"--highlight-line"
|
||||
"--info=inline-right"
|
||||
"--pointer="
|
||||
"--reverse"
|
||||
)
|
||||
|
||||
local selected
|
||||
selected=$(printf "%s\n" "${list[@]}" | fzf "${options[@]}")
|
||||
|
||||
case $selected in
|
||||
Lock) loginctl lock-session ;;
|
||||
Shutdown) systemctl poweroff ;;
|
||||
Reboot) systemctl reboot ;;
|
||||
Logout) loginctl terminate-session "$XDG_SESSION_ID" ;;
|
||||
Hibernate) systemctl hibernate ;;
|
||||
Suspend) systemctl suspend ;;
|
||||
*) return 1 ;;
|
||||
esac
|
||||
}
|
||||
|
||||
main
|
||||
@@ -1,18 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
set -e
|
||||
REPO="/home/$USER/Repos/nixos/Droidnix"
|
||||
HOSTNAME="$(hostname)"
|
||||
cd "$REPO"
|
||||
|
||||
echo "🔧 Fixing ownership..."
|
||||
sudo chown "$USER":"$USER" flake.lock 2>/dev/null || true
|
||||
|
||||
echo "🔄 Updating flake..."
|
||||
nix flake update
|
||||
|
||||
echo "🏗 Rebuilding NixOS..."
|
||||
sudo nixos-rebuild switch --flake ".#$HOSTNAME"
|
||||
|
||||
echo "📦 Updating Flatpaks..."
|
||||
flatpak update -y
|
||||
+2
-1
@@ -1,9 +1,10 @@
|
||||
/* --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. --- */
|
||||
/* Catppuccin Mocha Palette */
|
||||
@define-color border #96cdd2;
|
||||
@define-color crust #11111b;
|
||||
@define-color mantle #181825;
|
||||
@define-color base #1e1e2e;
|
||||
@define-color base-alpha rgba(30, 30, 46, 0.9);
|
||||
@define-color base-alpha rgba(30, 30, 46, 0.8);
|
||||
|
||||
@define-color surface0 #313244;
|
||||
@define-color surface1 #45475a;
|
||||
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env bash
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
# Tel toetsenborden met volledige toetsset (geen media-only apparaten)
|
||||
COUNT=$(libinput list-devices | grep -c "^Device:.*[Kk]eyboard")
|
||||
|
||||
# Of via xinput / /proc alternatief:
|
||||
# COUNT=$(cat /proc/bus/input/devices | grep -B5 'KEY=.*[a-f0-9]\{10\}' | grep -c 'Name=')
|
||||
|
||||
if [ "$COUNT" -ge 2 ]; then
|
||||
numlockx on
|
||||
echo $COUNT : On
|
||||
else
|
||||
numlockx off
|
||||
fi
|
||||
@@ -165,7 +165,7 @@ format = " in $duration "
|
||||
style = "bg:lavender"
|
||||
disabled = false
|
||||
show_notifications = true
|
||||
min_time_to_notify = 45000
|
||||
min_time_to_notify = 60000
|
||||
|
||||
[palettes.catppuccin_mocha]
|
||||
rosewater = "#f5e0dc"
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
// --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{
|
||||
"base00": "1e1e2e",
|
||||
"base01": "181825",
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
enable = true;
|
||||
base16Scheme = ../../../assets/system/theming/stylix/catppuccin-mocha.yaml;
|
||||
image = ../../../assets/hyprland/wallpaperstuff/pictures/wall1.jpg;
|
||||
polarity = "dark";
|
||||
|
||||
cursor = {
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"positionX": "right",
|
||||
"positionY": "top",
|
||||
"layer": "overlay",
|
||||
"control-center-layer": "top",
|
||||
"layer-shell": true,
|
||||
"cssPriority": "application",
|
||||
"control-center-margin-top": 8,
|
||||
"control-center-margin-bottom": 8,
|
||||
"control-center-margin-right": 8,
|
||||
"control-center-margin-left": 0,
|
||||
"notification-2fa-action": true,
|
||||
"notification-inline-replies": false,
|
||||
"notification-icon-size": 48,
|
||||
"notification-body-image-height": 100,
|
||||
"notification-body-image-width": 200,
|
||||
"timeout": 10,
|
||||
"timeout-low": 5,
|
||||
"timeout-critical": 0,
|
||||
"fit-to-screen": true,
|
||||
"control-center-height": -1,
|
||||
"control-center-width": 300,
|
||||
"notification-window-width": 400,
|
||||
"keyboard-shortcuts": true,
|
||||
"image-visibility": "when-available",
|
||||
"transition-time": 200,
|
||||
"hide-on-clear": false,
|
||||
"hide-on-action": true,
|
||||
"script-fail-notify": true,
|
||||
"widgets": [
|
||||
"inhibitors",
|
||||
"title",
|
||||
"dnd",
|
||||
"notifications"
|
||||
],
|
||||
"widget-config": {
|
||||
"inhibitors": {
|
||||
"text": "Inhibitors",
|
||||
"button-text": "Clear All",
|
||||
"clear-all-button": true
|
||||
},
|
||||
"title": {
|
||||
"text": "Notifications",
|
||||
"clear-all-button": true,
|
||||
"button-text": "Clear All"
|
||||
},
|
||||
"dnd": {
|
||||
"text": "Do Not Disturb"
|
||||
},
|
||||
"notifications": {}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,184 @@
|
||||
/* --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. --- */
|
||||
@import url("/home/henrov/.config/shared/css/colors.css");
|
||||
|
||||
* {
|
||||
all: unset;
|
||||
font-size: 13px;
|
||||
font-family: sans-serif;
|
||||
transition: 200ms;
|
||||
}
|
||||
|
||||
/* ── Notification rows ─────────────────────────────────────────────────── */
|
||||
|
||||
.notification-row {
|
||||
outline: none;
|
||||
margin: 4px 0;
|
||||
}
|
||||
|
||||
.notification-row:focus,
|
||||
.notification-row:hover {
|
||||
opacity: 0.85;
|
||||
}
|
||||
|
||||
/* ── Individual notification ───────────────────────────────────────────── */
|
||||
|
||||
.notification {
|
||||
border-radius: 12px;
|
||||
padding: 8px;
|
||||
margin: 4px 8px;
|
||||
color: @text;
|
||||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
|
||||
|
||||
/* gradient border */
|
||||
border: 2px solid transparent;
|
||||
background-image:
|
||||
linear-gradient(@base-alpha, @base-alpha),
|
||||
linear-gradient(45deg, @blue, @green);
|
||||
background-clip: padding-box, border-box;
|
||||
background-origin: padding-box, border-box;
|
||||
}
|
||||
|
||||
.notification-content {
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
.notification-default-action {
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
.notification-default-action:hover {
|
||||
background: alpha(@blue, 0.1);
|
||||
}
|
||||
|
||||
/* ── Text elements ─────────────────────────────────────────────────────── */
|
||||
|
||||
.summary {
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
color: @text;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 11px;
|
||||
color: @overlay0;
|
||||
}
|
||||
|
||||
.body {
|
||||
font-size: 12px;
|
||||
color: @subtext1;
|
||||
}
|
||||
|
||||
/* ── Control center ────────────────────────────────────────────────────── */
|
||||
|
||||
.control-center {
|
||||
min-height: unset;
|
||||
border-radius: 30px;
|
||||
padding: 8px;
|
||||
margin: 8px;
|
||||
color: @text;
|
||||
box-shadow: 0 4px 24px rgba(0, 0, 0, 0.5);
|
||||
border: 2px solid transparent;
|
||||
background-image:
|
||||
linear-gradient(@base-alpha, @base-alpha),
|
||||
linear-gradient(45deg, @blue, @green);
|
||||
background-clip: padding-box, border-box;
|
||||
background-origin: padding-box, border-box;
|
||||
}
|
||||
|
||||
.control-center-list {
|
||||
background: transparent;
|
||||
min-height: unset;
|
||||
}
|
||||
|
||||
.control-center-list-placeholder {
|
||||
opacity: 0.4;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
/* ── Misc windows ──────────────────────────────────────────────────────── */
|
||||
|
||||
.floating-notifications {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.blank-window {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/* ── Widget: title ─────────────────────────────────────────────────────── */
|
||||
|
||||
.widget-title {
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
color: @blue;
|
||||
padding: 8px 4px 4px 4px;
|
||||
}
|
||||
|
||||
.widget-title > button {
|
||||
font-size: 12px;
|
||||
color: @overlay0;
|
||||
background: alpha(@blue, 0.1);
|
||||
border-radius: 8px;
|
||||
padding: 2px 8px;
|
||||
}
|
||||
|
||||
.widget-title > button:hover {
|
||||
background: alpha(@blue, 0.2);
|
||||
color: @text;
|
||||
}
|
||||
|
||||
/* ── Widget: Do Not Disturb ────────────────────────────────────────────── */
|
||||
|
||||
.widget-dnd {
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
.widget-dnd > switch {
|
||||
border-radius: 20px;
|
||||
background: alpha(@surface1, 0.3);
|
||||
|
||||
/* gradient border */
|
||||
border: 1px solid transparent;
|
||||
background-image:
|
||||
linear-gradient(alpha(@surface1, 0.3), alpha(@surface1, 0.3)),
|
||||
linear-gradient(45deg, @blue, @green);
|
||||
background-clip: padding-box, border-box;
|
||||
background-origin: padding-box, border-box;
|
||||
}
|
||||
|
||||
.widget-dnd > switch:checked {
|
||||
background-image:
|
||||
linear-gradient(alpha(@blue, 0.5), alpha(@blue, 0.5)),
|
||||
linear-gradient(45deg, @blue, @green);
|
||||
background-clip: padding-box, border-box;
|
||||
background-origin: padding-box, border-box;
|
||||
}
|
||||
|
||||
.widget-dnd > switch slider {
|
||||
border-radius: 20px;
|
||||
background: @text;
|
||||
min-width: 20px;
|
||||
min-height: 20px;
|
||||
}
|
||||
|
||||
/* ── Widget: inhibitors ────────────────────────────────────────────────── */
|
||||
|
||||
.widget-inhibitors {
|
||||
padding: 4px;
|
||||
color: @red;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
/* ── Close button ──────────────────────────────────────────────────────── */
|
||||
|
||||
.close-button {
|
||||
background: alpha(@red, 0.15);
|
||||
border-radius: 6px;
|
||||
color: @red;
|
||||
padding: 2px 6px;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
.close-button:hover {
|
||||
background: alpha(@red, 0.3);
|
||||
}
|
||||
+156
-37
@@ -10,22 +10,21 @@
|
||||
|
||||
/*******************************************************************/
|
||||
"modules-left": [
|
||||
"group/connections",
|
||||
"group/hardware",
|
||||
"group/hardware"
|
||||
],
|
||||
|
||||
"modules-center": [
|
||||
"group/workspaces",
|
||||
"custom/power",
|
||||
"custom/media",
|
||||
"custom/batterywarn"
|
||||
"group/workspaces"
|
||||
,"group/sporadic"
|
||||
|
||||
],
|
||||
|
||||
"modules-right": [
|
||||
"group/audio",
|
||||
"tray",
|
||||
"clock",
|
||||
"idle_inhibitor"
|
||||
"group/audio"
|
||||
,"group/tray"
|
||||
,"group/datestuff"
|
||||
,"group/system"
|
||||
,"group/notifications"
|
||||
],
|
||||
|
||||
/*******************************************************************/
|
||||
@@ -45,11 +44,12 @@
|
||||
"transition-left-to-right": true
|
||||
},
|
||||
"modules": [
|
||||
"custom/hardware-anchor",
|
||||
"battery",
|
||||
"cpu",
|
||||
"memory",
|
||||
"temperature"
|
||||
"custom/hardware-anchor"
|
||||
,"battery"
|
||||
,"cpu"
|
||||
,"memory"
|
||||
,"temperature"
|
||||
,"keyboard-state"
|
||||
]
|
||||
},
|
||||
|
||||
@@ -59,6 +59,45 @@
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
/*******************************************************************/
|
||||
"group/tray": {
|
||||
"orientation": "horizontal",
|
||||
"drawer": {
|
||||
"transition-duration": 500,
|
||||
"transition-left-to-right": true
|
||||
},
|
||||
"modules": [
|
||||
"custom/tray-anchor"
|
||||
,"tray"
|
||||
]
|
||||
},
|
||||
|
||||
"custom/tray-anchor": {
|
||||
|
||||
"format": " ",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
/*******************************************************************/
|
||||
"group/system": {
|
||||
"orientation": "horizontal",
|
||||
"drawer": {
|
||||
"transition-duration": 500,
|
||||
"transition-left-to-right": true
|
||||
},
|
||||
"modules": [
|
||||
"custom/system-anchor"
|
||||
,"custom/power"
|
||||
,"idle_inhibitor"
|
||||
]
|
||||
},
|
||||
|
||||
"custom/system-anchor": {
|
||||
|
||||
"format": "",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
|
||||
/*************************/
|
||||
|
||||
@@ -69,9 +108,9 @@
|
||||
"transition-left-to-right": true
|
||||
},
|
||||
"modules": [
|
||||
"custom/connections-anchor",
|
||||
"custom/bluetooth",
|
||||
"network"
|
||||
"custom/connections-anchor"
|
||||
,"custom/bluetooth"
|
||||
,"network"
|
||||
]
|
||||
},
|
||||
|
||||
@@ -87,14 +126,42 @@
|
||||
"orientation": "horizontal",
|
||||
"modules": [
|
||||
/* "custom/media", */
|
||||
"pulseaudio",
|
||||
"pulseaudio/slider",
|
||||
"pulseaudio"
|
||||
,"pulseaudio/slider"
|
||||
]
|
||||
},
|
||||
|
||||
/*************************/
|
||||
|
||||
"group/sporadic": {
|
||||
"orientation": "horizontal",
|
||||
"modules": [
|
||||
"custom/media"
|
||||
,"custom/batterywarn"
|
||||
/* ,"custom/kdeconnect" */
|
||||
]
|
||||
},
|
||||
|
||||
/*************************/
|
||||
|
||||
"group/datestuff": {
|
||||
"orientation": "horizontal",
|
||||
"modules": [
|
||||
"clock"
|
||||
]
|
||||
},
|
||||
|
||||
/*************************/
|
||||
|
||||
"group/notifications": {
|
||||
"orientation": "horizontal",
|
||||
"modules": [
|
||||
"custom/notifications"
|
||||
]
|
||||
},
|
||||
|
||||
/*******************************************************************/
|
||||
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"align": 1,
|
||||
"format": "{name}",
|
||||
@@ -104,15 +171,15 @@
|
||||
"custom/windows": {
|
||||
"align": 0,
|
||||
"format": "{text}",
|
||||
"exec": "~/.config/scripts/hypr-workspaces.sh",
|
||||
"exec": "~/.config/waybar/scripts/hypr-workspaces.sh",
|
||||
"interval": 2,
|
||||
"return-type": "json",
|
||||
"on-click": "~/.config/scripts/hypr-workspacesmenu.sh",
|
||||
"on-click": "~/.config/waybar/scripts/hypr-workspacesmenu.sh",
|
||||
"tooltip": true
|
||||
},
|
||||
|
||||
"custom/media": {
|
||||
"exec": "~/.config/scripts/media.sh",
|
||||
"exec": "~/.config/waybar/scripts/media.sh",
|
||||
"interval": 1,
|
||||
"return-type": "json",
|
||||
"format": "{}",
|
||||
@@ -123,7 +190,7 @@
|
||||
},
|
||||
|
||||
"custom/bluetooth": {
|
||||
"exec": "~/.config/scripts/bluetooth-status.sh",
|
||||
"exec": "~/.config/waybar/scripts/bluetooth-status.sh",
|
||||
"interval": 5,
|
||||
"return-type": "json",
|
||||
"on-click": "blueman-manager",
|
||||
@@ -131,22 +198,35 @@
|
||||
},
|
||||
|
||||
"custom/batterywarn": {
|
||||
"exec": "~/.config/scripts/batterywarn.sh",
|
||||
"exec": "~/.config/waybar/scripts/batterywarn.sh",
|
||||
"interval": 60,
|
||||
"format": "{}"
|
||||
},
|
||||
|
||||
"idle_inhibitor": {
|
||||
"tooltip": true,
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": " ",
|
||||
"deactivated": " "
|
||||
},
|
||||
"tooltip-format-activated": "Staying awake",
|
||||
"tooltip-format-deactivated": "Might sleep...."
|
||||
"custom/kdeconnect": {
|
||||
"format": "{name} {battery}% ",
|
||||
"interval": 10,
|
||||
"exec": "~/.config/waybar/scripts/kdeconnect-status.sh",
|
||||
"tooltip": true
|
||||
},
|
||||
|
||||
"custom/notifications": {
|
||||
"tooltip": false,
|
||||
"return-type": "json",
|
||||
"exec-if": "which swaync-client",
|
||||
"exec": "swaync-client -swb",
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"notification": "",
|
||||
"none": "",
|
||||
"dnd-notification": "",
|
||||
"dnd-none": "",
|
||||
},
|
||||
"on-click": "swaync-client -t",
|
||||
"on-click-right": "swaync-client -d",
|
||||
"on-click-middle": "swaync-client -dn",
|
||||
},
|
||||
|
||||
"custom/power": {
|
||||
"format": "",
|
||||
"on-click": "qs -c powermenu",
|
||||
@@ -173,6 +253,17 @@
|
||||
"orientation": "horizontal"
|
||||
},
|
||||
|
||||
"idle_inhibitor": {
|
||||
"tooltip": true,
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": " ",
|
||||
"deactivated": " "
|
||||
},
|
||||
"tooltip-format-activated": "Staying awake",
|
||||
"tooltip-format-deactivated": "Might sleep...."
|
||||
},
|
||||
|
||||
"network": {
|
||||
"format-wifi": " ({bandwidthDownBits})",
|
||||
"format-ethernet": " ({bandwidthDownBits})",
|
||||
@@ -199,10 +290,28 @@
|
||||
|
||||
"tray": {
|
||||
"spacing": 10,
|
||||
"icon-size": 14
|
||||
"icon-size": 13
|
||||
},
|
||||
|
||||
|
||||
"clock": {
|
||||
"format": "{:%H:%M}",
|
||||
"tooltip-format": "<tt><small>{calendar}</small></tt>",
|
||||
"calendar": {
|
||||
"mode" : "year",
|
||||
"mode-mon-col" : 3,
|
||||
"weeks-pos" : "left",
|
||||
"on-scroll" : 1,
|
||||
"on-click-right": "mode",
|
||||
"format": {
|
||||
"months": "<span color='#fab387'><b>{}</b></span>",
|
||||
"days": "<span color='#cba6f7'><b>{}</b></span>",
|
||||
"weeks": "<span color='#a6e3a1'><b>W{}</b></span>",
|
||||
"weekdays": "<span color='#f9e2af'><b>{}</b></span>",
|
||||
"today": "<span color='#1e1e2e' bgcolor='#a6e3a1'>{}</span>"
|
||||
}
|
||||
},
|
||||
"on-click": "flatpak run eu.betterbird.Betterbird -calendar"
|
||||
},
|
||||
|
||||
"battery": {
|
||||
"bat": "BAT0",
|
||||
@@ -215,5 +324,15 @@
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-icons": ["", "", "", "", " "]
|
||||
},
|
||||
|
||||
"keyboard-state": {
|
||||
"numlock": true,
|
||||
"capslock": true,
|
||||
"format": "{name} {icon}",
|
||||
"format-icons": {
|
||||
"locked": "",
|
||||
"unlocked": ""
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
#!/usr/bin/env bash
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
DEVICE=$(kdeconnect-cli --list-devices | grep -oP '(?<=\().*?(?=\))' | head -n 1)
|
||||
|
||||
if [ -z "$DEVICE" ]; then
|
||||
echo "No phone"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
NAME=$(kdeconnect-cli -d "$DEVICE" --name 2>/dev/null)
|
||||
BATTERY=$(kdeconnect-cli -d "$DEVICE" --battery 2>/dev/null | grep -o '[0-9]\+' | head -n 1)
|
||||
|
||||
if [ -z "$BATTERY" ]; then
|
||||
echo "$NAME"
|
||||
else
|
||||
echo "$NAME $BATTERY%"
|
||||
fi
|
||||
@@ -1,5 +1,5 @@
|
||||
/* --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. --- */
|
||||
@import url("file:///home/henrov/.config/shared/Colors.css");
|
||||
@import url("file:///home/henrov/.config/shared/css/colors.css");
|
||||
|
||||
/* --- Global --- */
|
||||
* {
|
||||
@@ -16,14 +16,71 @@
|
||||
window#waybar {
|
||||
background-color: transparent;
|
||||
color: @text;
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
/* --------------------------------------------------------- */
|
||||
|
||||
/* ---------GROUPS------------------------------------------------ */
|
||||
|
||||
/* --- Group-level theming --- */
|
||||
#hardware,
|
||||
#workspaces,
|
||||
#sporadic,
|
||||
#audio,
|
||||
#tray,
|
||||
#datestuff,
|
||||
#system,
|
||||
#notifications,
|
||||
#connections {
|
||||
color: @text;
|
||||
font-weight: bold;
|
||||
border-radius: 30px;
|
||||
/* --- Option 1 Green blue filled
|
||||
background:
|
||||
linear-gradient(transparent, transparent) padding-box,
|
||||
linear-gradient(45deg, @blue, @green) border-box;
|
||||
border: 2px solid transparent;
|
||||
--- */
|
||||
/* --- Option 2 default background green blue border
|
||||
background:
|
||||
linear-gradient(@base, @base) padding-box,
|
||||
linear-gradient(45deg, @blue, @green) border-box;
|
||||
border: 2px solid transparent;
|
||||
*/
|
||||
/* --- Option 3 NO background, no border */
|
||||
background: transparent;
|
||||
border: 2px solid transparent;
|
||||
/* --- Option 5 Solid border
|
||||
background: transparent;
|
||||
border: 2px solid @border;
|
||||
--- */
|
||||
margin: 0px 3px;
|
||||
padding: 1px 4px;
|
||||
}
|
||||
|
||||
/* --- Group-level label padding --- */
|
||||
#hardware label,
|
||||
#workspaces label,
|
||||
#sporadic label,
|
||||
#audio label,
|
||||
#tray label,
|
||||
#datestuff label,
|
||||
#system label,
|
||||
#notifications label,
|
||||
#connections label {
|
||||
padding: 0px 5px;
|
||||
transition: padding 0.2s ease;
|
||||
}
|
||||
|
||||
/* --- Group anchors default visible --- */
|
||||
#custom-hardware-anchor,
|
||||
#custom-tray-anchor,
|
||||
#custom-system-anchor,
|
||||
#custom-connections-anchor {
|
||||
min-width: 80px;
|
||||
/* min-width: 80px; */
|
||||
padding: 0 5px;
|
||||
margin: 0 2px;
|
||||
opacity: 1;
|
||||
@@ -32,6 +89,8 @@ window#waybar {
|
||||
|
||||
/* --- Hide anchors on hover of the group --- */
|
||||
#hardware:hover #custom-hardware-anchor,
|
||||
#tray:hover #custom-tray-anchor,
|
||||
#system:hover #custom-system-anchor,
|
||||
#connections:hover #custom-connections-anchor {
|
||||
opacity: 0;
|
||||
min-width: 0;
|
||||
@@ -39,45 +98,15 @@ window#waybar {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#hardware:hover,
|
||||
#connections:hover {
|
||||
min-width: 80px;
|
||||
}
|
||||
|
||||
/* MODULES */
|
||||
.modules-left > widget,
|
||||
.modules-center > widget,
|
||||
.modules-right > widget {
|
||||
min-width: 80px;
|
||||
color: @text;
|
||||
font-weight: bold;
|
||||
border-radius: 30px;
|
||||
background:
|
||||
linear-gradient(@base-alpha, @base-alpha) padding-box,
|
||||
linear-gradient(45deg, @blue, @green) border-box;
|
||||
border: 2px solid transparent;
|
||||
}
|
||||
|
||||
.modules-left > box + box,
|
||||
.modules-center > box + box,
|
||||
.modules-right > box + box {
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.modules-left > widget label,
|
||||
.modules-left > label ,
|
||||
.modules-center > widget label,
|
||||
.modules-center > label,
|
||||
.modules-right > widget label,
|
||||
.modules-right > label {
|
||||
padding: 0px 5px;
|
||||
transition: padding 0.2s ease;
|
||||
}
|
||||
|
||||
/* -----------------------------
|
||||
WORKSPACES / WINDOWS MODULE
|
||||
----------------------------- */
|
||||
|
||||
#workspaces {
|
||||
border: none;
|
||||
background: none;
|
||||
}
|
||||
|
||||
/* Disable hover effects completely */
|
||||
#workspaces button,
|
||||
#workspaces button:hover {
|
||||
@@ -85,11 +114,11 @@ window#waybar {
|
||||
padding: 0 6px;
|
||||
margin: 0;
|
||||
border-radius: 30px;
|
||||
transition: none; /* disable hover animation */
|
||||
transition: none;
|
||||
}
|
||||
|
||||
/* Active vs inactive workspace colors */
|
||||
#workspaces button.active {
|
||||
#workspaces button.active {
|
||||
background: linear-gradient(45deg, @blue, @green);
|
||||
color: @base;
|
||||
}
|
||||
@@ -97,7 +126,7 @@ window#waybar {
|
||||
activeworkspaces:not(.active) {
|
||||
background: linear-gradient(@base-alpha, @base-alpha);
|
||||
border: 2px solid transparent;
|
||||
color: @text-muted; /* inactive text color */
|
||||
color: @text-muted;
|
||||
}
|
||||
|
||||
label#custom-windows.module {
|
||||
@@ -136,8 +165,9 @@ label#custom-windows:not(.active) {
|
||||
/* ---- Pulseaudio ---*/
|
||||
|
||||
#pulseaudio-slider {
|
||||
padding: 0;
|
||||
padding: 0 4px;
|
||||
margin: 0;
|
||||
min-width: 140px;
|
||||
}
|
||||
#pulseaudio-slider slider {
|
||||
min-height: 0px;
|
||||
@@ -147,10 +177,12 @@ label#custom-windows:not(.active) {
|
||||
background: linear-gradient(45deg, @blue, @green);
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
#pulseaudio-slider trough {
|
||||
min-height: 10px;
|
||||
min-width: 80px;
|
||||
min-width: 120px;
|
||||
border-radius: 30px;
|
||||
background: transparent;
|
||||
}
|
||||
@@ -161,8 +193,11 @@ label#custom-windows:not(.active) {
|
||||
border: 2px solid transparent;
|
||||
}
|
||||
|
||||
|
||||
/* --------------------------------------------------------- */
|
||||
/* STATES / SPECIALS */
|
||||
#custom-notifications.notification,
|
||||
#custom-notifications.dnd-notification,
|
||||
#idle_inhibitor.activated {
|
||||
background: linear-gradient(45deg, @blue, @green);
|
||||
border: 2px solid transparent;
|
||||
@@ -174,24 +209,31 @@ label#custom-windows:not(.active) {
|
||||
color: @green;
|
||||
}
|
||||
|
||||
#battery.warning:not(.charging) {
|
||||
color: white;
|
||||
#batterywarn {
|
||||
color: @red;
|
||||
animation: blink 0.5s linear infinite alternate;
|
||||
border-radius: 30px;
|
||||
border: 2px solid transparent;
|
||||
}
|
||||
|
||||
#custom-battery-warn {
|
||||
#battery.warning:not(.charging) {
|
||||
color: @text;
|
||||
animation: blink 0.5s linear infinite alternate;
|
||||
border-radius: 30px;
|
||||
border: 2px solid transparent;
|
||||
}
|
||||
|
||||
#custom-batterywarn {
|
||||
margin: 0 5px;
|
||||
padding: 0 10px;
|
||||
color: white;
|
||||
color: @red;
|
||||
animation: blink 0.5s linear infinite alternate;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #ffffff;
|
||||
color: black;
|
||||
color: @base;
|
||||
border-radius: 30px;
|
||||
border: 2px solid transparent;
|
||||
}
|
||||
@@ -208,18 +250,3 @@ label#custom-windows:not(.active) {
|
||||
border-radius: 30px;
|
||||
border: 2px solid transparent;
|
||||
}
|
||||
|
||||
/* --------------------------------------------------------- */
|
||||
/* GLOBAL MODULE SPACING */
|
||||
#clock,
|
||||
#idle_inhibitor,
|
||||
#battery:not(.warn),
|
||||
#cpu,
|
||||
#memory,
|
||||
#temperature,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#tray {
|
||||
margin: 0 5px;
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. --- */
|
||||
@import "~/.config/shared/Colors.css";
|
||||
@import "~/.config/shared/css/colors.css";
|
||||
|
||||
* {
|
||||
background-color: transparent;
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
// --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
// Zed settings
|
||||
//
|
||||
// For information on how to configure Zed, see the Zed
|
||||
@@ -8,21 +7,23 @@
|
||||
// custom settings, run `zed: open default settings` from the
|
||||
// command palette (cmd-shift-p / ctrl-shift-p)
|
||||
{
|
||||
"icon_theme": "Catppuccin Mocha",
|
||||
"agent": {
|
||||
"default_model": {
|
||||
"provider": "ollama",
|
||||
"model": "codellama:34b",
|
||||
"enable_thinking": false
|
||||
},
|
||||
"favorite_models": [],
|
||||
"model_parameters": []
|
||||
},
|
||||
"ui_font_size": 16,
|
||||
"buffer_font_size": 15,
|
||||
"theme": {
|
||||
"mode": "dark",
|
||||
"light": "One Light",
|
||||
"mode": "system",
|
||||
"light": "Catppuccin Frappé",
|
||||
"dark": "Catppuccin Mocha",
|
||||
},
|
||||
"icon_theme": {
|
||||
"mode": "system",
|
||||
"light": "Catppuccin Frappé",
|
||||
"dark": "Catppuccin Mocha"
|
||||
},
|
||||
"auto_install_extensions": {
|
||||
"catppuccin": true,
|
||||
"catppuccin-icons": true,
|
||||
"org-mode": true,
|
||||
"lua": true,
|
||||
"sql": true
|
||||
},
|
||||
"ui_font_size": 16,
|
||||
"buffer_font_size": 15,
|
||||
}
|
||||
|
||||
@@ -9,7 +9,6 @@ brave
|
||||
btop
|
||||
chromium
|
||||
cliphist
|
||||
collabora-online
|
||||
comma
|
||||
direnv
|
||||
duf
|
||||
@@ -23,11 +22,13 @@ git
|
||||
gparted
|
||||
grim
|
||||
grimblast
|
||||
galculator
|
||||
gnome-calculator
|
||||
qalculate-gtk
|
||||
handbrake
|
||||
hyperfine
|
||||
just
|
||||
jq
|
||||
libinput
|
||||
libreoffice
|
||||
lua
|
||||
nextcloud-client
|
||||
@@ -35,6 +36,7 @@ nextcloud-talk-desktop
|
||||
nix-index
|
||||
nix-output-monitor
|
||||
nh
|
||||
numlockx
|
||||
obsidian
|
||||
openssl
|
||||
pandoc
|
||||
@@ -44,6 +46,7 @@ qdirstat
|
||||
ripgrep
|
||||
signal-desktop
|
||||
slurp
|
||||
solidtime-desktop
|
||||
spotify
|
||||
solaar
|
||||
swappy
|
||||
@@ -65,3 +68,4 @@ zoxide
|
||||
#flatpaks
|
||||
eu.betterbird.Betterbird
|
||||
com.todoist.Todoist
|
||||
com.logseq.Logseq
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ config, pkgs, lib, flakeRoot, ... }:
|
||||
{
|
||||
boot.loader = {
|
||||
|
||||
@@ -36,7 +36,8 @@ in
|
||||
./hardware-configuration.nix
|
||||
]
|
||||
++ allModules
|
||||
++ [ home-manager.nixosModules.home-manager ];
|
||||
++ [ home-manager.nixosModules.home-manager ]
|
||||
;
|
||||
|
||||
#################################
|
||||
# Home Manager integration
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ pkgs, config, lib, ... }:
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
in
|
||||
{
|
||||
############################
|
||||
# System-level packages
|
||||
############################
|
||||
environment.systemPackages = with pkgs; [
|
||||
flameshot
|
||||
];
|
||||
|
||||
############################
|
||||
# Home Manager user-level configuration
|
||||
############################
|
||||
home-manager.users."${username}" = {
|
||||
home.sessionVariables = {
|
||||
SCREENSHOT_TOOL = "flameshot";
|
||||
USERNAME = username;
|
||||
};
|
||||
|
||||
# Create ~/Pictures/Screenshots by touching a dummy file
|
||||
home.file."Pictures/Screenshots/.keep" = {
|
||||
text = ""; # empty file
|
||||
};
|
||||
|
||||
home.file.".config/flameshot/flameshot.ini".text = ''
|
||||
[General]
|
||||
; Border color: A solid blend of @blue and @green (approximates the gradient)
|
||||
buttonColor=#95c2e0
|
||||
; Sidebar and inactive elements: Use @surface2 for subtlety
|
||||
sidebarColor=#585b70
|
||||
; Active buttons: Use @peach for contrast
|
||||
buttonActiveColor=#fab387
|
||||
; Text/icons: Use @text for readability
|
||||
contrastingUIColor=#cdd6f4
|
||||
showDesktopNotification=true
|
||||
savePath=${config.xdg.picturesDir}/Screenshots
|
||||
filenamePattern=$Y-$m-$d_$H-$M-$S
|
||||
copyPathAfterCapture=true
|
||||
'';
|
||||
};
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ config, pkgs, ... }:
|
||||
let
|
||||
username = "henrov";
|
||||
username = config.defaultUser or "henrov";
|
||||
in
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
@@ -17,16 +17,4 @@ in
|
||||
Restart = "on-failure";
|
||||
};
|
||||
};
|
||||
|
||||
systemd.users.userLinger = [${username}];
|
||||
|
||||
# Hyprland config (if managed via Nix)
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
config = {
|
||||
autostart = [
|
||||
"systemctl --user start kdeconnect.service"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -3,9 +3,7 @@
|
||||
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
extraConfigFile = "${flakeRoot}/generated/.config/kitty/extra.conf";
|
||||
|
||||
extraConfig =
|
||||
if builtins.pathExists extraConfigFile
|
||||
then builtins.readFile extraConfigFile
|
||||
@@ -18,16 +16,13 @@ in
|
||||
environment.systemPackages = [
|
||||
pkgs.kitty
|
||||
];
|
||||
|
||||
#################################
|
||||
# Home Manager
|
||||
#################################
|
||||
home-manager.users = {
|
||||
"${username}" = {
|
||||
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
confirm_os_window_close = lib.mkForce 0;
|
||||
dynamic_background_opacity = lib.mkForce true;
|
||||
@@ -36,11 +31,10 @@ in
|
||||
window_padding_width = lib.mkForce 10;
|
||||
background_opacity = lib.mkForce "0.5";
|
||||
background_blur = lib.mkForce 5;
|
||||
notify_on_command_complete = lib.mkForce "never";
|
||||
};
|
||||
|
||||
extraConfig = ''
|
||||
${extraConfig}
|
||||
|
||||
# Theme
|
||||
include themes/Catppuccin-Mocha.conf
|
||||
'';
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ config, lib, pkgs, ... }:
|
||||
with lib;
|
||||
let
|
||||
transip-stack = pkgs.appimageTools.wrapType2 {
|
||||
pname = "transip-stack";
|
||||
version = "latest";
|
||||
src = pkgs.fetchurl {
|
||||
url = "https://filehosting-client.transip.nl/packages/stack-linux-latest-x86_64.AppImage";
|
||||
sha256 = "1cmwc3mfpi7n3ga25p19pmsjmvkiy8hk4s4mxdsxkprw2vvrhwd7";
|
||||
};
|
||||
extraPkgs = pkgsFinal: with pkgsFinal; [ fuse ];
|
||||
};
|
||||
in {
|
||||
environment.systemPackages = [ transip-stack ];
|
||||
}
|
||||
@@ -3,22 +3,24 @@
|
||||
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
assetPath = "${flakeRoot}/generated/.config/wofi";
|
||||
sysName = "wofi";
|
||||
assetPath = "${flakeRoot}/generated/.config/${sysName}";
|
||||
in
|
||||
{
|
||||
environment.systemPackages = [ pkgs.wofi ];
|
||||
|
||||
home-manager.users = {
|
||||
${username} = {
|
||||
home.file = {
|
||||
".config/wofi/config" = {
|
||||
text = builtins.readFile "${assetPath}/config";
|
||||
force = true;
|
||||
};
|
||||
".config/wofi/style.css" = {
|
||||
text = builtins.replaceStrings ["PLACEHOLDER_USERNAME"] [username] (builtins.readFile "${assetPath}/style.css");
|
||||
force = true;
|
||||
};
|
||||
home.activation.MakeWofiMutable = {
|
||||
after = [ "writeBoundary" ];
|
||||
before = [];
|
||||
data = ''
|
||||
rm -rf $HOME/.config/${sysName}
|
||||
mkdir -p $HOME/.config/${sysName}
|
||||
cp -r ${assetPath}/* $HOME/.config/${sysName}/
|
||||
chmod -R u+w $HOME/.config/${sysName}/
|
||||
find $HOME/.config/${sysName}/ -name "*.sh" -exec chmod +x {} \;
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
sysName = "zed";
|
||||
assetPath = "${flakeRoot}/generated/.config/${sysName}";
|
||||
in
|
||||
{
|
||||
environment.systemPackages = [ pkgs.zed-editor ];
|
||||
|
||||
environment.sessionVariables = {
|
||||
EDITOR = "zeditor";
|
||||
VISUAL = "zeditor";
|
||||
};
|
||||
|
||||
xdg.mime.defaultApplications = {
|
||||
"text/plain" = "dev.zed.Zed.desktop";
|
||||
"text/x-lua" = "dev.zed.Zed.desktop";
|
||||
"text/x-sql" = "dev.zed.Zed.desktop";
|
||||
"text/x-org" = "dev.zed.Zed.desktop";
|
||||
"text/x-script.python" = "dev.zed.Zed.desktop";
|
||||
"text/x-shellscript" = "dev.zed.Zed.desktop";
|
||||
"text/x-csrc" = "dev.zed.Zed.desktop";
|
||||
"text/x-chdr" = "dev.zed.Zed.desktop";
|
||||
"text/x-rust" = "dev.zed.Zed.desktop";
|
||||
"text/x-toml" = "dev.zed.Zed.desktop";
|
||||
"text/x-yaml" = "dev.zed.Zed.desktop";
|
||||
"text/x-json" = "dev.zed.Zed.desktop";
|
||||
"application/json" = "dev.zed.Zed.desktop";
|
||||
"text/markdown" = "dev.zed.Zed.desktop";
|
||||
"text/x-nix" = "dev.zed.Zed.desktop";
|
||||
};
|
||||
|
||||
home-manager.users.${username} = {
|
||||
home.activation.MakeZedMutable = {
|
||||
after = [ "writeBoundary" ];
|
||||
before = [];
|
||||
data = ''
|
||||
rm -rf $HOME/.config/${sysName}
|
||||
mkdir -p $HOME/.config/${sysName}
|
||||
cp -r ${assetPath}/* $HOME/.config/${sysName}/
|
||||
chmod -R u+w $HOME/.config/${sysName}/
|
||||
find $HOME/.config/${sysName}/ -name "*.sh" -exec chmod +x {} \;
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,37 +1,36 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ lib, config, pkgs, flakeRoot, home-manager, inputs, ... }:
|
||||
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
assetPath = "${flakeRoot}/generated/.config/hypr";
|
||||
|
||||
sysName = "hypr";
|
||||
assetPath = "${flakeRoot}/generated/.config/${sysName}";
|
||||
hyprlandPkg =
|
||||
pkgs.hyprland or
|
||||
pkgs.hyprland-git or
|
||||
inputs.hyprland.packages.${pkgs.system}.default;
|
||||
|
||||
in
|
||||
{
|
||||
# Install Hyprland systemwide
|
||||
programs.hyprland.enable = true;
|
||||
programs.hyprland.withUWSM = true;
|
||||
programs.hyprland.package = hyprlandPkg;
|
||||
|
||||
environment.systemPackages = [ hyprlandPkg ];
|
||||
|
||||
# Home Manager user configuration
|
||||
home-manager.users = {
|
||||
${username} = {
|
||||
home.file = {
|
||||
".config/hypr/animations.conf" = { source = "${assetPath}/animations.conf"; force = true; };
|
||||
".config/hypr/behaviour.conf" = { source = "${assetPath}/behaviour.conf"; force = true; };
|
||||
".config/hypr/bindings.conf" = { source = "${assetPath}/bindings.conf"; force = true; };
|
||||
".config/hypr/exec-once.conf" = { source = "${assetPath}/exec-once.conf"; force = true; };
|
||||
".config/hypr/hypridle.conf" = { source = "${assetPath}/hypridle.conf"; force = true; };
|
||||
".config/hypr/hyprland.conf" = { source = "${assetPath}/hyprland.conf"; force = true; };
|
||||
".config/hypr/hyprlock.conf" = { source = "${assetPath}/hyprlock.conf"; force = true; };
|
||||
".config/hypr/layer-rules.conf" = { source = "${assetPath}/layer-rules.conf"; force = true; };
|
||||
".config/hypr/layout.conf" = { source = "${assetPath}/layout.conf"; force = true; };
|
||||
".config/hypr/monitor-rules.conf" = { source = "${assetPath}/monitor-rules.conf"; force = true; };
|
||||
".config/hypr/theming.conf" = { source = "${assetPath}/theming.conf"; force = true; };
|
||||
".config/hypr/window-rules.conf" = { source = "${assetPath}/window-rules.conf"; force = true; };
|
||||
".config/hypr/workspace-rules.conf" = { source = "${assetPath}/workspace-rules.conf"; force = true; };
|
||||
|
||||
home.activation.MakeHyprMutable = {
|
||||
after = [ "writeBoundary" ];
|
||||
before = [];
|
||||
data = ''
|
||||
rm -rf $HOME/.config/${sysName}
|
||||
mkdir -p $HOME/.config/${sysName}
|
||||
cp -r ${assetPath}/* $HOME/.config/${sysName}/
|
||||
chmod -R u+w $HOME/.config/${sysName}/
|
||||
find $HOME/.config/${sysName}/ -name "*.sh" -exec chmod +x {} \;
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -6,16 +6,35 @@ let
|
||||
homeDir = "/home/${username}";
|
||||
wallpaperSrc = "${flakeRoot}/assets/traveldroid/Wallpapers";
|
||||
wallpaperDst = "${homeDir}/Wallpapers";
|
||||
randoScript = "${homeDir}/Wallpapers/scripts/randomizeWallpapers.sh";
|
||||
sysName = "awww";
|
||||
assetPath = "${flakeRoot}/generated/.config/${sysName}";
|
||||
randoScript = "${homeDir}/.config/${sysName}/scripts/randomizeWallpapers.sh";
|
||||
in
|
||||
{
|
||||
# Make bash available
|
||||
environment.systemPackages = [ pkgs.bash pkgs.rsync pkgs.jq pkgs.awww pkgs.waypaper pkgs.socat ];
|
||||
environment.systemPackages = [
|
||||
pkgs.bash
|
||||
pkgs.rsync
|
||||
pkgs.jq
|
||||
pkgs.awww
|
||||
pkgs.waypaper pkgs.socat ];
|
||||
|
||||
# Create the copy script using Home Manager, following Waybar style
|
||||
# This can not be done using a prepared script
|
||||
home-manager.users = {
|
||||
${username} = {
|
||||
home.file = {
|
||||
home.activation.MakeWallpaperMutable = {
|
||||
after = [ "writeBoundary" ];
|
||||
before = [];
|
||||
data = ''
|
||||
rm -rf $HOME/.config/${sysName}
|
||||
mkdir -p $HOME/.config/${sysName}
|
||||
cp -r ${assetPath}/* $HOME/.config/${sysName}/
|
||||
chmod -R u+w $HOME/.config/${sysName}/
|
||||
find $HOME/.config/${sysName}/ -name "*.sh" -exec chmod +x {} \;
|
||||
'';
|
||||
};
|
||||
home.file = {
|
||||
"copy-wallpapers.sh" = {
|
||||
text = ''
|
||||
#!/run/current-system/sw/bin/bash
|
||||
@@ -35,11 +54,10 @@ in
|
||||
'';
|
||||
executable = true;
|
||||
force = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
# User service to run the script that copies the Wallpaperstuff
|
||||
systemd.user.services.copyWallpapers = {
|
||||
description = "Copy wallpapers from repo to ~/Wallpapers";
|
||||
@@ -63,29 +81,4 @@ in
|
||||
};
|
||||
wantedBy = [ "default.target" ];
|
||||
};
|
||||
|
||||
############################
|
||||
# Random background per workspace at logon
|
||||
############################
|
||||
|
||||
systemd.user.services.workspaceWallpapers = {
|
||||
description = "Dynamic wallpapers per workspace for Hyprland";
|
||||
after = [ "graphical-session.target" ];
|
||||
wants = [ "graphical-session.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${homeDir}/Wallpapers/scripts/workspace-wallpapers.sh";
|
||||
Restart = "on-failure";
|
||||
RestartSec = 5;
|
||||
WorkingDirectory = homeDir;
|
||||
Environment = [
|
||||
"HYPRLAND_INSTANCE_SIGNATURE=${builtins.getEnv "HYPRLAND_INSTANCE_SIGNATURE"}"
|
||||
"WAYLAND_DISPLAY=wayland-1"
|
||||
"PATH=/run/current-system/sw/bin:/usr/bin:/bin"
|
||||
];
|
||||
};
|
||||
|
||||
wantedBy = [ "default.target" ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,50 +1,31 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
let
|
||||
# Use the config option defaultUser directly, fallback to "henrov"
|
||||
username = config.defaultUser or "henrov";
|
||||
basePath = "${flakeRoot}/generated/.config";
|
||||
assetPath = "${flakeRoot}/generated/.config/waybar";
|
||||
sysName = "waybar";
|
||||
assetPath = "${flakeRoot}/generated/.config/${sysName}";
|
||||
in
|
||||
{
|
||||
# Install Waybar system-wide
|
||||
environment.systemPackages = [ pkgs.waybar ];
|
||||
|
||||
home-manager.users = {
|
||||
${username} = {
|
||||
home.file = {
|
||||
".config/waybar/config" = {
|
||||
text = builtins.readFile "${assetPath}/config";
|
||||
force = true;
|
||||
};
|
||||
".config/waybar/style-dark.css" = {
|
||||
text = builtins.replaceStrings ["henrov"] [username] (builtins.readFile "${assetPath}/style-dark.css");
|
||||
force = true;
|
||||
};
|
||||
".config/scripts/bluetooth-status.sh" = {
|
||||
text = builtins.readFile "${basePath}/scripts/bluetooth-status.sh";
|
||||
force = true;
|
||||
executable = true;
|
||||
};
|
||||
".config/scripts/hypr-workspaces.sh" = {
|
||||
text = builtins.readFile "${basePath}/scripts/hypr-workspaces.sh";
|
||||
force = true;
|
||||
executable = true;
|
||||
};
|
||||
".config/scripts/hypr-workspacesmenu.sh" = {
|
||||
text = builtins.readFile "${basePath}/scripts/hypr-workspacesmenu.sh";
|
||||
force = true;
|
||||
executable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
home-manager.users.${username} = {
|
||||
home.activation.MakeWaybarMutable = {
|
||||
after = [ "writeBoundary" ];
|
||||
before = [];
|
||||
data = ''
|
||||
rm -rf $HOME/.config/${sysName}
|
||||
mkdir -p $HOME/.config/${sysName}
|
||||
cp -r ${assetPath}/* $HOME/.config/${sysName}/
|
||||
chmod -R u+w $HOME/.config/${sysName}/
|
||||
find $HOME/.config/${sysName}/ -name "*.sh" -exec chmod +x {} \;
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
# Systemd user service for Waybar
|
||||
systemd.user.services.waybar = {
|
||||
description = "Waybar for Hyprland";
|
||||
after = [ "graphical-session.target" ];
|
||||
|
||||
wantedBy = [ "default.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.waybar}/bin/waybar";
|
||||
Restart = "always";
|
||||
@@ -53,7 +34,5 @@ in
|
||||
XDG_CURRENT_DESKTOP=Hyprland
|
||||
'';
|
||||
};
|
||||
|
||||
wantedBy = [ "default.target" ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,45 +1,62 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
|
||||
let
|
||||
# Use the config option defaultUser directly, fallback to "henrov"
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
# Portal backends
|
||||
basePortal = pkgs.xdg-desktop-portal-gtk; # full portal implementation
|
||||
hyprlandPortal = pkgs.xdg-desktop-portal-hyprland; # Hyprland screencast
|
||||
homeDir = "/home/${username}";
|
||||
basePortal = pkgs.xdg-desktop-portal-gtk;
|
||||
hyprlandPortal = pkgs.xdg-desktop-portal-hyprland;
|
||||
in
|
||||
{
|
||||
#################################
|
||||
# Enable XDG desktop portals system-wide
|
||||
# XDG Desktop Portals (system)
|
||||
#################################
|
||||
xdg.portal.enable = true;
|
||||
|
||||
# Base + Hyprland portals
|
||||
xdg.portal.extraPortals = [ basePortal hyprlandPortal ];
|
||||
|
||||
# Map screencast interface explicitly to Hyprland
|
||||
xdg.portal.xdgOpenUsePortal = true;
|
||||
xdg.portal.extraPortals = [
|
||||
basePortal
|
||||
hyprlandPortal
|
||||
];
|
||||
xdg.portal.config = {
|
||||
"org.freedesktop.impl.portal.Screencast".backend = "hyprland";
|
||||
common = {
|
||||
default = [ "hyprland" "gtk" ];
|
||||
};
|
||||
hyprland = {
|
||||
default = [ "hyprland" "gtk" ];
|
||||
"org.freedesktop.impl.portal.FileChooser" = [ "gtk" ];
|
||||
"org.freedesktop.impl.portal.Settings" = [ "gtk" ];
|
||||
"org.freedesktop.impl.portal.Screencast" = [ "hyprland" ];
|
||||
"org.freedesktop.impl.portal.Screenshot" = [ "hyprland" ];
|
||||
};
|
||||
};
|
||||
|
||||
#################################
|
||||
# Install portal packages system-wide
|
||||
# System packages
|
||||
#################################
|
||||
environment.systemPackages = [
|
||||
basePortal
|
||||
hyprlandPortal
|
||||
];
|
||||
|
||||
#################################
|
||||
# Home Manager user configuration
|
||||
# Home Manager user config
|
||||
#################################
|
||||
home-manager.users = {
|
||||
${username} = {
|
||||
home.packages = [
|
||||
basePortal
|
||||
hyprlandPortal
|
||||
];
|
||||
home-manager.users.${username} = {
|
||||
#################################
|
||||
# XDG user directories
|
||||
#################################
|
||||
xdg.userDirs = {
|
||||
enable = true;
|
||||
createDirectories = true;
|
||||
desktop = null;
|
||||
download = "${homeDir}/Downloads";
|
||||
documents = "${homeDir}/Documents";
|
||||
pictures = "${homeDir}/Pictures";
|
||||
music = null;
|
||||
publicShare = null;
|
||||
templates = "${homeDir}/Experiments";
|
||||
videos = "${homeDir}/Videos";
|
||||
extraConfig = {
|
||||
XDG_PROJECTS_DIR = "${homeDir}/Projects";
|
||||
XDG_WORK_DIR = "${homeDir}/Work";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
let
|
||||
colors = {
|
||||
border = "#96cdd2";
|
||||
crust = "#11111b";
|
||||
mantle = "#181825";
|
||||
base = "#1e1e2e";
|
||||
@@ -31,14 +32,6 @@ let
|
||||
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
cssContent = ''
|
||||
/* Catppuccin Mocha Palette - auto-generated, do not edit manually */
|
||||
'' + lib.concatStringsSep "\n" (
|
||||
lib.mapAttrsToList (name: value:
|
||||
"@define-color ${name} ${value};"
|
||||
) colors
|
||||
) + "\n@define-color base-alpha rgba(30, 30, 46, 0.9);";
|
||||
|
||||
qmlContent = ''
|
||||
pragma Singleton
|
||||
// Catppuccin Mocha Palette - auto-generated, do not edit manually
|
||||
@@ -55,8 +48,8 @@ in
|
||||
{
|
||||
home-manager.users.${username} = {
|
||||
home.file = {
|
||||
".config/shared/Colors.css" = {
|
||||
text = cssContent;
|
||||
".config/shared/css/colors.css" = {
|
||||
source = "${flakeRoot}/generated/.config/shared/css/colors.css";
|
||||
force = true;
|
||||
};
|
||||
".config/quickshell/Colors.qml" = {
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
configPath = flakeRoot + "/generated/.config/scripts";
|
||||
configPath = flakeRoot + "/generated/.config/shared/scripts";
|
||||
allFiles = lib.filesystem.listFilesRecursive configPath;
|
||||
|
||||
toRelative = file:
|
||||
|
||||
@@ -1,18 +1,15 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
tuigreetBin = "${pkgs.tuigreet}/bin/tuigreet";
|
||||
sessionsDir = "${pkgs.hyprland}/share/wayland-sessions";
|
||||
sessionsDir = "${pkgs.uwsm}/share/wayland-sessions";
|
||||
in
|
||||
{
|
||||
#################################
|
||||
# Greetd (tuigreet)
|
||||
#################################
|
||||
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
default_session = {
|
||||
command = ''
|
||||
@@ -21,24 +18,21 @@ in
|
||||
--remember \
|
||||
--remember-session \
|
||||
--sessions ${sessionsDir} \
|
||||
--cmd "start-hyprland"
|
||||
--cmd "uwsm start -e -D Hyprland hyprland.desktop"
|
||||
'';
|
||||
user = "greeter";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#################################
|
||||
# Fix TTY / boot noise issues
|
||||
#################################
|
||||
|
||||
systemd.services.greetd.serviceConfig = {
|
||||
Type = "idle";
|
||||
StandardInput = "tty";
|
||||
StandardOutput = "tty";
|
||||
StandardError = "journal";
|
||||
|
||||
# Prevent boot log spam on tty
|
||||
TTYPath = "/dev/tty1";
|
||||
TTYReset = true;
|
||||
TTYVHangup = true;
|
||||
TTYVTDisallocate = true;
|
||||
|
||||
@@ -36,6 +36,6 @@
|
||||
pkgs.linux-firmware
|
||||
pkgs.networkmanagerapplet
|
||||
pkgs.networkmanager_dmenu
|
||||
pkgs.iwgtk
|
||||
# pkgs.iwgtk
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,11 +1,18 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ lib, config, ... }:
|
||||
|
||||
{
|
||||
nix.settings = {
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
download-buffer-size = 536870912; # 512 MB
|
||||
cores = 2;
|
||||
max-jobs = 1;
|
||||
cores = 8;
|
||||
max-jobs = "auto";
|
||||
};
|
||||
|
||||
nix.gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
options = "--delete-older-than 30d";
|
||||
};
|
||||
|
||||
boot.loader.systemd-boot.configurationLimit = 3;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
scriptSrc = "${flakeRoot}/generated/.config/shared/scripts/numlock-check.sh";
|
||||
in
|
||||
{
|
||||
environment.systemPackages = [ pkgs.numlockx pkgs.libinput ];
|
||||
|
||||
home-manager.users.${username} = {
|
||||
home.activation.installNumlockScript = {
|
||||
after = [ "writeBoundary" ];
|
||||
before = [];
|
||||
data = ''
|
||||
mkdir -p $HOME/.config/shared/scripts
|
||||
cp ${scriptSrc} $HOME/.config/shared/scripts/numlock-check.sh
|
||||
chmod u+x $HOME/.config/shared/scripts/numlock-check.sh
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user.services.numlock-check = {
|
||||
description = "Check and set numlock based on keyboard count";
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "%h/.config/shared/scripts/numlock-check.sh";
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user.timers.numlock-check = {
|
||||
description = "Run numlock check periodically";
|
||||
wantedBy = [ "timers.target" ];
|
||||
timerConfig = {
|
||||
OnBootSec = "5s";
|
||||
OnUnitActiveSec = "10s";
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,28 +1,14 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ pkgs, lib, config, flakeRoot, ... }:
|
||||
{ pkgs, lib, config, flakeRoot, quickshell, ... }:
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
quickshellPath = flakeRoot + "/generated/.config/quickshell";
|
||||
allFiles = lib.filesystem.listFilesRecursive quickshellPath;
|
||||
|
||||
toRelative = file:
|
||||
let
|
||||
base = toString flakeRoot + "/generated/";
|
||||
relative = lib.removePrefix base (toString file);
|
||||
in
|
||||
builtins.unsafeDiscardStringContext relative;
|
||||
|
||||
toFileEntry = file: {
|
||||
name = toRelative file;
|
||||
value = {
|
||||
source = file;
|
||||
force = true;
|
||||
};
|
||||
};
|
||||
sysName = "quickshell";
|
||||
assetPath = "${flakeRoot}/generated/.config/${sysName}";
|
||||
quickshellPkg = quickshell.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||
in
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
quickshell
|
||||
quickshellPkg
|
||||
qt6.qtdeclarative
|
||||
qt6.qttools
|
||||
qt6.qtsvg
|
||||
@@ -36,9 +22,17 @@ in
|
||||
platformTheme = "qt5ct";
|
||||
};
|
||||
|
||||
home-manager.users = {
|
||||
${username} = {
|
||||
home.file = builtins.listToAttrs (map toFileEntry allFiles);
|
||||
home-manager.users.${username} = {
|
||||
home.activation.quickshellMutableFiles = {
|
||||
after = [ "writeBoundary" ];
|
||||
before = [];
|
||||
data = ''
|
||||
rm -rf $HOME/.config/${sysName}
|
||||
mkdir -p $HOME/.config/${sysName}
|
||||
cp -r ${assetPath}/* $HOME/.config/${sysName}/
|
||||
chmod -R u+w $HOME/.config/${sysName}/
|
||||
find $HOME/.config/${sysName}/ -name "*.sh" -exec chmod +x {} \;
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
assetPath = "${flakeRoot}/generated/.config/swaync";
|
||||
in
|
||||
{
|
||||
environment.systemPackages = [ pkgs.swaynotificationcenter pkgs.libnotify ];
|
||||
|
||||
home-manager.users.${username} = {
|
||||
# Do NOT enable services.swaync — it would claim the config files
|
||||
# and conflict with our home.file entries below.
|
||||
|
||||
home.file = {
|
||||
".config/swaync/config.json" = {
|
||||
text = builtins.readFile "${assetPath}/config.json";
|
||||
force = true;
|
||||
};
|
||||
".config/swaync/style.css" = {
|
||||
text = builtins.replaceStrings ["henrov"] [username] (builtins.readFile "${assetPath}/style.css");
|
||||
force = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Autostart swaync as a systemd user service instead
|
||||
systemd.user.services.swaync = {
|
||||
description = "SwayNotificationCenter";
|
||||
after = [ "graphical-session.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.swaynotificationcenter}/bin/swaync";
|
||||
Restart = "always";
|
||||
Environment = [
|
||||
"WAYLAND_DISPLAY=${config.environment.sessionVariables.WAYLAND_DISPLAY or "wayland-1"}"
|
||||
"XDG_CURRENT_DESKTOP=Hyprland"
|
||||
];
|
||||
};
|
||||
wantedBy = [ "default.target" ];
|
||||
};
|
||||
}
|
||||
@@ -12,7 +12,7 @@ in
|
||||
isNormalUser = true;
|
||||
home = "/home/${username}";
|
||||
hashedPassword = "$6$S7iShgBxB.77CwmP$i0njK.2r3OL5UEvgZbmwZ0rnpZ4QyJcv8p9uCmJ4AiVPSMXkQkIwMLzyAOnJ0q8.tPLIp/7EquEIZeK8qbmgw/";
|
||||
extraGroups = [ "wheel" "networkmanager" "bluetooth" ];
|
||||
extraGroups = [ "wheel" "networkmanager" "bluetooth" "input" ];
|
||||
ignoreShellProgramCheck = true; # <-- avoids the assertion
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,131 +0,0 @@
|
||||
; thunar GtkAccelMap rc-file -*- scheme -*-
|
||||
; this file is an automated accelerator map dump
|
||||
;
|
||||
; (gtk_accel_path "<Actions>/ThunarDetailsView/expandable-folders" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/f4f9b7c05a683015a19351e94cf07e3d" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-type" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-last-modified" "")
|
||||
; (gtk_accel_path "<Actions>/Thunarwindow/menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/cut" "<Primary>x")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-size" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/file-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-tab" "<Primary>w")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-previous-tab-alt" "<Primary><Shift>ISO_Left_Tab")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-window" "<Primary>n")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/clear-directory-specific-settings" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-window" "<Primary>q")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-parent" "<Alt>Up")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size-in-bytes" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-previous-tab" "<Primary>Page_Up")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open" "<Primary>o")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-ascending" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-split-view" "F3")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy-2" "<Primary>Insert")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete" "Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-recent" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-configure-toolbar" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/forward" "<Alt>Right")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location-alt" "<Alt>d")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out-alt" "<Primary>KP_Subtract")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-by-pattern" "<Primary>s")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-menu" "F10")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents" "F1")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-highlight" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-descending" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-name" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/b642744ba505349eb43f3232902f4a96" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-all-files" "<Primary>a")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/execute" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/properties" "<Alt>Return")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/cut-2" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-dtime" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/51e116aa815495db13c58c73eec99304" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-next-tab" "<Primary>Page_Down")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-templates" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste-2" "<Shift>Insert")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-filetype" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-all-windows" "<Primary><Shift>w")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-document" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/detach-tab" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/cancel-search" "Escape")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt2" "<Primary>equal")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-hidden-count" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarShortcutsPane/sendto-shortcuts" "<Primary>d")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/undo" "<Primary>z")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/f08c8da7eedf52bf1705513340708bed" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/toggle-sort-order" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-entry" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste" "<Primary>v")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt1" "<Primary>KP_Add")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menubar" "<Primary>m")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back" "<Alt>Left")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-desktop" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-detailed-list" "<Primary>2")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore-show" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/sendto-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-display-name" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/go-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out" "<Primary>minus")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/remove-from-recent" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-with-other" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/invert-selection" "<Primary><Shift>i")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-shortcuts" "<Primary>b")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-2" "Reload")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-mtime" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/edit-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy" "<Primary>c")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/bookmarks-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/forward-alt" "Forward")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/move-to-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-1" "F5")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-3" "<Shift>KP_Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload" "<Primary>r")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/arrange-items-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/unselect-all-files" "Escape")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-computer" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-image-preview" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-side-pane" "F9")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-icons" "<Primary>1")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-2" "<Shift>Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in" "<Primary>plus")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/configure-columns" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/rename" "F2")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location" "<Primary>l")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-compact-list" "<Primary>3")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/search" "<Primary>f")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-tab" "<Primary>t")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset" "<Primary>0")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents/help-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-tab" "<Primary><Shift>p")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-buttons" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back-alt2" "Back")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/redo" "<Primary><Shift>z")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-window" "<Primary><Shift>o")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-statusbar" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-location" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/duplicate" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete-2" "KP_Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back-alt1" "BackSpace")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-folder" "<Primary><Shift>n")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-home" "<Alt>Home")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-focused-split-view-pane" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-hidden" "<Primary>h")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/set-default-app" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/empty-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/preferences" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-network" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-tree" "<Primary>e")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-system" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/search-alt" "Search")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-next-tab-alt" "<Primary>Tab")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/sendto-desktop" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/make-link" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset-alt" "<Primary>KP_0")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/about" "")
|
||||
@@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<actions>
|
||||
<action>
|
||||
<icon>utilities-terminal</icon>
|
||||
<name>Open Terminal Here</name>
|
||||
<submenu></submenu>
|
||||
<unique-id>1771155705496049-1</unique-id>
|
||||
<command>exo-open --working-directory %f --launch TerminalEmulator</command>
|
||||
<description>Example for a custom action</description>
|
||||
<range></range>
|
||||
<patterns>*</patterns>
|
||||
<startup-notify/>
|
||||
<directories/>
|
||||
</action>
|
||||
<action>
|
||||
<icon></icon>
|
||||
<name>Copy Full Path</name>
|
||||
<submenu></submenu>
|
||||
<unique-id>1771928240025354-1</unique-id>
|
||||
<command>sh -c 'printf "%s" "%f" | wl-copy'</command>
|
||||
<description>Copy Full Path</description>
|
||||
<range>*</range>
|
||||
<patterns>*</patterns>
|
||||
<directories/>
|
||||
<audio-files/>
|
||||
<image-files/>
|
||||
<other-files/>
|
||||
<text-files/>
|
||||
<video-files/>
|
||||
</action>
|
||||
</actions>
|
||||
@@ -1,5 +0,0 @@
|
||||
[filter "lfs"]
|
||||
clean = "git-lfs clean -- %f"
|
||||
process = "git-lfs filter-process"
|
||||
required = true
|
||||
smudge = "git-lfs smudge -- %f"
|
||||
@@ -1,12 +0,0 @@
|
||||
# ./assets/conf/desktop/hypr/animations.conf
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
# Keyboard and mouse settings
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_options = ctrl:nocaps
|
||||
sensitivity = -0.5
|
||||
accel_profile = adaptive
|
||||
scroll_factor = 0.5
|
||||
}
|
||||
|
||||
# Scrolling modifier settings
|
||||
input {
|
||||
scroll_main_mod = alt
|
||||
scroll_main_mod_invert = no
|
||||
scroll_per_border = yes
|
||||
}
|
||||
|
||||
# Touchpad settings (applies to all touchpads)
|
||||
input:touchpad:* {
|
||||
natural_scroll = yes
|
||||
scroll_factor = 0.5
|
||||
}
|
||||
|
||||
# Focus settings
|
||||
focus {
|
||||
follow_mouse = yes
|
||||
new_windows = smart
|
||||
}
|
||||
|
||||
# Miscellaneous settings
|
||||
misc {
|
||||
resize_step = 10 10
|
||||
anim_resize_friction = 0.1
|
||||
}
|
||||
@@ -1,150 +0,0 @@
|
||||
$mainMod = SUPER
|
||||
|
||||
# use walker to show exec menu
|
||||
bind = $mainMod, Space , exec, walker
|
||||
bind = $mainMod, P, pseudo
|
||||
bind = $mainMod, T, togglesplit
|
||||
|
||||
# grimblast
|
||||
bind = $mainMod SHIFT, p, exec, grimblast -n -f copysave active
|
||||
bind = $mainMod SHIFT, a, exec, grimblast -n -f copysave area
|
||||
bind = $mainMod ALT, p, exec, grimblast -n -f copysave output
|
||||
bind = $mainMod CTRL, p, exec, grimblast -n -f copysave screen
|
||||
|
||||
# Terminal / launcher / kill / reload
|
||||
bind = $mainMod, E, exec, thunar
|
||||
bind = $mainMod, RETURN, exec, kitty
|
||||
bind = $mainMod, D, exec, wofi --show drun
|
||||
bind = $mainMod, Q, killactive,
|
||||
bind = $mainMod SHIFT, Q, exit,
|
||||
bind = $mainMod SHIFT, R, exec, hyprctl reload
|
||||
|
||||
# Switch windows
|
||||
bind = ALT, TAB, cyclenext,
|
||||
# bind = ALT SHIFT, TAB, cyclenext prev
|
||||
|
||||
# Hyprscrolling
|
||||
bind = $mainMod, period, layoutmsg, move +col
|
||||
bind = $mainMod, comma, layoutmsg, swapcol l
|
||||
# Make / break a tab-group (stack)
|
||||
bind = $mainMod, S, togglegroup
|
||||
# Cycle tabs in the group
|
||||
bind = $mainMod, L, changegroupactive, f
|
||||
bind = $mainMod, H, changegroupactive, b
|
||||
bind = $mainMod, T, exec, ~/.config/hypr/scripts/toggle-layout-scrolling-dwindle.sh
|
||||
|
||||
# Focus movement
|
||||
bind = $mainMod, H, movefocus, l
|
||||
bind = $mainMod, L, movefocus, r
|
||||
bind = $mainMod, K, movefocus, u
|
||||
bind = $mainMod, J, movefocus, d
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
|
||||
# Move windows
|
||||
bind = $mainMod SHIFT, H, movewindow, l
|
||||
bind = $mainMod SHIFT, L, movewindow, r
|
||||
bind = $mainMod SHIFT, K, movewindow, u
|
||||
bind = $mainMod SHIFT, J, movewindow, d
|
||||
bind = $mainMod SHIFT, left, movewindow, l
|
||||
bind = $mainMod SHIFT, right, movewindow, r
|
||||
bind = $mainMod SHIFT, up, movewindow, u
|
||||
bind = $mainMod SHIFT, down, movewindow, d
|
||||
|
||||
# Resize windows
|
||||
bind = $mainMod CTRL, H, resizeactive, -30 0
|
||||
bind = $mainMod CTRL, L, resizeactive, 30 0
|
||||
bind = $mainMod CTRL, K, resizeactive, 0 -30
|
||||
bind = $mainMod CTRL, J, resizeactive, 0 30
|
||||
|
||||
# Floating / fullscreen
|
||||
bind = $mainMod, V, togglefloating,
|
||||
bind = $mainMod, F, fullscreen, 0
|
||||
bind = $mainMod SHIFT, F, fullscreen, 1
|
||||
|
||||
# Workspaces
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
# Cycle workspaces
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
|
||||
# Mouse drag
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
#########################
|
||||
# Screenshots
|
||||
#########################
|
||||
bind = $mainMod SHIFT, s, exec, grim -g "$(slurp)" - | wl-copy
|
||||
bind = , XF86Screenshot, exec, grim - | wl-copy
|
||||
|
||||
#########################
|
||||
# Audio (pamixer)
|
||||
#########################
|
||||
bind = , XF86AudioRaiseVolume, exec, pamixer -i 5
|
||||
bind = , XF86AudioLowerVolume, exec, pamixer -d 5
|
||||
bind = , XF86AudioMute, exec, pamixer -t
|
||||
bind = , XF86AudioMicMute, exec, pamixer --default-source -t
|
||||
|
||||
#########################
|
||||
# Media (playerctl)
|
||||
#########################
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioPause, exec, playerctl pause
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
bind = , XF86AudioStop, exec, playerctl stop
|
||||
|
||||
#########################
|
||||
# Brightness (brightnessctl)
|
||||
#########################
|
||||
bind = , XF86MonBrightnessUp, exec, brightnessctl set +10%
|
||||
bind = , XF86MonBrightnessDown, exec, brightnessctl set 10%-
|
||||
bind = , XF86KbdBrightnessUp, exec, brightnessctl -d '*kbd_backlight*' set +10%
|
||||
bind = , XF86KbdBrightnessDown, exec, brightnessctl -d '*kbd_backlight*' set 10%-
|
||||
|
||||
#########################
|
||||
# Power / session
|
||||
#########################
|
||||
bind = , XF86Sleep, exec, systemctl suspend
|
||||
bind = , XF86PowerOff, exec, systemctl poweroff
|
||||
bind = , XF86WakeUp, exec, systemctl suspend
|
||||
bind = $mainMod, L, exec, loginctl lock-session
|
||||
bind = $mainMod, X, exec, ~/.config/hypr/scripts/powermenu.sh
|
||||
|
||||
#########################
|
||||
# Laptop lid settings
|
||||
#########################
|
||||
bindl = , switch:on:Lid Switch, exec, ~/.config/hypr/scripts/lid-action.sh
|
||||
bindl = , switch:off:Lid Switch, exec, ~/.config/hypr/scripts/lid-restore.sh
|
||||
|
||||
#########################
|
||||
# Start apps
|
||||
#########################
|
||||
bind = CTRL ALT, B, exec, flatpak run eu.betterbird.Betterbird
|
||||
bind = CTRL ALT, S, exec, spotify
|
||||
bind = $mainMod, z, exec, zeditor
|
||||
bind = $mainMod, w, exec, zen --url https://nextcloud.data-pro.nu
|
||||
@@ -1,5 +0,0 @@
|
||||
exec-once = dbus-update-activation-environment --systemd --all
|
||||
exec-once = uwsm app -- waybar
|
||||
exec-once = hypridle
|
||||
exec-once = hyprpolkitagent
|
||||
exec-once = systemd-run --user --scope --unit=elephant elephant
|
||||
@@ -1,16 +0,0 @@
|
||||
general {
|
||||
lock_cmd = hyprlock
|
||||
after_sleep_cmd = hyprctl dispatch dpms on
|
||||
ignore_dbus_inhibit = false
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 600
|
||||
on-timeout = hyprlock
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 900
|
||||
on-timeout = hyprctl dispatch dpms off
|
||||
on-resume = hyprctl dispatch dpms on
|
||||
}
|
||||
@@ -1,32 +0,0 @@
|
||||
# ~/.config/hypr/hyprlock.conf
|
||||
|
||||
general {
|
||||
grace = 2
|
||||
ignore_empty_input = true
|
||||
}
|
||||
|
||||
background {
|
||||
path = ~/.config/hypr/lock.png
|
||||
blur_passes = 2
|
||||
blur_size = 6
|
||||
}
|
||||
|
||||
input-field {
|
||||
size = 320, 60
|
||||
outline_thickness = 2
|
||||
dots_size = 0.25
|
||||
dots_spacing = 0.20
|
||||
fade_on_empty = true
|
||||
placeholder_text = "Password"
|
||||
position = 0, -120
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
label {
|
||||
text = $TIME
|
||||
font_size = 72
|
||||
position = 0, 120
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
layerrule = blur on, ignore_alpha 1, match:namespace waybar
|
||||
layerrule = xray 1, match:namespace waybar
|
||||
layerrule = blur on, ignore_alpha 1, match:namespace walker
|
||||
layerrule = xray 1, match:namespace walker
|
||||
layerrule = blur on, ignore_alpha 1, match:namespace swaync-control-center
|
||||
layerrule = blur on, ignore_alpha 1, match:namespace swaync-notification-window
|
||||
@@ -1,24 +0,0 @@
|
||||
general {
|
||||
gaps_in = 2
|
||||
gaps_out = 4
|
||||
border_size = 2
|
||||
col.active_border = rgba($blue) rgba($green) 45deg
|
||||
col.inactive_border = rgba($inactive)
|
||||
layout = dwindle
|
||||
resize_on_border = yes
|
||||
border_grab_modifier = 20
|
||||
disable_hyprland_logo = no # Use 'no' instead of 'false'
|
||||
focus_on_activate = yes
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 5
|
||||
blur = yes
|
||||
blur_size = 8
|
||||
blur_passes = 3
|
||||
blur_new_optimizations = yes
|
||||
blur_exclude = fullscreen
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
}
|
||||
@@ -1,2 +0,0 @@
|
||||
# Default portable monitor rule
|
||||
monitor=DP-1,3840x1080@144,1920x0,1
|
||||
@@ -1,6 +0,0 @@
|
||||
# Colors (Hyprland "col" values commonly use rgba(aarrggbb)-style hex)
|
||||
# See Hyprland variable / type docs for color formats & bools. :contentReference[oaicite:2]{index=2}
|
||||
$base = rgba(1e1e2eff)
|
||||
$inactive = rgba(595959aa)
|
||||
$blue = rgba(33ccffee)
|
||||
$green = rgba(00ff99ee)
|
||||
@@ -1,10 +0,0 @@
|
||||
# Floating and centering nm-connection-editor
|
||||
windowrule = float, nm-connection-editor
|
||||
windowrule = move center, nm-connection-editor
|
||||
windowrule = size 900 700, nm-connection-editor
|
||||
|
||||
# Center all new windows by default
|
||||
windowrule = center, ^(.*)
|
||||
|
||||
# Example: Float specific apps (uncomment to use)
|
||||
# windowrule = float, ^(pavucontrol)$
|
||||
@@ -1,30 +0,0 @@
|
||||
# Workspace definitions (modern syntax)
|
||||
workspace = 1
|
||||
workspace = 2
|
||||
workspace = 3
|
||||
workspace = 4
|
||||
workspace = 5
|
||||
|
||||
# Auto-launch apps on specific workspaces (use `exec` with `workspace` rule)
|
||||
exec-once = kitty, workspace 1
|
||||
exec-once = flatpak run app.betterbird.zen, workspace 2
|
||||
exec-once = zen, workspace 3
|
||||
|
||||
# Force a specific layout for a workspace
|
||||
workspace 1, layout:dwindle
|
||||
workspace 2, layout:master
|
||||
workspace 3, layout:msg
|
||||
|
||||
# Set workspace persistence
|
||||
workspace 1, persistent:true
|
||||
workspace 2, persistent:true
|
||||
|
||||
# Move specific apps to workspaces automatically
|
||||
windowrule = move workspace 1, ^(kitty)$
|
||||
windowrule = move workspace 2, ^(zen)$
|
||||
windowrule = move workspace 3, ^(libreoffice)$
|
||||
|
||||
# Workspace behavior
|
||||
workspace {
|
||||
cycle_move_empty = no
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
general {
|
||||
lock_cmd = hyprlock
|
||||
after_sleep_cmd = hyprctl dispatch dpms on
|
||||
ignore_dbus_inhibit = false
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 600
|
||||
on-timeout = hyprlock
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 900
|
||||
on-timeout = hyprctl dispatch dpms off
|
||||
on-resume = hyprctl dispatch dpms on
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
source = conf/variables.conf
|
||||
# source = conf/behaviour.conf
|
||||
# source = conf/layout.conf
|
||||
source = conf/animations.conf
|
||||
source = conf/layer-rules.conf
|
||||
# source = conf/window-rules.conf
|
||||
source = conf/monitor-rules.conf
|
||||
# source = conf/workspace-rules.conf
|
||||
source = conf/bindings.conf
|
||||
|
||||
source = conf/exec-once.conf
|
||||
|
||||
general {
|
||||
gaps_in = 2
|
||||
gaps_out = 4
|
||||
border_size = 2
|
||||
# Gradient syntax: color color angle (e.g. 45deg). :contentReference[oaicite:5]{index=5}
|
||||
col.active_border = $blue $green 45deg
|
||||
col.inactive_border = $inactive
|
||||
layout = scrolling
|
||||
resize_on_border = true
|
||||
extend_border_grab_area = 20 # Makes it easier to "grab" the edge
|
||||
}
|
||||
@@ -1,32 +0,0 @@
|
||||
# ~/.config/hypr/hyprlock.conf
|
||||
|
||||
general {
|
||||
grace = 2
|
||||
ignore_empty_input = true
|
||||
}
|
||||
|
||||
background {
|
||||
path = ~/.config/hypr/lock.png
|
||||
blur_passes = 2
|
||||
blur_size = 6
|
||||
}
|
||||
|
||||
input-field {
|
||||
size = 320, 60
|
||||
outline_thickness = 2
|
||||
dots_size = 0.25
|
||||
dots_spacing = 0.20
|
||||
fade_on_empty = true
|
||||
placeholder_text = "Password"
|
||||
position = 0, -120
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
label {
|
||||
text = $TIME
|
||||
font_size = 72
|
||||
position = 0, 120
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
w-1= /home/henrov/nixos_conf/wallpaperstuff/pictures/1.jpg
|
||||
w-2= /home/henrov/nixos_conf/wallpaperstuff/pictures/2.jpg
|
||||
w-3= /home/henrov/nixos_conf/wallpaperstuff/pictures/3.jpg
|
||||
w-4= /home/henrov/nixos_conf/wallpaperstuff/pictures/4.png
|
||||
w-5= /home/henrov/nixos_conf/wallpaperstuff/pictures/5.jpg
|
||||
w-6= /home/henrov/nixos_conf/wallpaperstuff/pictures/6.jpg
|
||||
w-7= /home/henrov/nixos_conf/wallpaperstuff/pictures/7.jpg
|
||||
w-8= /home/henrov/nixos_conf/wallpaperstuff/pictures/8.jpg
|
||||
w-9= /home/henrov/nixos_conf/wallpaperstuff/pictures/9.jpg
|
||||
@@ -1,9 +0,0 @@
|
||||
w-1= /home/henrov/nixos_conf/wallpaperstuff/pictures/1.jpg
|
||||
w-2= /home/henrov/nixos_conf/wallpaperstuff/pictures/2.jpg
|
||||
w-3= /home/henrov/nixos_conf/wallpaperstuff/pictures/3.jpg
|
||||
w-4= /home/henrov/nixos_conf/wallpaperstuff/pictures/4.png
|
||||
w-5= /home/henrov/nixos_conf/wallpaperstuff/pictures/5.jpg
|
||||
w-6= /home/henrov/nixos_conf/wallpaperstuff/pictures/6.jpg
|
||||
w-7= /home/henrov/nixos_conf/wallpaperstuff/pictures/7.jpg
|
||||
w-8= /home/henrov/nixos_conf/wallpaperstuff/pictures/8.jpg
|
||||
w-9= /home/henrov/nixos_conf/wallpaperstuff/pictures/9.jpg
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 406 KiB |
@@ -1,25 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
INTERNAL="eDP1"
|
||||
|
||||
has_external() {
|
||||
# Any monitor name that is not INTERNAL counts as external
|
||||
hyprctl monitors -j | grep -q '"name"' && ! hyprctl monitors -j | grep -q "\"name\":\"$INTERNAL\"\""
|
||||
}
|
||||
|
||||
has_external_robust() {
|
||||
# robust without jq: count monitor names; if there's >1 OR there's a name not INTERNAL
|
||||
local names
|
||||
names="$(hyprctl monitors -j | sed -n 's/.*"name":"\([^"]*\)".*/\1/p')"
|
||||
# if any name != INTERNAL then external
|
||||
echo "$names" | grep -vx "$INTERNAL" >/dev/null 2>&1
|
||||
}
|
||||
|
||||
if has_external_robust; then
|
||||
# Clamshell: disable laptop panel, no lock
|
||||
hyprctl keyword monitor "${INTERNAL},disable"
|
||||
else
|
||||
# Laptop only: suspend
|
||||
systemctl suspend
|
||||
fi
|
||||
@@ -1,36 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
OPTIONS=" Lock
|
||||
Logout (Hyprland)
|
||||
Suspend
|
||||
Hibernate
|
||||
Reboot
|
||||
Shutdown
|
||||
Cancel"
|
||||
|
||||
CHOICE=$(printf "%s" "$OPTIONS" | walker --dmenu )
|
||||
|
||||
case "$CHOICE" in
|
||||
"Lock")
|
||||
loginctl lock-session
|
||||
;;
|
||||
"Logout (Hyprland)")
|
||||
hyprctl dispatch exit
|
||||
;;
|
||||
"Suspend")
|
||||
loginctl lock-session && systemctl suspend
|
||||
;;
|
||||
"Hibernate")
|
||||
loginctl lock-session && systemctl hibernate
|
||||
;;
|
||||
"Reboot")
|
||||
systemctl reboot
|
||||
;;
|
||||
"Shutdown")
|
||||
systemctl poweroff
|
||||
;;
|
||||
*)
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
@@ -1,71 +0,0 @@
|
||||
// Edit with `hyprshell config edit` <-- GUI app, resize!
|
||||
(
|
||||
version: 3,
|
||||
windows: (
|
||||
scale: 8.5,
|
||||
items_per_row: 5 ,
|
||||
overview: (
|
||||
launcher: (
|
||||
default_terminal: None,
|
||||
launch_modifier: "ctrl",
|
||||
width: 800,
|
||||
max_items: 5,
|
||||
show_when_empty: true,
|
||||
plugins: (
|
||||
applications: (
|
||||
run_cache_weeks: 8,
|
||||
show_execs: true,
|
||||
show_actions_submenu: true,
|
||||
),
|
||||
terminal: None,
|
||||
shell: None,
|
||||
websearch: None,
|
||||
calc: (),
|
||||
path: (),
|
||||
actions: (
|
||||
actions: [
|
||||
lock_screen,
|
||||
hibernate,
|
||||
logout,
|
||||
reboot,
|
||||
shutdown,
|
||||
suspend,
|
||||
custom(
|
||||
names: [
|
||||
"Kill",
|
||||
"Stop",
|
||||
],
|
||||
details: "Kill or stop a process by name",
|
||||
command: "pkill \"{}\" && notify-send hyprshell \"stopped {}\"",
|
||||
icon: "remove",
|
||||
),
|
||||
custom(
|
||||
names: [
|
||||
"Reload Hyprshell",
|
||||
],
|
||||
details: "Reload Hyprshell",
|
||||
command: "sleep 1; hyprshell socat \'\"Restart\"\'",
|
||||
icon: "system-restart",
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
key: "Super_L",
|
||||
modifier: "super",
|
||||
filter_by: [],
|
||||
hide_filtered: false,
|
||||
exclude_special_workspaces: "",
|
||||
),
|
||||
switch: (
|
||||
modifier: "alt",
|
||||
key: "Tab",
|
||||
filter_by: [
|
||||
current_monitor,
|
||||
],
|
||||
switch_workspaces: false,
|
||||
exclude_special_workspaces: "",
|
||||
),
|
||||
switch_2: None,
|
||||
),
|
||||
)
|
||||
@@ -1,8 +0,0 @@
|
||||
window {
|
||||
background: rgba(20, 20, 20, 0.92);
|
||||
border-radius: 18px;
|
||||
}
|
||||
|
||||
* {
|
||||
background-color: unset;
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIBnTCCAUSgAwIBAgIUH22zKyfwunPmVhN8fQFqDve51bswCgYIKoZIzj0EAwQw
|
||||
TzEpMCcGA1UEAwwgMWU1Y2ZhMDdiNTQxNDQ5OWE4Yzg0YTIzMzFjYTkyY2QxDDAK
|
||||
BgNVBAoMA0tERTEUMBIGA1UECwwLS0RFIENvbm5lY3QwHhcNMjUwMjE2MTU1NjI2
|
||||
WhcNMzYwMjE0MTU1NjI2WjBPMSkwJwYDVQQDDCAxZTVjZmEwN2I1NDE0NDk5YThj
|
||||
ODRhMjMzMWNhOTJjZDEMMAoGA1UECgwDS0RFMRQwEgYDVQQLDAtLREUgQ29ubmVj
|
||||
dDBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABMFIBTF9LuWEQIoTOD6lxKUzLQQ1
|
||||
gVfkpoMCSO3m6TKawSqz5RIkL46lPb3dhRs9GPz7RlqV00GNzj7sVcOmMHgwCgYI
|
||||
KoZIzj0EAwQDRwAwRAIgJfSj4nXAVB7EEIt1xJVo5fnqPsLoUK3ina34JIXkAu4C
|
||||
IApwICWB8PgU209qhYWFLVU5DWuFt1vF3Cql/ijSUW0y
|
||||
-----END CERTIFICATE-----
|
||||
@@ -1,3 +0,0 @@
|
||||
[General]
|
||||
keyAlgorithm=EC
|
||||
name=nixos
|
||||
@@ -1,5 +0,0 @@
|
||||
-----BEGIN EC PRIVATE KEY-----
|
||||
MHcCAQEEIIbKpOVq1bq2oO0xZ/nOt6VYQRafML7fh5id4IxYqmd+oAoGCCqGSM49
|
||||
AwEHoUQDQgAEwUgFMX0u5YRAihM4PqXEpTMtBDWBV+SmgwJI7ebpMprBKrPlEiQv
|
||||
jqU9vd2FGz0Y/PtGWpXTQY3OPuxVw6YweA==
|
||||
-----END EC PRIVATE KEY-----
|
||||
@@ -1,12 +0,0 @@
|
||||
# Generated by Home Manager.
|
||||
# See https://sw.kovidgoyal.net/kitty/conf.html
|
||||
|
||||
shell_integration no-rc
|
||||
include themes/Catppuccin-Mocha.conf
|
||||
|
||||
map ctrl+shift+v paste_from_clipboard
|
||||
map ctrl+shift+c copy_to_clipboard
|
||||
|
||||
background_opacity 0.3
|
||||
background_blur 1
|
||||
dynamic_background_opacity yes
|
||||
@@ -1,84 +0,0 @@
|
||||
# vim:ft=kitty
|
||||
|
||||
## name: Catppuccin Kitty Mocha
|
||||
## author: Catppuccin Org
|
||||
## license: MIT
|
||||
## upstream: https://github.com/catppuccin/kitty/blob/main/themes/mocha.conf
|
||||
## blurb: Soothing pastel theme for the high-spirited!
|
||||
|
||||
|
||||
|
||||
# The basic colors
|
||||
foreground #cdd6f4
|
||||
background #1e1e2e
|
||||
selection_foreground #1e1e2e
|
||||
selection_background #f5e0dc
|
||||
|
||||
# Cursor colors
|
||||
cursor #f5e0dc
|
||||
cursor_text_color #1e1e2e
|
||||
|
||||
# Scrollbar colors
|
||||
scrollbar_handle_color #9399b2
|
||||
scrollbar_track_color #45475a
|
||||
|
||||
# URL color when hovering with mouse
|
||||
url_color #f5e0dc
|
||||
|
||||
# Kitty window border colors
|
||||
active_border_color #b4befe
|
||||
inactive_border_color #6c7086
|
||||
bell_border_color #f9e2af
|
||||
|
||||
# OS Window titlebar colors
|
||||
wayland_titlebar_color system
|
||||
macos_titlebar_color system
|
||||
|
||||
# Tab bar colors
|
||||
active_tab_foreground #11111b
|
||||
active_tab_background #cba6f7
|
||||
inactive_tab_foreground #cdd6f4
|
||||
inactive_tab_background #181825
|
||||
tab_bar_background #11111b
|
||||
|
||||
# Colors for marks (marked text in the terminal)
|
||||
mark1_foreground #1e1e2e
|
||||
mark1_background #b4befe
|
||||
mark2_foreground #1e1e2e
|
||||
mark2_background #cba6f7
|
||||
mark3_foreground #1e1e2e
|
||||
mark3_background #74c7ec
|
||||
|
||||
# The 16 terminal colors
|
||||
|
||||
# black
|
||||
color0 #45475a
|
||||
color8 #585b70
|
||||
|
||||
# red
|
||||
color1 #f38ba8
|
||||
color9 #f38ba8
|
||||
|
||||
# green
|
||||
color2 #a6e3a1
|
||||
color10 #a6e3a1
|
||||
|
||||
# yellow
|
||||
color3 #f9e2af
|
||||
color11 #f9e2af
|
||||
|
||||
# blue
|
||||
color4 #89b4fa
|
||||
color12 #89b4fa
|
||||
|
||||
# magenta
|
||||
color5 #f5c2e7
|
||||
color13 #f5c2e7
|
||||
|
||||
# cyan
|
||||
color6 #94e2d5
|
||||
color14 #94e2d5
|
||||
|
||||
# white
|
||||
color7 #bac2de
|
||||
color15 #a6adc8
|
||||
@@ -1,279 +0,0 @@
|
||||
"$schema" = 'https://starship.rs/config-schema.json'
|
||||
|
||||
format = """
|
||||
[](red)\
|
||||
$os\
|
||||
$username\
|
||||
[](bg:peach fg:red)\
|
||||
$directory\
|
||||
[](bg:yellow fg:peach)\
|
||||
$git_branch\
|
||||
$git_status\
|
||||
[](fg:yellow bg:green)\
|
||||
$c\
|
||||
$rust\
|
||||
$golang\
|
||||
$nodejs\
|
||||
$php\
|
||||
$java\
|
||||
$kotlin\
|
||||
$haskell\
|
||||
$python\
|
||||
[](fg:green bg:sapphire)\
|
||||
$conda\
|
||||
[](fg:sapphire bg:lavender)\
|
||||
$time\
|
||||
[ ](fg:lavender)\
|
||||
$cmd_duration\
|
||||
$line_break\
|
||||
$character"""
|
||||
|
||||
palette = 'catppuccin_mocha'
|
||||
|
||||
[os]
|
||||
disabled = false
|
||||
style = "bg:red fg:crust"
|
||||
|
||||
[os.symbols]
|
||||
Windows = ""
|
||||
Ubuntu = ""
|
||||
SUSE = ""
|
||||
Raspbian = ""
|
||||
Mint = ""
|
||||
Macos = ""
|
||||
Manjaro = ""
|
||||
Linux = ""
|
||||
Gentoo = ""
|
||||
Fedora = ""
|
||||
Alpine = ""
|
||||
Amazon = ""
|
||||
Android = ""
|
||||
AOSC = ""
|
||||
Arch = ""
|
||||
Artix = ""
|
||||
CentOS = ""
|
||||
Debian = ""
|
||||
Redhat = ""
|
||||
RedHatEnterprise = ""
|
||||
|
||||
[username]
|
||||
show_always = true
|
||||
style_user = "bg:red fg:crust"
|
||||
style_root = "bg:red fg:crust"
|
||||
format = '[ $user]($style)'
|
||||
|
||||
[directory]
|
||||
style = "bg:peach fg:crust"
|
||||
format = "[ $path ]($style)"
|
||||
truncation_length = 3
|
||||
truncation_symbol = "…/"
|
||||
|
||||
[directory.substitutions]
|
||||
"Documents" = " "
|
||||
"Downloads" = " "
|
||||
"Music" = " "
|
||||
"Pictures" = " "
|
||||
"Developer" = " "
|
||||
|
||||
[git_branch]
|
||||
symbol = ""
|
||||
style = "bg:yellow"
|
||||
format = '[[ $symbol $branch ](fg:crust bg:yellow)]($style)'
|
||||
|
||||
[git_status]
|
||||
style = "bg:yellow"
|
||||
format = '[[($all_status$ahead_behind )](fg:crust bg:yellow)]($style)'
|
||||
|
||||
[nodejs]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[c]
|
||||
symbol = " "
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[rust]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[golang]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[php]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[java]
|
||||
symbol = " "
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[kotlin]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[haskell]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[python]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version)(\(#$virtualenv\)) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[docker_context]
|
||||
symbol = ""
|
||||
style = "bg:sapphire"
|
||||
format = '[[ $symbol( $context) ](fg:crust bg:sapphire)]($style)'
|
||||
|
||||
[conda]
|
||||
symbol = " "
|
||||
style = "fg:crust bg:sapphire"
|
||||
format = '[$symbol$environment ]($style)'
|
||||
ignore_base = false
|
||||
|
||||
[time]
|
||||
disabled = false
|
||||
time_format = "%R"
|
||||
style = "bg:lavender"
|
||||
format = '[[ $time ](fg:crust bg:lavender)]($style)'
|
||||
|
||||
[line_break]
|
||||
disabled = false
|
||||
|
||||
[character]
|
||||
disabled = false
|
||||
success_symbol = '[❯](bold fg:green)'
|
||||
error_symbol = '[❯](bold fg:red)'
|
||||
vimcmd_symbol = '[❮](bold fg:green)'
|
||||
vimcmd_replace_one_symbol = '[❮](bold fg:lavender)'
|
||||
vimcmd_replace_symbol = '[❮](bold fg:lavender)'
|
||||
vimcmd_visual_symbol = '[❮](bold fg:yellow)'
|
||||
|
||||
[cmd_duration]
|
||||
show_milliseconds = true
|
||||
format = " in $duration "
|
||||
style = "bg:lavender"
|
||||
disabled = false
|
||||
show_notifications = true
|
||||
min_time_to_notify = 45000
|
||||
|
||||
[palettes.catppuccin_mocha]
|
||||
rosewater = "#f5e0dc"
|
||||
flamingo = "#f2cdcd"
|
||||
pink = "#f5c2e7"
|
||||
mauve = "#cba6f7"
|
||||
red = "#f38ba8"
|
||||
maroon = "#eba0ac"
|
||||
peach = "#fab387"
|
||||
yellow = "#f9e2af"
|
||||
green = "#a6e3a1"
|
||||
teal = "#94e2d5"
|
||||
sky = "#89dceb"
|
||||
sapphire = "#74c7ec"
|
||||
blue = "#89b4fa"
|
||||
lavender = "#b4befe"
|
||||
text = "#cdd6f4"
|
||||
subtext1 = "#bac2de"
|
||||
subtext0 = "#a6adc8"
|
||||
overlay2 = "#9399b2"
|
||||
overlay1 = "#7f849c"
|
||||
overlay0 = "#6c7086"
|
||||
surface2 = "#585b70"
|
||||
surface1 = "#45475a"
|
||||
surface0 = "#313244"
|
||||
base = "#1e1e2e"
|
||||
mantle = "#181825"
|
||||
crust = "#11111b"
|
||||
|
||||
[palettes.catppuccin_frappe]
|
||||
rosewater = "#f2d5cf"
|
||||
flamingo = "#eebebe"
|
||||
pink = "#f4b8e4"
|
||||
mauve = "#ca9ee6"
|
||||
red = "#e78284"
|
||||
maroon = "#ea999c"
|
||||
peach = "#ef9f76"
|
||||
yellow = "#e5c890"
|
||||
green = "#a6d189"
|
||||
teal = "#81c8be"
|
||||
sky = "#99d1db"
|
||||
sapphire = "#85c1dc"
|
||||
blue = "#8caaee"
|
||||
lavender = "#babbf1"
|
||||
text = "#c6d0f5"
|
||||
subtext1 = "#b5bfe2"
|
||||
subtext0 = "#a5adce"
|
||||
overlay2 = "#949cbb"
|
||||
overlay1 = "#838ba7"
|
||||
overlay0 = "#737994"
|
||||
surface2 = "#626880"
|
||||
surface1 = "#51576d"
|
||||
surface0 = "#414559"
|
||||
base = "#303446"
|
||||
mantle = "#292c3c"
|
||||
crust = "#232634"
|
||||
|
||||
[palettes.catppuccin_latte]
|
||||
rosewater = "#dc8a78"
|
||||
flamingo = "#dd7878"
|
||||
pink = "#ea76cb"
|
||||
mauve = "#8839ef"
|
||||
red = "#d20f39"
|
||||
maroon = "#e64553"
|
||||
peach = "#fe640b"
|
||||
yellow = "#df8e1d"
|
||||
green = "#40a02b"
|
||||
teal = "#179299"
|
||||
sky = "#04a5e5"
|
||||
sapphire = "#209fb5"
|
||||
blue = "#1e66f5"
|
||||
lavender = "#7287fd"
|
||||
text = "#4c4f69"
|
||||
subtext1 = "#5c5f77"
|
||||
subtext0 = "#6c6f85"
|
||||
overlay2 = "#7c7f93"
|
||||
overlay1 = "#8c8fa1"
|
||||
overlay0 = "#9ca0b0"
|
||||
surface2 = "#acb0be"
|
||||
surface1 = "#bcc0cc"
|
||||
surface0 = "#ccd0da"
|
||||
base = "#eff1f5"
|
||||
mantle = "#e6e9ef"
|
||||
crust = "#dce0e8"
|
||||
|
||||
[palettes.catppuccin_macchiato]
|
||||
rosewater = "#f4dbd6"
|
||||
flamingo = "#f0c6c6"
|
||||
pink = "#f5bde6"
|
||||
mauve = "#c6a0f6"
|
||||
red = "#ed8796"
|
||||
maroon = "#ee99a0"
|
||||
peach = "#f5a97f"
|
||||
yellow = "#eed49f"
|
||||
green = "#a6da95"
|
||||
teal = "#8bd5ca"
|
||||
sky = "#91d7e3"
|
||||
sapphire = "#7dc4e4"
|
||||
blue = "#8aadf4"
|
||||
lavender = "#b7bdf8"
|
||||
text = "#cad3f5"
|
||||
subtext1 = "#b8c0e0"
|
||||
subtext0 = "#a5adcb"
|
||||
overlay2 = "#939ab7"
|
||||
overlay1 = "#8087a2"
|
||||
overlay0 = "#6e738d"
|
||||
surface2 = "#5b6078"
|
||||
surface1 = "#494d64"
|
||||
surface0 = "#363a4f"
|
||||
base = "#24273a"
|
||||
mantle = "#1e2030"
|
||||
crust = "#181926"
|
||||
@@ -1,116 +0,0 @@
|
||||
# Walker UI layout/theme config (Catppuccin Mocha tuned)
|
||||
|
||||
theme = "frosted"
|
||||
debug = true
|
||||
|
||||
[ui]
|
||||
css = "home/henrov/themes/frosted/walker.css"
|
||||
|
||||
[ui.anchors]
|
||||
top = true
|
||||
left = true
|
||||
right = true
|
||||
bottom = false # don't stretch to full height; keeps it as a panel
|
||||
|
||||
[ui.window]
|
||||
h_align = "fill"
|
||||
v_align = "fill"
|
||||
|
||||
[ui.window.box]
|
||||
h_align = "center"
|
||||
# Single source of truth for the main content width
|
||||
width = 520
|
||||
|
||||
[ui.window.box.margins]
|
||||
top = 140
|
||||
|
||||
[ui.window.box.bar]
|
||||
orientation = "horizontal"
|
||||
position = "end"
|
||||
|
||||
[ui.window.box.bar.entry]
|
||||
h_align = "fill"
|
||||
h_expand = true
|
||||
|
||||
[ui.window.box.bar.entry.icon]
|
||||
h_align = "center"
|
||||
h_expand = false
|
||||
pixel_size = 22
|
||||
theme = "" # leave empty to inherit your system icon theme (Papirus etc.)
|
||||
|
||||
# --- AI scroll area (match main width, reduce hardcoding) ---
|
||||
[ui.window.box.ai_scroll]
|
||||
name = "aiScroll"
|
||||
h_align = "fill"
|
||||
v_align = "fill"
|
||||
min_width = 520
|
||||
width = 520
|
||||
max_height = 260
|
||||
height = 260
|
||||
|
||||
[ui.window.box.ai_scroll.margins]
|
||||
top = 10
|
||||
|
||||
[ui.window.box.ai_scroll.list]
|
||||
name = "aiList"
|
||||
orientation = "vertical"
|
||||
width = 520
|
||||
spacing = 10
|
||||
|
||||
[ui.window.box.ai_scroll.list.item]
|
||||
name = "aiItem"
|
||||
h_align = "fill"
|
||||
v_align = "fill"
|
||||
x_align = 0
|
||||
y_align = 0
|
||||
wrap = true
|
||||
|
||||
# --- Main results list ---
|
||||
[ui.window.box.scroll.list]
|
||||
# Catppuccin Mocha accent (pick one):
|
||||
# - teal: #94e2d5
|
||||
# - blue: #89b4fa
|
||||
marker_color = "#89b4fa"
|
||||
max_height = 360
|
||||
min_width = 520
|
||||
max_width = 520
|
||||
width = 520
|
||||
|
||||
[ui.window.box.scroll.list.margins]
|
||||
top = 10
|
||||
|
||||
[ui.window.box.scroll.list.item.activation_label]
|
||||
h_align = "fill"
|
||||
v_align = "fill"
|
||||
width = 22
|
||||
x_align = 0.5
|
||||
y_align = 0.5
|
||||
|
||||
[ui.window.box.scroll.list.item.icon]
|
||||
pixel_size = 24
|
||||
theme = "" # inherit system icon theme
|
||||
|
||||
# --- Search row (icons + input) ---
|
||||
[ui.window.box.search.prompt]
|
||||
name = "prompt"
|
||||
icon = "edit-find"
|
||||
theme = ""
|
||||
pixel_size = 18
|
||||
h_align = "center"
|
||||
v_align = "center"
|
||||
|
||||
[ui.window.box.search.clear]
|
||||
name = "clear"
|
||||
icon = "edit-clear"
|
||||
theme = ""
|
||||
pixel_size = 18
|
||||
h_align = "center"
|
||||
v_align = "center"
|
||||
|
||||
[ui.window.box.search.input]
|
||||
h_align = "fill"
|
||||
h_expand = true
|
||||
icons = true
|
||||
|
||||
[ui.window.box.search.spinner]
|
||||
hide = true
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user