tangled
alpha
login
or
join now
karitham.dev
/
dotfiles
0
fork
atom
a dotfile but it's really big
0
fork
atom
overview
issues
pulls
pipelines
try out noctalia shell
karitham.dev
2 months ago
cd72e7d3
7f70f4ec
verified
This commit was signed with the committer's
known signature
.
karitham.dev
SSH Key Fingerprint:
SHA256:ODeRMGYuG7M/0G+fRF6IfwUk7r5AgG5MYdFTN+uvimc=
+587
-6
8 changed files
expand all
collapse all
unified
split
flake.lock
flake.nix
modules
desktop
home.nix
nixos.nix
wm
default.nix
niri.nix
noctalia.nix
systems
kiwi
default.nix
+21
flake.lock
···
479
479
"type": "github"
480
480
}
481
481
},
482
482
+
"noctalia": {
483
483
+
"inputs": {
484
484
+
"nixpkgs": [
485
485
+
"nixpkgs"
486
486
+
]
487
487
+
},
488
488
+
"locked": {
489
489
+
"lastModified": 1769449928,
490
490
+
"narHash": "sha256-fV7n9IWFZqC7qg7GAF3sO1VEadRaPCI6uf9CT0H9g+A=",
491
491
+
"owner": "noctalia-dev",
492
492
+
"repo": "noctalia-shell",
493
493
+
"rev": "e66a77a801e09d3fbaca7a7e595e5b94167d838b",
494
494
+
"type": "github"
495
495
+
},
496
496
+
"original": {
497
497
+
"owner": "noctalia-dev",
498
498
+
"repo": "noctalia-shell",
499
499
+
"type": "github"
500
500
+
}
501
501
+
},
482
502
"pre-commit": {
483
503
"inputs": {
484
504
"flake-compat": "flake-compat_2",
···
515
535
"niri": "niri",
516
536
"nixos-wsl": "nixos-wsl",
517
537
"nixpkgs": "nixpkgs_4",
538
538
+
"noctalia": "noctalia",
518
539
"sops-nix": "sops-nix",
519
540
"ssh-keys": "ssh-keys",
520
541
"starship-jj": "starship-jj"
+4
flake.nix
···
37
37
inputs.nixpkgs.follows = "nixpkgs";
38
38
};
39
39
niri.url = "github:sodiboo/niri-flake?ref=main";
40
40
+
noctalia = {
41
41
+
url = "github:noctalia-dev/noctalia-shell";
42
42
+
inputs.nixpkgs.follows = "nixpkgs";
43
43
+
};
40
44
starship-jj.url = "gitlab:lanastara_foss/starship-jj";
41
45
ssh-keys = {
42
46
url = "https://github.com/karitham.keys";
+2
modules/desktop/home.nix
···
12
12
inherit (osConfig.desktop or { })
13
13
enable
14
14
wm
15
15
+
noctalia
15
16
waybar
16
17
hyprlock
17
18
wallpaper
···
26
27
enable = mkEnableOption "all desktop tools";
27
28
28
29
wm.enable = mkEnableOption "window manager and interface tools";
30
30
+
noctalia.enable = mkEnableOption "Noctalia Shell";
29
31
waybar.enable = mkEnableOption "Waybar status bar";
30
32
hyprlock.enable = mkEnableOption "Hyprlock screen locker";
31
33
wallpaper.enable = mkEnableOption "Wallpaper management";
+14
-5
modules/desktop/nixos.nix
···
8
8
enable = mkEnableOption "all desktop tools";
9
9
10
10
wm.enable = mkEnableOption "window manager and interface tools";
11
11
+
noctalia.enable = mkEnableOption "Noctalia Shell";
11
12
waybar.enable = mkEnableOption "Waybar status bar";
12
13
hyprlock.enable = mkEnableOption "Hyprlock screen locker";
13
14
wallpaper.enable = mkEnableOption "Wallpaper management";
···
31
32
];
32
33
33
34
config = {
35
35
+
assertions = [
36
36
+
{
37
37
+
assertion = !(cfg.waybar.enable && cfg.noctalia.enable);
38
38
+
message = "Cannot enable both Waybar and Noctalia at the same time.";
39
39
+
}
40
40
+
];
41
41
+
34
42
desktop.wm.enable = mkIf cfg.enable true;
35
35
-
desktop.waybar.enable = mkIf cfg.wm.enable true;
36
36
-
desktop.hyprlock.enable = mkIf cfg.wm.enable true;
37
37
-
desktop.wallpaper.enable = mkIf cfg.wm.enable true;
38
38
-
desktop.notification.enable = mkIf cfg.wm.enable true;
39
39
-
desktop.launcher.enable = mkIf cfg.wm.enable true;
43
43
+
# Default to Waybar if Noctalia is not explicitly enabled for now
44
44
+
desktop.waybar.enable = mkIf (cfg.wm.enable && !cfg.noctalia.enable) true;
45
45
+
desktop.hyprlock.enable = mkIf (cfg.wm.enable && !cfg.noctalia.enable) true;
46
46
+
desktop.wallpaper.enable = mkIf (cfg.wm.enable && !cfg.noctalia.enable) true;
47
47
+
desktop.notification.enable = mkIf (cfg.wm.enable && !cfg.noctalia.enable) true;
48
48
+
desktop.launcher.enable = mkIf (cfg.wm.enable && !cfg.noctalia.enable) true;
40
49
desktop.terminal.enable = mkIf cfg.enable true;
41
50
desktop.audio.enable = mkIf cfg.enable true;
42
51
desktop.apps.enable = mkIf cfg.enable true;
+1
modules/desktop/wm/default.nix
···
6
6
./hyprlock.nix
7
7
./wallpaper.nix
8
8
./niri.nix
9
9
+
./noctalia.nix
9
10
./waybar.nix
10
11
./xdg.nix
11
12
];
-1
modules/desktop/wm/niri.nix
···
111
111
binds =
112
112
with config.lib.niri.actions;
113
113
let
114
114
-
# programs.niri.settings.binds."Mod+Q".action.close-window = []
115
114
toAction =
116
115
act: dir:
117
116
(lib.mapAttrs' (
+544
modules/desktop/wm/noctalia.nix
···
1
1
+
{
2
2
+
inputs,
3
3
+
config,
4
4
+
lib,
5
5
+
...
6
6
+
}:
7
7
+
{
8
8
+
imports = [ inputs.noctalia.homeModules.default ];
9
9
+
10
10
+
config = lib.mkIf config.desktop.noctalia.enable {
11
11
+
programs.noctalia-shell = {
12
12
+
enable = true;
13
13
+
systemd.enable = true;
14
14
+
settings = {
15
15
+
enable = true;
16
16
+
settings = {
17
17
+
settingsVersion = 45;
18
18
+
appLauncher = {
19
19
+
autoPasteClipboard = false;
20
20
+
clipboardWrapText = true;
21
21
+
customLaunchPrefix = "";
22
22
+
customLaunchPrefixEnabled = false;
23
23
+
enableClipPreview = true;
24
24
+
enableClipboardHistory = false;
25
25
+
enableSettingsSearch = true;
26
26
+
iconMode = "native";
27
27
+
ignoreMouseInput = false;
28
28
+
pinnedApps = [
29
29
+
"firefox-devedition"
30
30
+
"com.mitchellh.ghostty"
31
31
+
"vesktop"
32
32
+
"signal"
33
33
+
];
34
34
+
position = "center";
35
35
+
screenshotAnnotationTool = "";
36
36
+
showCategories = false;
37
37
+
showIconBackground = false;
38
38
+
sortByMostUsed = true;
39
39
+
terminalCommand = "ghostty -e";
40
40
+
useApp2Unit = false;
41
41
+
viewMode = "grid";
42
42
+
};
43
43
+
audio = {
44
44
+
cavaFrameRate = 30;
45
45
+
mprisBlacklist = [ ];
46
46
+
preferredPlayer = "";
47
47
+
visualizerType = "linear";
48
48
+
volumeFeedback = false;
49
49
+
volumeOverdrive = false;
50
50
+
volumeStep = 5;
51
51
+
};
52
52
+
bar = {
53
53
+
backgroundOpacity = 0.93;
54
54
+
barType = "simple";
55
55
+
capsuleOpacity = 1;
56
56
+
density = "default";
57
57
+
exclusive = true;
58
58
+
floating = false;
59
59
+
frameRadius = 12;
60
60
+
frameThickness = 8;
61
61
+
hideOnOverview = false;
62
62
+
marginHorizontal = 4;
63
63
+
marginVertical = 4;
64
64
+
monitors = [ ];
65
65
+
outerCorners = true;
66
66
+
position = "top";
67
67
+
screenOverrides = [ ];
68
68
+
showCapsule = true;
69
69
+
showOutline = false;
70
70
+
useSeparateOpacity = false;
71
71
+
widgets = {
72
72
+
center = [
73
73
+
{
74
74
+
characterCount = 2;
75
75
+
colorizeIcons = false;
76
76
+
emptyColor = "secondary";
77
77
+
enableScrollWheel = true;
78
78
+
focusedColor = "primary";
79
79
+
followFocusedScreen = false;
80
80
+
groupedBorderOpacity = 1;
81
81
+
hideUnoccupied = false;
82
82
+
iconScale = 0.8;
83
83
+
id = "Workspace";
84
84
+
labelMode = "index";
85
85
+
occupiedColor = "secondary";
86
86
+
showApplications = false;
87
87
+
showBadge = true;
88
88
+
showLabelsOnlyWhenOccupied = true;
89
89
+
unfocusedIconsOpacity = 1;
90
90
+
}
91
91
+
];
92
92
+
left = [
93
93
+
{
94
94
+
icon = "rocket";
95
95
+
id = "Launcher";
96
96
+
usePrimaryColor = false;
97
97
+
}
98
98
+
{
99
99
+
customFont = "";
100
100
+
formatHorizontal = "HH:mm ddd, MMM dd";
101
101
+
formatVertical = "HH mm - dd MM";
102
102
+
id = "Clock";
103
103
+
tooltipFormat = "HH:mm ddd, MMM dd";
104
104
+
useCustomFont = false;
105
105
+
usePrimaryColor = false;
106
106
+
}
107
107
+
{
108
108
+
compactMode = true;
109
109
+
diskPath = "/";
110
110
+
id = "SystemMonitor";
111
111
+
showCpuTemp = true;
112
112
+
showCpuUsage = true;
113
113
+
showDiskUsage = false;
114
114
+
showGpuTemp = false;
115
115
+
showLoadAverage = false;
116
116
+
showMemoryAsPercent = false;
117
117
+
showMemoryUsage = true;
118
118
+
showNetworkStats = false;
119
119
+
showSwapUsage = false;
120
120
+
useMonospaceFont = true;
121
121
+
usePrimaryColor = false;
122
122
+
}
123
123
+
{
124
124
+
colorizeIcons = false;
125
125
+
hideMode = "hidden";
126
126
+
id = "ActiveWindow";
127
127
+
maxWidth = 145;
128
128
+
scrollingMode = "hover";
129
129
+
showIcon = true;
130
130
+
useFixedWidth = false;
131
131
+
}
132
132
+
{
133
133
+
compactMode = false;
134
134
+
compactShowAlbumArt = true;
135
135
+
compactShowVisualizer = false;
136
136
+
hideMode = "hidden";
137
137
+
hideWhenIdle = false;
138
138
+
id = "MediaMini";
139
139
+
maxWidth = 145;
140
140
+
panelShowAlbumArt = true;
141
141
+
panelShowVisualizer = true;
142
142
+
scrollingMode = "hover";
143
143
+
showAlbumArt = true;
144
144
+
showArtistFirst = true;
145
145
+
showProgressRing = true;
146
146
+
showVisualizer = false;
147
147
+
useFixedWidth = false;
148
148
+
visualizerType = "linear";
149
149
+
}
150
150
+
];
151
151
+
right = [
152
152
+
{
153
153
+
blacklist = [ ];
154
154
+
colorizeIcons = false;
155
155
+
drawerEnabled = true;
156
156
+
hidePassive = false;
157
157
+
id = "Tray";
158
158
+
pinned = [ ];
159
159
+
}
160
160
+
{
161
161
+
hideWhenZero = false;
162
162
+
hideWhenZeroUnread = false;
163
163
+
id = "NotificationHistory";
164
164
+
showUnreadBadge = true;
165
165
+
}
166
166
+
{
167
167
+
deviceNativePath = "";
168
168
+
displayMode = "onhover";
169
169
+
hideIfIdle = false;
170
170
+
hideIfNotDetected = true;
171
171
+
id = "Battery";
172
172
+
showNoctaliaPerformance = false;
173
173
+
showPowerProfiles = false;
174
174
+
warningThreshold = 30;
175
175
+
}
176
176
+
{
177
177
+
displayMode = "onhover";
178
178
+
id = "Volume";
179
179
+
middleClickCommand = "pwvucontrol || pavucontrol";
180
180
+
}
181
181
+
{
182
182
+
displayMode = "onhover";
183
183
+
id = "Brightness";
184
184
+
}
185
185
+
{
186
186
+
colorizeDistroLogo = false;
187
187
+
colorizeSystemIcon = "none";
188
188
+
customIconPath = "";
189
189
+
enableColorization = false;
190
190
+
icon = "noctalia";
191
191
+
id = "ControlCenter";
192
192
+
useDistroLogo = false;
193
193
+
}
194
194
+
];
195
195
+
};
196
196
+
};
197
197
+
brightness = {
198
198
+
brightnessStep = 5;
199
199
+
enableDdcSupport = false;
200
200
+
enforceMinimum = true;
201
201
+
};
202
202
+
calendar = {
203
203
+
cards = [
204
204
+
{
205
205
+
enabled = true;
206
206
+
id = "calendar-header-card";
207
207
+
}
208
208
+
{
209
209
+
enabled = true;
210
210
+
id = "calendar-month-card";
211
211
+
}
212
212
+
{
213
213
+
enabled = true;
214
214
+
id = "weather-card";
215
215
+
}
216
216
+
];
217
217
+
};
218
218
+
colorSchemes = {
219
219
+
darkMode = true;
220
220
+
generationMethod = "tonal-spot";
221
221
+
manualSunrise = "06:30";
222
222
+
manualSunset = "18:30";
223
223
+
monitorForColors = "";
224
224
+
predefinedScheme = "Catppuccin";
225
225
+
schedulingMode = "off";
226
226
+
useWallpaperColors = false;
227
227
+
};
228
228
+
controlCenter = {
229
229
+
cards = [
230
230
+
{
231
231
+
enabled = true;
232
232
+
id = "profile-card";
233
233
+
}
234
234
+
{
235
235
+
enabled = true;
236
236
+
id = "shortcuts-card";
237
237
+
}
238
238
+
{
239
239
+
enabled = true;
240
240
+
id = "audio-card";
241
241
+
}
242
242
+
{
243
243
+
enabled = false;
244
244
+
id = "brightness-card";
245
245
+
}
246
246
+
{
247
247
+
enabled = true;
248
248
+
id = "weather-card";
249
249
+
}
250
250
+
{
251
251
+
enabled = true;
252
252
+
id = "media-sysmon-card";
253
253
+
}
254
254
+
];
255
255
+
diskPath = "/";
256
256
+
position = "close_to_bar_button";
257
257
+
shortcuts = {
258
258
+
left = [
259
259
+
{ id = "Network"; }
260
260
+
{ id = "Bluetooth"; }
261
261
+
{ id = "WallpaperSelector"; }
262
262
+
{ id = "NoctaliaPerformance"; }
263
263
+
];
264
264
+
right = [
265
265
+
{ id = "Notifications"; }
266
266
+
{ id = "PowerProfile"; }
267
267
+
{ id = "KeepAwake"; }
268
268
+
{ id = "NightLight"; }
269
269
+
];
270
270
+
};
271
271
+
};
272
272
+
desktopWidgets = {
273
273
+
enabled = false;
274
274
+
gridSnap = false;
275
275
+
monitorWidgets = [ ];
276
276
+
};
277
277
+
dock = {
278
278
+
animationSpeed = 1;
279
279
+
backgroundOpacity = 1;
280
280
+
colorizeIcons = false;
281
281
+
deadOpacity = 0.6;
282
282
+
displayMode = "auto_hide";
283
283
+
enabled = true;
284
284
+
floatingRatio = 1;
285
285
+
inactiveIndicators = false;
286
286
+
monitors = [ "eDP-1" ];
287
287
+
onlySameOutput = true;
288
288
+
pinnedApps = [ ];
289
289
+
pinnedStatic = false;
290
290
+
position = "bottom";
291
291
+
size = 1;
292
292
+
};
293
293
+
general = {
294
294
+
allowPanelsOnScreenWithoutBar = true;
295
295
+
animationDisabled = false;
296
296
+
animationSpeed = 1;
297
297
+
autoStartAuth = false;
298
298
+
avatarImage = "/home/${config.my.username}/.face";
299
299
+
boxRadiusRatio = 1;
300
300
+
compactLockScreen = false;
301
301
+
dimmerOpacity = 0.2;
302
302
+
enableLockScreenCountdown = true;
303
303
+
enableShadows = true;
304
304
+
forceBlackScreenCorners = false;
305
305
+
iRadiusRatio = 1;
306
306
+
language = "";
307
307
+
lockOnSuspend = true;
308
308
+
lockScreenCountdownDuration = 10000;
309
309
+
radiusRatio = 1;
310
310
+
scaleRatio = 1;
311
311
+
screenRadiusRatio = 0;
312
312
+
shadowDirection = "bottom_right";
313
313
+
shadowOffsetX = 2;
314
314
+
shadowOffsetY = 3;
315
315
+
showChangelogOnStartup = true;
316
316
+
showHibernateOnLockScreen = false;
317
317
+
showScreenCorners = false;
318
318
+
showSessionButtonsOnLockScreen = true;
319
319
+
telemetryEnabled = false;
320
320
+
};
321
321
+
hooks = {
322
322
+
darkModeChange = "";
323
323
+
enabled = false;
324
324
+
performanceModeDisabled = "";
325
325
+
performanceModeEnabled = "";
326
326
+
screenLock = "";
327
327
+
screenUnlock = "";
328
328
+
session = "";
329
329
+
startup = "";
330
330
+
wallpaperChange = "";
331
331
+
};
332
332
+
location = {
333
333
+
analogClockInCalendar = false;
334
334
+
firstDayOfWeek = -1;
335
335
+
hideWeatherCityName = false;
336
336
+
hideWeatherTimezone = false;
337
337
+
name = "Paris";
338
338
+
showCalendarEvents = true;
339
339
+
showCalendarWeather = true;
340
340
+
showWeekNumberInCalendar = false;
341
341
+
use12hourFormat = false;
342
342
+
useFahrenheit = false;
343
343
+
weatherEnabled = true;
344
344
+
weatherShowEffects = true;
345
345
+
};
346
346
+
network = {
347
347
+
bluetoothDetailsViewMode = "grid";
348
348
+
bluetoothHideUnnamedDevices = false;
349
349
+
bluetoothRssiPollIntervalMs = 10000;
350
350
+
bluetoothRssiPollingEnabled = false;
351
351
+
wifiDetailsViewMode = "grid";
352
352
+
wifiEnabled = true;
353
353
+
};
354
354
+
nightLight = {
355
355
+
autoSchedule = true;
356
356
+
dayTemp = "6500";
357
357
+
enabled = false;
358
358
+
forced = false;
359
359
+
manualSunrise = "06:30";
360
360
+
manualSunset = "18:30";
361
361
+
nightTemp = "4000";
362
362
+
};
363
363
+
notifications = {
364
364
+
backgroundOpacity = 1;
365
365
+
criticalUrgencyDuration = 15;
366
366
+
enableKeyboardLayoutToast = true;
367
367
+
enableMediaToast = false;
368
368
+
enabled = true;
369
369
+
location = "top_right";
370
370
+
lowUrgencyDuration = 3;
371
371
+
monitors = [ ];
372
372
+
normalUrgencyDuration = 8;
373
373
+
overlayLayer = true;
374
374
+
respectExpireTimeout = false;
375
375
+
saveToHistory = {
376
376
+
critical = true;
377
377
+
low = true;
378
378
+
normal = true;
379
379
+
};
380
380
+
sounds = {
381
381
+
criticalSoundFile = "";
382
382
+
enabled = false;
383
383
+
excludedApps = "discord,firefox,chrome,chromium,edge";
384
384
+
lowSoundFile = "";
385
385
+
normalSoundFile = "";
386
386
+
separateSounds = false;
387
387
+
volume = 0.5;
388
388
+
};
389
389
+
};
390
390
+
osd = {
391
391
+
autoHideMs = 2000;
392
392
+
backgroundOpacity = 1;
393
393
+
enabled = true;
394
394
+
enabledTypes = [
395
395
+
0
396
396
+
1
397
397
+
2
398
398
+
];
399
399
+
location = "top_right";
400
400
+
monitors = [ ];
401
401
+
overlayLayer = true;
402
402
+
};
403
403
+
sessionMenu = {
404
404
+
countdownDuration = 10000;
405
405
+
enableCountdown = true;
406
406
+
largeButtonsLayout = "grid";
407
407
+
largeButtonsStyle = false;
408
408
+
position = "center";
409
409
+
powerOptions = [
410
410
+
{
411
411
+
action = "lock";
412
412
+
enabled = true;
413
413
+
}
414
414
+
{
415
415
+
action = "suspend";
416
416
+
enabled = true;
417
417
+
}
418
418
+
{
419
419
+
action = "hibernate";
420
420
+
enabled = true;
421
421
+
}
422
422
+
{
423
423
+
action = "reboot";
424
424
+
enabled = true;
425
425
+
}
426
426
+
{
427
427
+
action = "logout";
428
428
+
enabled = true;
429
429
+
}
430
430
+
{
431
431
+
action = "shutdown";
432
432
+
enabled = true;
433
433
+
}
434
434
+
];
435
435
+
showHeader = true;
436
436
+
showNumberLabels = true;
437
437
+
};
438
438
+
systemMonitor = {
439
439
+
cpuCriticalThreshold = 90;
440
440
+
cpuPollingInterval = 3000;
441
441
+
cpuWarningThreshold = 80;
442
442
+
criticalColor = "";
443
443
+
diskCriticalThreshold = 90;
444
444
+
diskPollingInterval = 30000;
445
445
+
diskWarningThreshold = 80;
446
446
+
enableDgpuMonitoring = false;
447
447
+
externalMonitor = "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor";
448
448
+
gpuCriticalThreshold = 90;
449
449
+
gpuPollingInterval = 3000;
450
450
+
gpuWarningThreshold = 80;
451
451
+
loadAvgPollingInterval = 3000;
452
452
+
memCriticalThreshold = 90;
453
453
+
memPollingInterval = 3000;
454
454
+
memWarningThreshold = 80;
455
455
+
networkPollingInterval = 3000;
456
456
+
swapCriticalThreshold = 90;
457
457
+
swapWarningThreshold = 80;
458
458
+
tempCriticalThreshold = 90;
459
459
+
tempPollingInterval = 3000;
460
460
+
tempWarningThreshold = 80;
461
461
+
useCustomColors = false;
462
462
+
warningColor = "";
463
463
+
};
464
464
+
templates = {
465
465
+
activeTemplates = [ ];
466
466
+
enableUserTheming = false;
467
467
+
};
468
468
+
ui = {
469
469
+
bluetoothDetailsViewMode = "grid";
470
470
+
bluetoothHideUnnamedDevices = false;
471
471
+
boxBorderEnabled = false;
472
472
+
fontDefault = "Lexend";
473
473
+
fontDefaultScale = 1;
474
474
+
fontFixed = "MonoLisa";
475
475
+
fontFixedScale = 1;
476
476
+
networkPanelView = "wifi";
477
477
+
panelBackgroundOpacity = 0.93;
478
478
+
panelsAttachedToBar = true;
479
479
+
settingsPanelMode = "attached";
480
480
+
tooltipsEnabled = true;
481
481
+
wifiDetailsViewMode = "grid";
482
482
+
};
483
483
+
wallpaper = {
484
484
+
automationEnabled = false;
485
485
+
directory = "/home/kar/Pictures/Wallpapers";
486
486
+
enableMultiMonitorDirectories = false;
487
487
+
enabled = true;
488
488
+
fillColor = "#000000";
489
489
+
fillMode = "crop";
490
490
+
hideWallpaperFilenames = false;
491
491
+
monitorDirectories = [ ];
492
492
+
overviewEnabled = false;
493
493
+
panelPosition = "follow_bar";
494
494
+
randomIntervalSec = 300;
495
495
+
setWallpaperOnAllMonitors = true;
496
496
+
showHiddenFiles = false;
497
497
+
solidColor = "#1a1a2e";
498
498
+
transitionDuration = 1500;
499
499
+
transitionEdgeSmoothness = 0.05;
500
500
+
transitionType = "random";
501
501
+
useSolidColor = false;
502
502
+
useWallhaven = true;
503
503
+
viewMode = "single";
504
504
+
wallhavenApiKey = "";
505
505
+
wallhavenCategories = "111";
506
506
+
wallhavenOrder = "desc";
507
507
+
wallhavenPurity = "100";
508
508
+
wallhavenQuery = "catppuccin";
509
509
+
wallhavenRatios = "";
510
510
+
wallhavenResolutionHeight = "";
511
511
+
wallhavenResolutionMode = "atleast";
512
512
+
wallhavenResolutionWidth = "";
513
513
+
wallhavenSorting = "relevance";
514
514
+
wallpaperChangeMode = "random";
515
515
+
};
516
516
+
};
517
517
+
};
518
518
+
};
519
519
+
520
520
+
programs.niri.settings.binds = {
521
521
+
"Mod+R".action.spawn = [
522
522
+
"noctalia-shell"
523
523
+
"ipc"
524
524
+
"call"
525
525
+
"launcher"
526
526
+
"toggle"
527
527
+
];
528
528
+
"Mod+Shift+N".action.spawn = [
529
529
+
"noctalia-shell"
530
530
+
"ipc"
531
531
+
"call"
532
532
+
"controlCenter"
533
533
+
"toggle"
534
534
+
];
535
535
+
"Mod+Shift+O".action.spawn = [
536
536
+
"noctalia-shell"
537
537
+
"ipc"
538
538
+
"call"
539
539
+
"sessionMenu"
540
540
+
"toggle"
541
541
+
];
542
542
+
};
543
543
+
};
544
544
+
}
+1
systems/kiwi/default.nix
···
9
9
10
10
system.stateVersion = "25.11";
11
11
12
12
+
desktop.noctalia.enable = true;
12
13
home-manager.users.${config.my.username} = {
13
14
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "hayase" ];
14
15