Compare commits

..

3 Commits

Author SHA1 Message Date
1972d8ec31 wlogout temp feature (will be removed with quickshell update) 2026-07-07 16:45:52 +01:00
4a2730ed44 way-edges feature 2026-07-07 16:45:09 +01:00
a3ad40702b removed redundant unbound feature 2026-07-07 16:37:05 +01:00
12 changed files with 207 additions and 15 deletions

View File

@@ -44,6 +44,8 @@
otter-launcher = self'.packages.otter-launcher;
quickshell = self'.packages.quickshell;
waybar = self'.packages.waybar;
wlogout = self'.packages.wlogout;
way-edges = self'.packages.way-edges;
};
};
wpaperd = let

View File

@@ -1,15 +0,0 @@
{
self,
inputs,
...
}: {
flake.nixosModules.unbound = {
pkgs,
lib,
...
}: {
services.unbound = {
enable = true;
};
};
}

View File

@@ -0,0 +1,60 @@
{
"allow-trailing-commas": true,
"widgets": [
{
"type": "slider",
"edge": "right",
"position": "top",
"thickness": 30,
"length": "25%",
"margins": {
"top": "50%"
},
"border-width": 4,
"border-color": "#cba6f7ff",
"fg-color": "#cba6f7bb",
"bg-color": "#31324466",
"fg-text-color": "#11111bff",
"bg-text-color": "#bac2dedd",
"transition-duration": 100,
"redraw-only-on-internal-update": true,
"radius": 10, // corner radius
"obtuse-angle": 90, // in degrees(90~180). controls how much curve the widget has
"scroll-unit": 0.005,
"pinnable": false,
"preset": {
"type": "speaker",
"animation-curve": "Linear", // mute animation
"mute-text-color": "#f38ba8ff",
"mute-color": "#f38ba8bb",
},
},
{
"type": "slider",
"edge": "right",
"position": "top",
"thickness": 30,
"length": "25%",
"margins": {
"top": "25%"
},
"border-width": 4,
"border-color": "#f9e2afff",
"fg-color": "#f9e2afbb",
"bg-color": "#31324466",
"fg-text-color": "#11111bff",
"bg-text-color": "#bac2dedd",
"transition-duration": 100,
"redraw-only-on-internal-update": true,
"radius": 10, // corner radius
"obtuse-angle": 90, // in degrees(90~180). controls how much curve the widget has
"scroll-unit": 0.005,
"pinnable": false,
"preset": {
"type": "backlight",
"device": "intel_backlight", // this is the name of the device. Find it under `/sys/class/backlight/` It should be something like `nvidia_0`, `intel_0`, etc.
},
},
]
}

View File

@@ -0,0 +1,20 @@
{
inputs,
moduleWithSystem,
...
}: {
flake.nixosModules.way-edges = moduleWithSystem ({self', ...}: {
environment.systemPackages = with self'.packages; [
way-edges
];
});
perSystem = {pkgs, ...}: {
packages.way-edges = inputs.wrappers.lib.wrapPackage ({...}: {
inherit pkgs;
package = pkgs.way-edges;
flags = {
"--config-path" = ./config.jsonc;
};
});
};
}

View File

@@ -0,0 +1,22 @@
{
inputs,
moduleWithSystem,
...
}: {
flake.nixosModules.wlogout = moduleWithSystem ({self', ...}: {
environment.systemPackages = with self'.packages; [
wlogout
];
});
perSystem = {pkgs, ...}: {
packages.wlogout = inputs.wrappers.lib.wrapPackage ({...}: {
inherit pkgs;
package = pkgs.wlogout;
flags = {
"--css" = ./style.css;
"--layout" = ./layout;
"--buttons-per-row" = "5";
};
});
};
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

30
modules/features/wlogout/layout Executable file
View File

@@ -0,0 +1,30 @@
{
"label" : "lock",
"action" : "hyprlock",
"text" : "Lock",
"keybind" : "l"
}
{
"label" : "logout",
"action" : "hyprctl dispatch 'hl.dsp.exit()'" ,
"text" : "Logout",
"keybind" : "e"
}
{
"label" : "shutdown",
"action" : "systemctl poweroff",
"text" : "Shutdown",
"keybind" : "s"
}
{
"label" : "suspend",
"action" : "systemctl suspend",
"text" : "Sleep",
"keybind" : "u"
}
{
"label" : "reboot",
"action" : "systemctl reboot",
"text" : "Reboot",
"keybind" : "r"
}

View File

@@ -0,0 +1,73 @@
* {
background-image: none;
box-shadow: none;
}
window {
background-color: rgba(12, 12, 12, 0.05);
}
button {
border-radius: 0;
border-color: #cba6f7;
text-decoration-color: #ffffff;
color: #FFFFFF;
background-color: #313244;
border-style: solid none;
border-width: 4px;
background-repeat: no-repeat;
background-position: 50% 30%;
background-size: 75%;
}
button:first-child {
border-top-left-radius: 10px;
border-bottom-left-radius: 10px;
}
button:last-child {
border-top-right-radius: 10px;
border-bottom-right-radius: 10px;
}
#lock {
border-left-style: solid;
background-image: image(url("./icons/lock.png"));
}
#logout {
background-image: image(url("./icons/exit.png"));
}
#suspend {
background-image: image(url("./icons/slwwp.png"));
}
#shutdown {
background-image: image(url("./icons/power.png"));
}
#reboot {
border-right-style: solid;
background-image: image(url("./icons/reload.png"));
}
#lock:focus {
background-color: #f38ba8;
}
#logout:focus {
background-color: #fab387;
}
#shutdown:focus {
background-color: #a6e3a1;
}
#suspend:focus {
background-color: #f9e2af;
}
#reboot:focus {
background-color: #cba6f7;
}