enable upower, move noctalia config to niri module, make useNoctalia a module option

This commit is contained in:
2026-06-20 16:48:12 +02:00
parent 16b1894e84
commit a7985e56c9
6 changed files with 326 additions and 126 deletions
+35
View File
@@ -0,0 +1,35 @@
layout {
focus-ring {
active-color "#e48267"
inactive-color "#291814"
urgent-color "#88402c"
}
border {
active-color "#e48267"
inactive-color "#291814"
urgent-color "#88402c"
}
shadow {
color "#29181470"
}
tab-indicator {
active-color "#e48267"
inactive-color "#8d280c"
urgent-color "#88402c"
}
insert-hint {
color "#e4826780"
}
}
recent-windows {
highlight {
active-color "#e48267"
urgent-color "#88402c"
}
}
+16 -16
View File
@@ -1,25 +1,25 @@
{ {
"mPrimary": "#ffb4a3", "mPrimary": "#e48267",
"mOnPrimary": "#5e1606", "mOnPrimary": "#130e0d",
"mSecondary": "#e7bdb3", "mSecondary": "#d6b45c",
"mOnSecondary": "#442a23", "mOnSecondary": "#251b18",
"mTertiary": "#dac58c", "mTertiary": "#b6cd65",
"mOnTertiary": "#3c2f04", "mOnTertiary": "#251b18",
"mError": "#ffb4ab", "mError": "#88402c",
"mOnError": "#690005", "mOnError": "#faf8f7",
"mSurface": "#181211", "mSurface": "#291814",
"mOnSurface": "#ede0dd", "mOnSurface": "#f3f2f2",
"mSurfaceVariant": "#251e1d", "mSurfaceVariant": "#452921",
"mOnSurfaceVariant": "#d8c2bd", "mOnSurfaceVariant": "#b6b0af",
"mOutline": "#534340", "mOutline": "#74645f",
"mShadow": "#000000", "mShadow": "#291814",
"mHover": "#dac58c", "mHover": "#b6cd65",
"mOnHover": "#3c2f04" "mOnHover": "#251b18"
} }
+191 -33
View File
@@ -42,19 +42,19 @@
"bar": { "bar": {
"autoHideDelay": 500, "autoHideDelay": 500,
"autoShowDelay": 150, "autoShowDelay": 150,
"backgroundOpacity": 0.93, "backgroundOpacity": 0.39,
"barType": "floating", "barType": "floating",
"capsuleColorKey": "primary", "capsuleColorKey": "none",
"capsuleOpacity": 0.33, "capsuleOpacity": 1,
"contentPadding": 2, "contentPadding": 10,
"density": "compact", "density": "default",
"displayMode": "always_visible", "displayMode": "always_visible",
"enableExclusionZoneInset": true, "enableExclusionZoneInset": true,
"fontScale": 1, "fontScale": 1,
"frameRadius": 12, "frameRadius": 12,
"frameThickness": 8, "frameThickness": 8,
"hideOnOverview": false, "hideOnOverview": false,
"marginHorizontal": 4, "marginHorizontal": 100,
"marginVertical": 4, "marginVertical": 4,
"middleClickAction": "none", "middleClickAction": "none",
"middleClickCommand": "", "middleClickCommand": "",
@@ -74,8 +74,8 @@
"showCapsule": true, "showCapsule": true,
"showOnWorkspaceSwitch": true, "showOnWorkspaceSwitch": true,
"showOutline": false, "showOutline": false,
"useSeparateOpacity": false, "useSeparateOpacity": true,
"widgetSpacing": 6, "widgetSpacing": 4,
"widgets": { "widgets": {
"center": [ "center": [
{ {
@@ -178,21 +178,21 @@
"showUnreadBadge": true, "showUnreadBadge": true,
"unreadBadgeColor": "primary" "unreadBadgeColor": "primary"
}, },
{
"deviceNativePath": "__default__",
"displayMode": "graphic-clean",
"hideIfIdle": false,
"hideIfNotDetected": true,
"id": "Battery",
"showNoctaliaPerformance": false,
"showPowerProfiles": false
},
{ {
"displayMode": "onhover", "displayMode": "onhover",
"iconColor": "none", "iconColor": "none",
"id": "Volume", "id": "Volume",
"middleClickCommand": "pwvucontrol || pavucontrol", "middleClickCommand": "pwvucontrol || pavucontrol",
"textColor": "none" "textColor": "none"
},
{
"deviceNativePath": "__default__",
"displayMode": "graphic-clean",
"hideIfIdle": true,
"hideIfNotDetected": true,
"id": "Battery",
"showNoctaliaPerformance": true,
"showPowerProfiles": true
} }
] ]
} }
@@ -222,13 +222,13 @@
}, },
"colorSchemes": { "colorSchemes": {
"darkMode": true, "darkMode": true,
"generationMethod": "tonal-spot", "generationMethod": "vibrant",
"manualSunrise": "06:30", "manualSunrise": "06:30",
"manualSunset": "18:30", "manualSunset": "18:30",
"monitorForColors": "", "monitorForColors": "",
"predefinedScheme": "Kanagawa", "predefinedScheme": "Gruvbox",
"schedulingMode": "off", "schedulingMode": "off",
"syncGsettings": true, "syncGsettings": false,
"useWallpaperColors": true "useWallpaperColors": true
}, },
"controlCenter": { "controlCenter": {
@@ -376,14 +376,14 @@
"animationDisabled": false, "animationDisabled": false,
"animationSpeed": 1, "animationSpeed": 1,
"autoStartAuth": false, "autoStartAuth": false,
"avatarImage": "/home/ulve/.face", "avatarImage": "/home/ulve/Pictures/ulve.png",
"boxRadiusRatio": 1, "boxRadiusRatio": 1,
"clockFormat": "hh\\nmm", "clockFormat": "hh\\nmm",
"clockStyle": "custom", "clockStyle": "custom",
"compactLockScreen": false, "compactLockScreen": false,
"dimmerOpacity": 0.2, "dimmerOpacity": 0.2,
"enableBlurBehind": true, "enableBlurBehind": true,
"enableLockScreenCountdown": true, "enableLockScreenCountdown": false,
"enableLockScreenMediaControls": false, "enableLockScreenMediaControls": false,
"enableShadows": true, "enableShadows": true,
"forceBlackScreenCorners": false, "forceBlackScreenCorners": false,
@@ -414,12 +414,12 @@
}, },
"language": "", "language": "",
"lockOnSuspend": true, "lockOnSuspend": true,
"lockScreenAnimations": false, "lockScreenAnimations": true,
"lockScreenBlur": 0, "lockScreenBlur": 0.39,
"lockScreenCountdownDuration": 10000, "lockScreenCountdownDuration": 1000,
"lockScreenMonitors": [ "lockScreenMonitors": [
], ],
"lockScreenTint": 0, "lockScreenTint": 0.12,
"passwordChars": true, "passwordChars": true,
"radiusRatio": 1, "radiusRatio": 1,
"reverseScroll": false, "reverseScroll": false,
@@ -431,7 +431,7 @@
"showChangelogOnStartup": true, "showChangelogOnStartup": true,
"showHibernateOnLockScreen": false, "showHibernateOnLockScreen": false,
"showScreenCorners": false, "showScreenCorners": false,
"showSessionButtonsOnLockScreen": true, "showSessionButtonsOnLockScreen": false,
"smoothScrollEnabled": true, "smoothScrollEnabled": true,
"telemetryEnabled": false "telemetryEnabled": false
}, },
@@ -449,7 +449,7 @@
}, },
"idle": { "idle": {
"customCommands": "[]", "customCommands": "[]",
"enabled": false, "enabled": true,
"fadeDuration": 5, "fadeDuration": 5,
"lockCommand": "", "lockCommand": "",
"lockTimeout": 660, "lockTimeout": 660,
@@ -459,7 +459,7 @@
"screenOffCommand": "", "screenOffCommand": "",
"screenOffTimeout": 600, "screenOffTimeout": 600,
"suspendCommand": "", "suspendCommand": "",
"suspendTimeout": 1800 "suspendTimeout": 0
}, },
"location": { "location": {
"analogClockInCalendar": false, "analogClockInCalendar": false,
@@ -551,9 +551,9 @@
"notifyUpdates": true "notifyUpdates": true
}, },
"sessionMenu": { "sessionMenu": {
"countdownDuration": 10000, "countdownDuration": 1000,
"enableCountdown": true, "enableCountdown": false,
"largeButtonsLayout": "single-row", "largeButtonsLayout": "grid",
"largeButtonsStyle": true, "largeButtonsStyle": true,
"position": "center", "position": "center",
"powerOptions": [ "powerOptions": [
@@ -643,6 +643,10 @@
}, },
"templates": { "templates": {
"activeTemplates": [ "activeTemplates": [
{
"enabled": true,
"id": "niri"
}
], ],
"enableUserTheming": false "enableUserTheming": false
}, },
@@ -666,6 +670,160 @@
"enableMultiMonitorDirectories": false, "enableMultiMonitorDirectories": false,
"enabled": true, "enabled": true,
"favorites": [ "favorites": [
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "tonal-spot",
"paletteColors": [
"#9ccaff",
"#bac8db",
"#d6bee5",
"#ffb4ab"
],
"path": "/home/ulve/.config/niri/wallpapers/Anime - Landscape.jpeg",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "tonal-spot",
"paletteColors": [
"#ffb5a0",
"#e7bdb2",
"#d8c58d",
"#ffb4ab"
],
"path": "/home/ulve/.config/niri/wallpapers/Anime-City-Night.png",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "tonal-spot",
"paletteColors": [
"#b4c5ff",
"#c1c5dd",
"#e2bbdb",
"#ffb4ab"
],
"path": "/home/ulve/.config/niri/wallpapers/Buildings.png",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "vibrant",
"paletteColors": [
"#b3e467",
"#6ad65c",
"#5ed48c",
"#fd4663"
],
"path": "/home/ulve/.config/niri/wallpapers/Concept-Japanese house.png",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "vibrant",
"paletteColors": [
"#e47367",
"#e2ac5b",
"#d5e25b",
"#e2685b"
],
"path": "/home/ulve/.config/niri/wallpapers/Courtside-Sunset.png",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "tonal-spot",
"paletteColors": [
"#5ed4fd",
"#b3cad5",
"#c4c3eb",
"#ffb4ab"
],
"path": "/home/ulve/.config/niri/wallpapers/Fog-Forest-Everforest.png",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "tonal-spot",
"paletteColors": [
"#a4c9ff",
"#bcc7db",
"#d9bde3",
"#ffb4ab"
],
"path": "/home/ulve/.config/niri/wallpapers/Anime-Girl-Night-Sky.jpg",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "monochrome",
"paletteColors": [
"#ffffff",
"#c6c6c6",
"#e2e2e2",
"#ffb4ab"
],
"path": "/home/ulve/.config/niri/wallpapers/Dark_Nature.png",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "vibrant",
"paletteColors": [
"#67b6e4",
"#5265e0",
"#8652e0",
"#fd4663"
],
"path": "/home/ulve/.config/niri/wallpapers/Fantasy-Lake1.png",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "vibrant",
"paletteColors": [
"#60ecc6",
"#4bc5e9",
"#4b76e9",
"#fd4663"
],
"path": "/home/ulve/.config/niri/wallpapers/IT_guy.png",
"useWallpaperColors": true
},
{
"appearance": "dark",
"colorScheme": "Gruvbox",
"darkMode": true,
"generationMethod": "tonal-spot",
"paletteColors": [
"#afd36d",
"#c1caab",
"#a0d0c9",
"#ffb4ab"
],
"path": "/home/ulve/.config/niri/wallpapers/Patterns.png",
"useWallpaperColors": true
}
], ],
"fillColor": "#000000", "fillColor": "#000000",
"fillMode": "crop", "fillMode": "crop",
@@ -674,7 +832,7 @@
"monitorDirectories": [ "monitorDirectories": [
], ],
"overviewBlur": 0.4, "overviewBlur": 0.4,
"overviewEnabled": false, "overviewEnabled": true,
"overviewTint": 0.6, "overviewTint": 0.6,
"panelPosition": "follow_bar", "panelPosition": "follow_bar",
"randomIntervalSec": 3600, "randomIntervalSec": 3600,
+2
View File
@@ -86,6 +86,8 @@
programs.firefox.enable = true; programs.firefox.enable = true;
programs.niri.enable = true; programs.niri.enable = true;
services.upower.enable = true;
xdg.portal = { xdg.portal = {
enable = true; enable = true;
wlr.enable = true; wlr.enable = true;
-4
View File
@@ -251,10 +251,6 @@
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/nvim"; source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/nvim";
}; };
xdg.configFile."noctalia" = {
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/noctalia";
};
# ── Packages ───────────────────────────────────────────────────────────────── # ── Packages ─────────────────────────────────────────────────────────────────
home.packages = with pkgs; [ home.packages = with pkgs; [
# general # general
+12 -3
View File
@@ -1,12 +1,20 @@
{ pkgs, lib, config, ... }: { pkgs, lib, config, ... }:
let
useNoctalia = true;
in
{ {
options.niri.useNoctalia = lib.mkOption {
type = lib.types.bool;
default = true;
};
config = let
useNoctalia = config.niri.useNoctalia;
in {
# ── Niri desktop environment ───────────────────────────────────────────────── # ── Niri desktop environment ─────────────────────────────────────────────────
xdg.configFile."niri" = { xdg.configFile."niri" = {
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/niri"; source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/niri";
}; };
xdg.configFile."noctalia" = lib.mkIf useNoctalia {
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/noctalia";
};
xdg.configFile."foot".source = ./config/foot; xdg.configFile."foot".source = ./config/foot;
xdg.configFile."waybar" = lib.mkIf (!useNoctalia) { source = ./config/waybar; }; xdg.configFile."waybar" = lib.mkIf (!useNoctalia) { source = ./config/waybar; };
xdg.configFile."fuzzel/fuzzel.ini" = lib.mkIf (!useNoctalia) { source = ./config/fuzzel/fuzzel.ini; }; xdg.configFile."fuzzel/fuzzel.ini" = lib.mkIf (!useNoctalia) { source = ./config/fuzzel/fuzzel.ini; };
@@ -80,4 +88,5 @@ in
] ++ lib.optionals useNoctalia [ ] ++ lib.optionals useNoctalia [
noctalia-shell noctalia-shell
]; ];
};
} }