better consistency, add dotfiles for takamaki and new features
This commit is contained in:
35 files changed
+2455
-190
No files matched your search
+7
@@ -0,0 +1,7 @@
|
|||||||
|
[sie][DeepFilterNet#0]
|
||||||
|
attenuationLimit=30
|
||||||
|
maxDfProcessingThreshold=5
|
||||||
|
maxErbProcessingThreshold=0
|
||||||
|
minProcessingBuffer=5
|
||||||
|
minProcessingThreshold=-5
|
||||||
|
postFilterBeta=0.029999999329447746
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
[sie][Deesser#0]
|
||||||
|
ratio=16
|
||||||
|
threshold=-40
|
||||||
Executable
+23
@@ -0,0 +1,23 @@
|
|||||||
|
[EffectsPipelines]
|
||||||
|
ignoreSystemNotifications=false
|
||||||
|
|
||||||
|
[StreamInputs]
|
||||||
|
inputDevice=alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y8PK1YT167E441-00.HiFi__Mic1__source
|
||||||
|
plugins=deesser#0,equalizer#0,limiter#0
|
||||||
|
visiblePage=pluginsPage
|
||||||
|
visiblePlugin=deesser#0
|
||||||
|
|
||||||
|
[StreamOutputs]
|
||||||
|
outputDevice=alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y8PK1YT167E441-00.HiFi__Line__sink
|
||||||
|
plugins=equalizer#0
|
||||||
|
visiblePlugin=equalizer#0
|
||||||
|
|
||||||
|
[Style]
|
||||||
|
forceBreezeTheme=false
|
||||||
|
|
||||||
|
[Window]
|
||||||
|
autostartOnLogin=true
|
||||||
|
height=1408
|
||||||
|
showTrayIcon=false
|
||||||
|
visiblePage=inputPage
|
||||||
|
width=1912
|
||||||
Executable
+288
@@ -0,0 +1,288 @@
|
|||||||
|
[sie][Equalizer#0]
|
||||||
|
numBands=16
|
||||||
|
|
||||||
|
[sie][Equalizer#0#left]
|
||||||
|
band0Frequency=125
|
||||||
|
band0Gain=9.73
|
||||||
|
band0Q=1
|
||||||
|
band0Type=0
|
||||||
|
band10Frequency=550
|
||||||
|
band10Gain=-12.309999999999999
|
||||||
|
band11Frequency=900
|
||||||
|
band11Gain=-8.239999999999998
|
||||||
|
band11Q=3
|
||||||
|
band12Frequency=1500
|
||||||
|
band12Gain=-8.55
|
||||||
|
band13Frequency=2500
|
||||||
|
band13Gain=5.140000000000001
|
||||||
|
band14Frequency=3000
|
||||||
|
band14Gain=-5.98
|
||||||
|
band14Q=2
|
||||||
|
band15Frequency=4000
|
||||||
|
band15Gain=5.140000000000001
|
||||||
|
band15Q=1
|
||||||
|
band15Type=3
|
||||||
|
band16Type=0
|
||||||
|
band17Type=0
|
||||||
|
band18Type=0
|
||||||
|
band19Type=0
|
||||||
|
band1Frequency=126
|
||||||
|
band1Type=0
|
||||||
|
band20Type=0
|
||||||
|
band21Type=0
|
||||||
|
band22Type=0
|
||||||
|
band23Type=0
|
||||||
|
band24Type=0
|
||||||
|
band25Type=0
|
||||||
|
band26Type=0
|
||||||
|
band27Type=0
|
||||||
|
band28Type=0
|
||||||
|
band29Type=0
|
||||||
|
band2Frequency=150
|
||||||
|
band2Gain=-20.04
|
||||||
|
band2Q=1.5
|
||||||
|
band2Slope=1
|
||||||
|
band2Type=5
|
||||||
|
band30Type=0
|
||||||
|
band31Type=0
|
||||||
|
band3Frequency=156.38
|
||||||
|
band3Type=0
|
||||||
|
band4Frequency=175
|
||||||
|
band4Gain=7.960000000000001
|
||||||
|
band4Q=2
|
||||||
|
band5Frequency=194.06
|
||||||
|
band5Type=0
|
||||||
|
band6Frequency=240.81
|
||||||
|
band6Type=0
|
||||||
|
band7Frequency=250
|
||||||
|
band7Gain=-12.41
|
||||||
|
band7Q=2
|
||||||
|
band8Frequency=298.834
|
||||||
|
band8Type=0
|
||||||
|
band9Frequency=370.834
|
||||||
|
band9Type=0
|
||||||
|
|
||||||
|
[sie][Equalizer#0#right]
|
||||||
|
band0Frequency=125
|
||||||
|
band0Gain=9.73
|
||||||
|
band0Q=1
|
||||||
|
band0Type=0
|
||||||
|
band10Frequency=550
|
||||||
|
band10Gain=-12.309999999999999
|
||||||
|
band11Frequency=900
|
||||||
|
band11Gain=-8.239999999999998
|
||||||
|
band11Q=3
|
||||||
|
band12Frequency=1500
|
||||||
|
band12Gain=-8.55
|
||||||
|
band13Frequency=2500
|
||||||
|
band13Gain=5.140000000000001
|
||||||
|
band14Frequency=3000
|
||||||
|
band14Gain=-5.98
|
||||||
|
band14Q=2
|
||||||
|
band15Frequency=4000
|
||||||
|
band15Gain=5.140000000000001
|
||||||
|
band15Q=1
|
||||||
|
band15Type=3
|
||||||
|
band16Type=0
|
||||||
|
band17Type=0
|
||||||
|
band18Type=0
|
||||||
|
band19Type=0
|
||||||
|
band1Frequency=126
|
||||||
|
band1Type=0
|
||||||
|
band20Type=0
|
||||||
|
band21Type=0
|
||||||
|
band22Type=0
|
||||||
|
band23Type=0
|
||||||
|
band24Type=0
|
||||||
|
band25Type=0
|
||||||
|
band26Type=0
|
||||||
|
band27Type=0
|
||||||
|
band28Type=0
|
||||||
|
band29Type=0
|
||||||
|
band2Frequency=150
|
||||||
|
band2Gain=-20.04
|
||||||
|
band2Q=1.5
|
||||||
|
band2Slope=1
|
||||||
|
band2Type=5
|
||||||
|
band30Type=0
|
||||||
|
band31Type=0
|
||||||
|
band3Frequency=156.38
|
||||||
|
band3Type=0
|
||||||
|
band4Frequency=175
|
||||||
|
band4Gain=7.960000000000001
|
||||||
|
band4Q=2
|
||||||
|
band5Frequency=194.06
|
||||||
|
band5Type=0
|
||||||
|
band6Frequency=240.81
|
||||||
|
band6Type=0
|
||||||
|
band7Frequency=250
|
||||||
|
band7Gain=-12.41
|
||||||
|
band7Q=2
|
||||||
|
band8Frequency=298.834
|
||||||
|
band8Type=0
|
||||||
|
band9Frequency=370.834
|
||||||
|
band9Type=0
|
||||||
|
|
||||||
|
[sie][Equalizer#1]
|
||||||
|
outputGain=5
|
||||||
|
|
||||||
|
[sie][Equalizer#1#left]
|
||||||
|
band12Frequency=600
|
||||||
|
band12Gain=-6.62
|
||||||
|
band12Q=1.5
|
||||||
|
band13Frequency=1500
|
||||||
|
band13Gain=-8.37
|
||||||
|
band13Q=2
|
||||||
|
band7Frequency=125
|
||||||
|
band7Q=1
|
||||||
|
band7Slope=2
|
||||||
|
band7Type=2
|
||||||
|
band8Gain=-4.77
|
||||||
|
band8Q=1
|
||||||
|
|
||||||
|
[sie][Equalizer#1#right]
|
||||||
|
band12Frequency=600
|
||||||
|
band12Gain=-6.62
|
||||||
|
band12Q=1.5
|
||||||
|
band13Frequency=1500
|
||||||
|
band13Gain=-8.37
|
||||||
|
band13Q=2
|
||||||
|
band7Frequency=125
|
||||||
|
band7Q=1
|
||||||
|
band7Slope=2
|
||||||
|
band7Type=2
|
||||||
|
band8Gain=-4.77
|
||||||
|
band8Q=1
|
||||||
|
|
||||||
|
[soe][Equalizer#0]
|
||||||
|
numBands=10
|
||||||
|
|
||||||
|
[soe][Equalizer#0#left]
|
||||||
|
band0Frequency=35
|
||||||
|
band0Gain=-8.199999809265137
|
||||||
|
band0Mode=6
|
||||||
|
band0Q=0.5
|
||||||
|
band10Type=0
|
||||||
|
band11Type=0
|
||||||
|
band12Type=0
|
||||||
|
band13Type=0
|
||||||
|
band14Type=0
|
||||||
|
band15Type=0
|
||||||
|
band16Type=0
|
||||||
|
band17Type=0
|
||||||
|
band18Type=0
|
||||||
|
band19Type=0
|
||||||
|
band1Frequency=105
|
||||||
|
band1Gain=5.5
|
||||||
|
band1Mode=6
|
||||||
|
band1Q=0.6666666865348816
|
||||||
|
band1Type=5
|
||||||
|
band20Type=0
|
||||||
|
band21Type=0
|
||||||
|
band22Type=0
|
||||||
|
band23Type=0
|
||||||
|
band24Type=0
|
||||||
|
band25Type=0
|
||||||
|
band26Type=0
|
||||||
|
band27Type=0
|
||||||
|
band28Type=0
|
||||||
|
band29Type=0
|
||||||
|
band2Frequency=130
|
||||||
|
band2Gain=-6.300000190734863
|
||||||
|
band2Mode=6
|
||||||
|
band2Q=1.399999976158142
|
||||||
|
band30Type=0
|
||||||
|
band31Type=0
|
||||||
|
band3Frequency=195
|
||||||
|
band3Gain=-2.799999952316284
|
||||||
|
band3Mode=6
|
||||||
|
band3Q=2.200000047683716
|
||||||
|
band4Frequency=360
|
||||||
|
band4Gain=4
|
||||||
|
band4Mode=6
|
||||||
|
band4Q=3
|
||||||
|
band5Frequency=820
|
||||||
|
band5Gain=3.200000047683716
|
||||||
|
band5Mode=6
|
||||||
|
band5Q=3
|
||||||
|
band6Frequency=950
|
||||||
|
band6Gain=-2.799999952316284
|
||||||
|
band6Mode=6
|
||||||
|
band6Q=2.5
|
||||||
|
band7Frequency=2400
|
||||||
|
band7Gain=13.5
|
||||||
|
band7Mode=6
|
||||||
|
band7Q=0.8999999761581421
|
||||||
|
band8Frequency=4250
|
||||||
|
band8Gain=-5
|
||||||
|
band8Mode=6
|
||||||
|
band8Q=4
|
||||||
|
band9Frequency=6650
|
||||||
|
band9Gain=-6.699999809265137
|
||||||
|
band9Mode=6
|
||||||
|
band9Q=4
|
||||||
|
|
||||||
|
[soe][Equalizer#0#right]
|
||||||
|
band0Frequency=35
|
||||||
|
band0Gain=-8.199999809265137
|
||||||
|
band0Mode=6
|
||||||
|
band0Q=0.5
|
||||||
|
band10Type=0
|
||||||
|
band11Type=0
|
||||||
|
band12Type=0
|
||||||
|
band13Type=0
|
||||||
|
band14Type=0
|
||||||
|
band15Type=0
|
||||||
|
band16Type=0
|
||||||
|
band17Type=0
|
||||||
|
band18Type=0
|
||||||
|
band19Type=0
|
||||||
|
band1Frequency=105
|
||||||
|
band1Gain=5.5
|
||||||
|
band1Mode=6
|
||||||
|
band1Q=0.6666666865348816
|
||||||
|
band1Type=5
|
||||||
|
band20Type=0
|
||||||
|
band21Type=0
|
||||||
|
band22Type=0
|
||||||
|
band23Type=0
|
||||||
|
band24Type=0
|
||||||
|
band25Type=0
|
||||||
|
band26Type=0
|
||||||
|
band27Type=0
|
||||||
|
band28Type=0
|
||||||
|
band29Type=0
|
||||||
|
band2Frequency=130
|
||||||
|
band2Gain=-6.300000190734863
|
||||||
|
band2Mode=6
|
||||||
|
band2Q=1.399999976158142
|
||||||
|
band30Type=0
|
||||||
|
band31Type=0
|
||||||
|
band3Frequency=195
|
||||||
|
band3Gain=-2.799999952316284
|
||||||
|
band3Mode=6
|
||||||
|
band3Q=2.200000047683716
|
||||||
|
band4Frequency=360
|
||||||
|
band4Gain=4
|
||||||
|
band4Mode=6
|
||||||
|
band4Q=3
|
||||||
|
band5Frequency=820
|
||||||
|
band5Gain=3.200000047683716
|
||||||
|
band5Mode=6
|
||||||
|
band5Q=3
|
||||||
|
band6Frequency=950
|
||||||
|
band6Gain=-2.799999952316284
|
||||||
|
band6Mode=6
|
||||||
|
band6Q=2.5
|
||||||
|
band7Frequency=2400
|
||||||
|
band7Gain=13.5
|
||||||
|
band7Mode=6
|
||||||
|
band7Q=0.8999999761581421
|
||||||
|
band8Frequency=4250
|
||||||
|
band8Gain=-5
|
||||||
|
band8Mode=6
|
||||||
|
band8Q=4
|
||||||
|
band9Frequency=6650
|
||||||
|
band9Gain=-6.699999809265137
|
||||||
|
band9Mode=6
|
||||||
|
band9Q=4
|
||||||
Executable
+22
@@ -0,0 +1,22 @@
|
|||||||
|
[sie][Gate#0]
|
||||||
|
attack=0
|
||||||
|
curveThreshold=-50
|
||||||
|
curveZone=-8
|
||||||
|
hpfFrequency=300
|
||||||
|
hysteresisThreshold=-18
|
||||||
|
hysteresisZone=-5
|
||||||
|
lpfFrequency=2500
|
||||||
|
outputGain=5
|
||||||
|
reduction=-30
|
||||||
|
release=150
|
||||||
|
sidechainLookahead=1.0000000000000007
|
||||||
|
sidechainMode=1
|
||||||
|
sidechainReactivity=5
|
||||||
|
|
||||||
|
[sie][Gate#1]
|
||||||
|
attack=0
|
||||||
|
curveThreshold=-36
|
||||||
|
curveZone=-5
|
||||||
|
reduction=-72
|
||||||
|
release=200
|
||||||
|
sidechainMode=1
|
||||||
Executable
+8
@@ -0,0 +1,8 @@
|
|||||||
|
[sie][Limiter#0]
|
||||||
|
alrKnee=-0.5
|
||||||
|
alrRelease=30
|
||||||
|
attack=2
|
||||||
|
gainBoost=false
|
||||||
|
inputGain=32
|
||||||
|
lookahead=2
|
||||||
|
release=4
|
||||||
+1252
File diff suppressed because it is too large.
Load diff
Executable
+42
@@ -0,0 +1,42 @@
|
|||||||
|
body {
|
||||||
|
/* sizes */
|
||||||
|
--gap: 10px; /* spacing between panels */
|
||||||
|
--divider-thickness: 4px; /* thickness of unread messages divider and highlighted message borders */
|
||||||
|
--border-thickness: 0px; /* thickness of borders around main panels. DOES NOT AFFECT OTHER BORDERS */
|
||||||
|
|
||||||
|
/* animation/transition options */
|
||||||
|
--animations: on; /* off: disable animations/transitions, on: enable animations/transitions */
|
||||||
|
--list-item-transition: 0.2s ease; /* transition for list items */
|
||||||
|
--dms-icon-svg-transition: 0.35s ease; /* transition for the dms icon */
|
||||||
|
--border-hover-transition: 1s ease; /* transition for borders when hovered */
|
||||||
|
}
|
||||||
|
|
||||||
|
/* color options */
|
||||||
|
:root {
|
||||||
|
--colors: on; /* off: discord default colors, on: midnight custom colors */
|
||||||
|
|
||||||
|
/* text colors */
|
||||||
|
--text-0: hsl(220, 16%, 95%); /* text on colored elements */
|
||||||
|
--text-2: hsl(217.5, 20%, 90%); /* headings and important text */
|
||||||
|
--text-3: hsl(219, 30%, 85%); /* normal text */
|
||||||
|
--text-4: hsl(220.5, 14%, 75%); /* icon buttons and channels */
|
||||||
|
--text-5: hsl(221, 13.5%, 70%); /* muted channels/chats and timestamps */
|
||||||
|
|
||||||
|
/* background and dark colors */
|
||||||
|
--bg-1: #303643; /* dark buttons when clicked */
|
||||||
|
--bg-2: #343b49; /* dark buttons */
|
||||||
|
--bg-3: #3b4252; /* spacing, secondary elements */
|
||||||
|
--bg-4: #2e3440; /* main background color */
|
||||||
|
--hover: #eceff415; /* channels and buttons when hovered */
|
||||||
|
--active: hsl(222, 18%, 35%); /* channels and buttons when clicked or selected */
|
||||||
|
--active-2: #2e3440; /* extra state for transparent buttons */
|
||||||
|
--message-hover: #3b425240; /* messages when hovered */
|
||||||
|
|
||||||
|
/* accent colors */
|
||||||
|
--accent-1: #8fbcbb; /* links and other accent text */
|
||||||
|
--accent-2: hsl(179, 25%, 45%); /* small accent elements */
|
||||||
|
--accent-3: hsl(193, 25%, 45%); /* accent buttons */
|
||||||
|
--accent-4: hsl(193, 25%, 55%); /* accent buttons when hovered */
|
||||||
|
--accent-5: hsl(193, 25%, 60%); /* accent buttons when clicked */
|
||||||
|
--accent-new: #bf616a; /* stuff that's normally red like mute/deafen buttons */
|
||||||
|
};
|
||||||
Executable
+26
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
"appBadge": true,
|
||||||
|
"arRPC": true,
|
||||||
|
"autoStartMinimized": false,
|
||||||
|
"customTitleBar": false,
|
||||||
|
"discordBranch": "stable",
|
||||||
|
"enableMenu": false,
|
||||||
|
"enableSplashScreen": true,
|
||||||
|
"hardwareAcceleration": true,
|
||||||
|
"minimizeToTray": true,
|
||||||
|
"tray": true,
|
||||||
|
"splashColor": "rgb(205, 213, 228)",
|
||||||
|
"splashBackground": "rgb(46, 52, 64)",
|
||||||
|
"hardwareVideoAcceleration": true,
|
||||||
|
"clickTrayToShowHide": true,
|
||||||
|
"arRPCDisabled": false,
|
||||||
|
"arRPCProcessScanning": true,
|
||||||
|
"audio": {
|
||||||
|
"granularSelect": false
|
||||||
|
},
|
||||||
|
"spellCheckLanguages": [
|
||||||
|
"en-GB",
|
||||||
|
"en"
|
||||||
|
],
|
||||||
|
"staticTitle": true
|
||||||
|
}
|
||||||
@@ -0,0 +1,180 @@
|
|||||||
|
include "./noctalia.kdl"
|
||||||
|
input {
|
||||||
|
keyboard {
|
||||||
|
xkb {
|
||||||
|
layout "gb"
|
||||||
|
model ""
|
||||||
|
rules ""
|
||||||
|
variant ""
|
||||||
|
}
|
||||||
|
repeat-delay 600
|
||||||
|
repeat-rate 25
|
||||||
|
track-layout "global"
|
||||||
|
numlock
|
||||||
|
}
|
||||||
|
mouse {
|
||||||
|
accel-speed 0.25
|
||||||
|
accel-profile "flat"
|
||||||
|
}
|
||||||
|
focus-follows-mouse max-scroll-amount="0%"
|
||||||
|
}
|
||||||
|
|
||||||
|
output "DP-2" {
|
||||||
|
mode "2560x1440"
|
||||||
|
}
|
||||||
|
|
||||||
|
output "HDMI-A-2" {
|
||||||
|
mode "1920x1080@60"
|
||||||
|
transform "270"
|
||||||
|
position x=-1080 y=-250
|
||||||
|
}
|
||||||
|
|
||||||
|
output "HDMI-A-1" {
|
||||||
|
mode "1920x1080@60"
|
||||||
|
transform "270"
|
||||||
|
position x=-1080 y=-250
|
||||||
|
}
|
||||||
|
|
||||||
|
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
|
||||||
|
prefer-no-csd
|
||||||
|
overview { zoom 0.67; }
|
||||||
|
layout {
|
||||||
|
gaps 16
|
||||||
|
struts {
|
||||||
|
left 6
|
||||||
|
right 6
|
||||||
|
top 0
|
||||||
|
bottom 0
|
||||||
|
}
|
||||||
|
focus-ring {
|
||||||
|
width 1.5
|
||||||
|
}
|
||||||
|
border { off; }
|
||||||
|
shadow {
|
||||||
|
on
|
||||||
|
offset x=0.000000 y=5.000000
|
||||||
|
softness 30.000000
|
||||||
|
spread 5.000000
|
||||||
|
draw-behind-window false
|
||||||
|
color "#00000070"
|
||||||
|
}
|
||||||
|
default-column-width
|
||||||
|
center-focused-column "never"
|
||||||
|
always-center-single-column
|
||||||
|
}
|
||||||
|
cursor {
|
||||||
|
xcursor-theme "Bibata-Modern-Ice"
|
||||||
|
xcursor-size 22
|
||||||
|
}
|
||||||
|
hotkey-overlay { skip-at-startup; }
|
||||||
|
binds {
|
||||||
|
Mod+B { spawn "zen-browser"; }
|
||||||
|
Mod+C { spawn "kcalc"; }
|
||||||
|
Mod+D { spawn "noctalia" "msg" "panel-toggle" "launcher"; }
|
||||||
|
Mod+E { spawn "dolphin"; }
|
||||||
|
Mod+Return { spawn "kitty"; }
|
||||||
|
Mod+O { spawn "obsidian"; }
|
||||||
|
|
||||||
|
ISO_Level3_Shift+Comma { spawn "equibop" "--toggle-mic"; }
|
||||||
|
ISO_Level3_Shift+Period { spawn "equibop" "--toggle-deafen"; }
|
||||||
|
|
||||||
|
Mod+Space { toggle-overview; }
|
||||||
|
Mod+Q { close-window; }
|
||||||
|
Mod+F { maximize-window-to-edges; }
|
||||||
|
Mod+Shift+F { fullscreen-window; }
|
||||||
|
Mod+Shift+E { quit; }
|
||||||
|
|
||||||
|
Mod+L { spawn "noctalia" "msg" "session" "lock"; }
|
||||||
|
Mod+Shift+D { spawn "noctalia" "msg" "desktop-widgets-edit"; }
|
||||||
|
Mod+Shift+B { spawn "noctalia" "msg" "settings-open" "bar"; }
|
||||||
|
Mod+Shift+S { spawn "noctalia" "msg" "settings-open"; }
|
||||||
|
Mod+Period { spawn "noctalia" "msg" "panel-toggle" "control-center"; }
|
||||||
|
Mod+W { spawn "noctalia" "msg" "panel-toggle" "wallpaper"; }
|
||||||
|
Mod+Shift+P { spawn "noctalia" "msg" "panel-toggle" "session"; }
|
||||||
|
Mod+V { spawn "noctalia" "msg" "panel-toggle" "clipboard"; }
|
||||||
|
Mod+P { spawn "noctalia" "msg" "panel-toggle" "control-center" "power"; }
|
||||||
|
Ctrl+Shift+Escape { spawn "noctalia" "msg" "panel-toggle" "control-center" "system"; }
|
||||||
|
|
||||||
|
Mod+A { spawn "toggle-easyeffects"; }
|
||||||
|
|
||||||
|
Mod+Up { focus-workspace-up; }
|
||||||
|
Mod+Down { focus-workspace-down; }
|
||||||
|
Mod+Left { focus-column-left; }
|
||||||
|
Mod+Right { focus-column-right; }
|
||||||
|
|
||||||
|
Mod+WheelScrollUp { focus-column-left; }
|
||||||
|
Mod+WheelScrollDown { focus-column-right; }
|
||||||
|
Mod+Shift+WheelScrollUp { focus-workspace-up; }
|
||||||
|
Mod+Shift+WheelScrollDown { focus-workspace-down; }
|
||||||
|
|
||||||
|
Mod+Shift+Up { move-window-to-workspace-up; }
|
||||||
|
Mod+Shift+Down { move-window-to-workspace-down; }
|
||||||
|
Mod+Shift+Left { move-column-left; }
|
||||||
|
Mod+Shift+Right { move-column-right; }
|
||||||
|
|
||||||
|
Mod+Control+Left { focus-monitor-left; }
|
||||||
|
Mod+Control+Right { focus-monitor-right; }
|
||||||
|
|
||||||
|
Mod+Shift+Control+Left { move-window-to-monitor-left; }
|
||||||
|
Mod+Shift+Control+Right { move-window-to-monitor-right; }
|
||||||
|
|
||||||
|
XF86AudioLowerVolume { spawn "noctalia" "msg" "volume-down" "5"; }
|
||||||
|
XF86AudioRaiseVolume { spawn "noctalia" "msg" "volume-up" "5"; }
|
||||||
|
XF86AudioMute { spawn "noctalia" "msg" "volume-mute"; }
|
||||||
|
Print { screenshot; }
|
||||||
|
Mod+XF86AudioRaiseVolume cooldown-ms=250 { spawn "increase-brightness" "/dev/i2c-10"; }
|
||||||
|
Mod+XF86AudioLowerVolume cooldown-ms=250 { spawn "decrease-brightness" "/dev/i2c-10"; }
|
||||||
|
Mod+Shift+XF86AudioRaiseVolume cooldown-ms=250 { spawn "increase-brightness" "/dev/i2c-6"; }
|
||||||
|
Mod+Shift+XF86AudioLowerVolume cooldown-ms=250 { spawn "decrease-brightness" "/dev/i2c-6"; }
|
||||||
|
}
|
||||||
|
spawn-at-startup "noctalia"
|
||||||
|
window-rule {
|
||||||
|
draw-border-with-background false
|
||||||
|
geometry-corner-radius 4
|
||||||
|
clip-to-geometry true
|
||||||
|
}
|
||||||
|
window-rule { // Maximized on vertical monitor
|
||||||
|
match at-startup=true app-id="^steam$" title="^Steam$"
|
||||||
|
match at-startup=true app-id="^equibop$"
|
||||||
|
open-maximized-to-edges true
|
||||||
|
open-on-output "HDMI-A-1"
|
||||||
|
}
|
||||||
|
window-rule { // Steam windows float (excluding main window)
|
||||||
|
match app-id="^steam$"
|
||||||
|
exclude title="^Steam$"
|
||||||
|
exclude title=r#"^notificationtoasts_\d+_desktop$"#
|
||||||
|
default-window-height { proportion 0.5; }
|
||||||
|
open-floating true
|
||||||
|
}
|
||||||
|
window-rule {
|
||||||
|
match app-id="steam" title=r#"^notificationtoasts_\d+_desktop$"#
|
||||||
|
default-floating-position x=10 y=10 relative-to="bottom-right"
|
||||||
|
}
|
||||||
|
window-rule { // Fullscreen on main monitor
|
||||||
|
match app-id="^steam_app_\\d+$"
|
||||||
|
open-fullscreen true
|
||||||
|
open-on-output "DP-2"
|
||||||
|
}
|
||||||
|
window-rule { // Maximized on any monitor
|
||||||
|
match app-id="^code$"
|
||||||
|
open-maximized-to-edges true
|
||||||
|
}
|
||||||
|
window-rule {
|
||||||
|
match app-id="^kitty$"
|
||||||
|
default-column-width { proportion 0.4; }
|
||||||
|
open-on-output "DP-2"
|
||||||
|
}
|
||||||
|
window-rule {
|
||||||
|
match app-id="^org\\.prismlauncher\\.PrismLauncher$"
|
||||||
|
default-window-height { fixed 750; }
|
||||||
|
}
|
||||||
|
gestures { hot-corners { off; }; }
|
||||||
|
animations {
|
||||||
|
on
|
||||||
|
slowdown 1.25
|
||||||
|
}
|
||||||
|
layer-rule {
|
||||||
|
match namespace="^noctalia-backdrop"
|
||||||
|
place-within-backdrop true
|
||||||
|
}
|
||||||
|
include "noctalia.kdl"
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
@@ -0,0 +1,311 @@
|
|||||||
|
config_version = 13
|
||||||
|
|
||||||
|
[backdrop]
|
||||||
|
blur_intensity = 0.65999998524785042
|
||||||
|
enabled = true
|
||||||
|
tint_intensity = 0.44999998994171619
|
||||||
|
|
||||||
|
[bar]
|
||||||
|
order = [ "default" ]
|
||||||
|
|
||||||
|
[bar.default]
|
||||||
|
background_opacity = 0.79999998211860657
|
||||||
|
border = "surface_variant"
|
||||||
|
border_width = 0.5
|
||||||
|
capsule_radius = 4
|
||||||
|
capsule_thickness = 0.69999998807907104
|
||||||
|
concave_edge_corners = false
|
||||||
|
enabled = false
|
||||||
|
end = [ "notifications", "spacer_2", "tray" ]
|
||||||
|
font_family = "SauceCodePro Nerd Font"
|
||||||
|
margin_edge = 8
|
||||||
|
margin_ends = 8
|
||||||
|
margin_opposite_edge = 8
|
||||||
|
position = "left"
|
||||||
|
radius = 8
|
||||||
|
shadow = false
|
||||||
|
start = [ "workspaces", "spacer_3", "media" ]
|
||||||
|
thickness = 44
|
||||||
|
widget_spacing = 12
|
||||||
|
|
||||||
|
[bar.default.monitor.DP-2]
|
||||||
|
enabled = true
|
||||||
|
|
||||||
|
[battery.device."/org/freedesktop/UPower/devices/battery_hidpp_battery_0"]
|
||||||
|
warning_threshold = 25
|
||||||
|
|
||||||
|
[brightness]
|
||||||
|
enable_ddcutil = true
|
||||||
|
|
||||||
|
[[control_center.shortcuts]]
|
||||||
|
type = "wifi"
|
||||||
|
|
||||||
|
[[control_center.shortcuts]]
|
||||||
|
type = "bluetooth"
|
||||||
|
|
||||||
|
[[control_center.shortcuts]]
|
||||||
|
type = "notification"
|
||||||
|
|
||||||
|
[[control_center.shortcuts]]
|
||||||
|
type = "power_profile"
|
||||||
|
|
||||||
|
[desktop_widgets]
|
||||||
|
schema_version = 2
|
||||||
|
widget_order = []
|
||||||
|
|
||||||
|
[desktop_widgets.grid]
|
||||||
|
cell_size = 16
|
||||||
|
major_interval = 4
|
||||||
|
visible = true
|
||||||
|
|
||||||
|
[desktop_widgets.widget]
|
||||||
|
|
||||||
|
[dock]
|
||||||
|
active_scale = 0.95000001415610313
|
||||||
|
background_opacity = 0.79999998211860657
|
||||||
|
border = "surface_variant"
|
||||||
|
border_width = 0.5
|
||||||
|
concave_edge_corners = false
|
||||||
|
cross_axis_padding = 4
|
||||||
|
enabled = true
|
||||||
|
inactive_opacity = 0.89999997988343239
|
||||||
|
item_spacing = 0
|
||||||
|
magnification_scale = 1.1000000014901161
|
||||||
|
main_axis_padding = 8
|
||||||
|
monitors = [ "DP-2" ]
|
||||||
|
pinned = [
|
||||||
|
"net.thunderbird.Thunderbird",
|
||||||
|
"org.prismlauncher.PrismLauncher",
|
||||||
|
"github-desktop",
|
||||||
|
"unityhub",
|
||||||
|
"code",
|
||||||
|
"enteauth",
|
||||||
|
"com.protonvpn.www"
|
||||||
|
]
|
||||||
|
position = "right"
|
||||||
|
radius_bottom_right = 8
|
||||||
|
radius_top_right = 8
|
||||||
|
reserve_space = false
|
||||||
|
shadow = false
|
||||||
|
show_dots = true
|
||||||
|
show_running = false
|
||||||
|
smart_auto_hide = true
|
||||||
|
|
||||||
|
[idle]
|
||||||
|
behavior_order = [ "screen-off" ]
|
||||||
|
pre_action_fade_seconds = 30
|
||||||
|
|
||||||
|
[idle.behavior.screen-off]
|
||||||
|
action = "screen_off"
|
||||||
|
enabled = true
|
||||||
|
timeout = 600.0
|
||||||
|
|
||||||
|
[location]
|
||||||
|
address = "Redditch, England"
|
||||||
|
|
||||||
|
[lockscreen]
|
||||||
|
enabled = false
|
||||||
|
fingerprint = false
|
||||||
|
|
||||||
|
[lockscreen_widgets]
|
||||||
|
enabled = false
|
||||||
|
schema_version = 2
|
||||||
|
widget_order = [ "lockscreen-login-box@HDMI-A-1", "lockscreen-login-box@DP-2", "lockscreen-login-box@HDMI-A-2" ]
|
||||||
|
|
||||||
|
[lockscreen_widgets.grid]
|
||||||
|
cell_size = 16
|
||||||
|
major_interval = 4
|
||||||
|
visible = true
|
||||||
|
|
||||||
|
[lockscreen_widgets.widget."lockscreen-login-box@DP-2"]
|
||||||
|
box_height = 196.0
|
||||||
|
box_width = 810.0
|
||||||
|
cx = 1280.0
|
||||||
|
cy = 1258.0
|
||||||
|
output = "DP-2"
|
||||||
|
placement_height = 1440.0
|
||||||
|
placement_width = 2560.0
|
||||||
|
rotation = 0.0
|
||||||
|
type = "login_box"
|
||||||
|
|
||||||
|
[lockscreen_widgets.widget."lockscreen-login-box@DP-2".settings]
|
||||||
|
background_color = "surface_variant"
|
||||||
|
background_opacity = 0.88
|
||||||
|
background_radius = 12.0
|
||||||
|
center_password_text = false
|
||||||
|
input_opacity = 1.0
|
||||||
|
input_radius = 6.0
|
||||||
|
layout = "regular"
|
||||||
|
show_caps_lock = true
|
||||||
|
show_keyboard_layout = true
|
||||||
|
show_login_button = true
|
||||||
|
show_media = true
|
||||||
|
show_session_buttons = true
|
||||||
|
show_unlock_hint = true
|
||||||
|
show_weather = true
|
||||||
|
|
||||||
|
[lockscreen_widgets.widget."lockscreen-login-box@HDMI-A-1"]
|
||||||
|
box_height = 196.0
|
||||||
|
box_width = 810.0
|
||||||
|
cx = 960.0
|
||||||
|
cy = 898.0
|
||||||
|
output = "HDMI-A-1"
|
||||||
|
placement_height = 1920.0
|
||||||
|
placement_width = 1080.0
|
||||||
|
rotation = 0.0
|
||||||
|
type = "login_box"
|
||||||
|
|
||||||
|
[lockscreen_widgets.widget."lockscreen-login-box@HDMI-A-1".settings]
|
||||||
|
background_color = "surface_variant"
|
||||||
|
background_opacity = 0.88
|
||||||
|
background_radius = 12.0
|
||||||
|
center_password_text = false
|
||||||
|
input_opacity = 1.0
|
||||||
|
input_radius = 6.0
|
||||||
|
layout = "regular"
|
||||||
|
show_caps_lock = true
|
||||||
|
show_keyboard_layout = true
|
||||||
|
show_login_button = true
|
||||||
|
show_media = true
|
||||||
|
show_session_buttons = true
|
||||||
|
show_unlock_hint = true
|
||||||
|
show_weather = true
|
||||||
|
|
||||||
|
[lockscreen_widgets.widget."lockscreen-login-box@HDMI-A-2"]
|
||||||
|
box_height = 196.0
|
||||||
|
box_width = 810.0
|
||||||
|
cx = 960.0
|
||||||
|
cy = 898.0
|
||||||
|
output = "HDMI-A-2"
|
||||||
|
placement_height = 0.0
|
||||||
|
placement_width = 0.0
|
||||||
|
rotation = 0.0
|
||||||
|
type = "login_box"
|
||||||
|
|
||||||
|
[lockscreen_widgets.widget."lockscreen-login-box@HDMI-A-2".settings]
|
||||||
|
background_color = "surface_variant"
|
||||||
|
background_opacity = 0.88
|
||||||
|
background_radius = 12.0
|
||||||
|
center_password_text = false
|
||||||
|
input_opacity = 1.0
|
||||||
|
input_radius = 6.0
|
||||||
|
layout = "regular"
|
||||||
|
show_caps_lock = true
|
||||||
|
show_keyboard_layout = true
|
||||||
|
show_login_button = true
|
||||||
|
show_media = true
|
||||||
|
show_session_buttons = true
|
||||||
|
show_unlock_hint = true
|
||||||
|
show_weather = true
|
||||||
|
|
||||||
|
[nightlight]
|
||||||
|
enabled = true
|
||||||
|
temperature_day = 6000
|
||||||
|
temperature_night = 4800
|
||||||
|
|
||||||
|
[notification]
|
||||||
|
background_opacity = 0.99999997764825821
|
||||||
|
|
||||||
|
[osd]
|
||||||
|
background_opacity = 0.99999997764825821
|
||||||
|
|
||||||
|
[shell]
|
||||||
|
app_icon_color = "on_surface_variant"
|
||||||
|
corner_radius_scale = 0.85000001266598701
|
||||||
|
niri_overview_type_to_launch_enabled = true
|
||||||
|
polkit_agent = true
|
||||||
|
popup_shadows = false
|
||||||
|
|
||||||
|
[shell.animation]
|
||||||
|
speed = 1.4000000208616257
|
||||||
|
|
||||||
|
[shell.launcher]
|
||||||
|
app_grid = true
|
||||||
|
|
||||||
|
[shell.panel]
|
||||||
|
clipboard_placement = "attached"
|
||||||
|
launcher_placement = "attached"
|
||||||
|
shadow = false
|
||||||
|
|
||||||
|
[[shell.session.actions]]
|
||||||
|
action = "logout"
|
||||||
|
countdown_seconds = 0.0
|
||||||
|
enabled = true
|
||||||
|
shortcut = "1"
|
||||||
|
variant = "default"
|
||||||
|
|
||||||
|
[[shell.session.actions]]
|
||||||
|
action = "command"
|
||||||
|
command = "~/.local/bin/switch-os"
|
||||||
|
countdown_seconds = 0.0
|
||||||
|
enabled = true
|
||||||
|
glyph = "brand-windows-filled"
|
||||||
|
label = "Windows"
|
||||||
|
shortcut = "2"
|
||||||
|
variant = "default"
|
||||||
|
|
||||||
|
[[shell.session.actions]]
|
||||||
|
action = "reboot"
|
||||||
|
countdown_seconds = 0.0
|
||||||
|
enabled = true
|
||||||
|
shortcut = "3"
|
||||||
|
variant = "default"
|
||||||
|
|
||||||
|
[[shell.session.actions]]
|
||||||
|
action = "shutdown"
|
||||||
|
countdown_seconds = 0.0
|
||||||
|
enabled = true
|
||||||
|
shortcut = "4"
|
||||||
|
variant = "destructive"
|
||||||
|
|
||||||
|
[theme]
|
||||||
|
builtin = "Nord"
|
||||||
|
community_palette = "Peche"
|
||||||
|
mode = "dark"
|
||||||
|
source = "builtin"
|
||||||
|
wallpaper_scheme = "m3-content"
|
||||||
|
|
||||||
|
[theme.templates]
|
||||||
|
builtin_ids = [ "gtk3", "gtk4", "kcolorscheme", "kitty", "niri", "qt" ]
|
||||||
|
|
||||||
|
[wallpaper.default]
|
||||||
|
path = "/home/grey/Pictures/Wallpapers/2560x1440.png"
|
||||||
|
|
||||||
|
[wallpaper.last]
|
||||||
|
path = "/home/grey/Pictures/Wallpapers/2560x1440.png"
|
||||||
|
|
||||||
|
[wallpaper.monitors.DP-2]
|
||||||
|
path = "/home/grey/Pictures/Wallpapers/2560x1440.png"
|
||||||
|
|
||||||
|
[wallpaper.monitors.HDMI-A-2]
|
||||||
|
path = "/home/grey/Pictures/Wallpapers/2560x1440.png"
|
||||||
|
|
||||||
|
[widget.active_window]
|
||||||
|
display = "text_only"
|
||||||
|
|
||||||
|
[widget.clock]
|
||||||
|
capsule = true
|
||||||
|
capsule_fill = "tertiary"
|
||||||
|
capsule_foreground = "on_tertiary"
|
||||||
|
capsule_padding = 4
|
||||||
|
scale = 1.1000000000000001
|
||||||
|
|
||||||
|
[widget.media]
|
||||||
|
art_size = 32
|
||||||
|
hide_when_no_media = true
|
||||||
|
|
||||||
|
[widget.notifications]
|
||||||
|
hide_when_no_unread = true
|
||||||
|
scale = 1.1000000000000001
|
||||||
|
|
||||||
|
[widget.spacer_2]
|
||||||
|
type = "spacer"
|
||||||
|
|
||||||
|
[widget.spacer_3]
|
||||||
|
type = "spacer"
|
||||||
|
|
||||||
|
[widget.sysmon]
|
||||||
|
stat = "gpu_usage"
|
||||||
|
|
||||||
|
[widget.workspaces]
|
||||||
|
style = "minimal"
|
||||||
Generated
+16
-37
@@ -76,11 +76,11 @@
|
|||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "pkgs/firefox-addons",
|
"dir": "pkgs/firefox-addons",
|
||||||
"lastModified": 1787976477,
|
"lastModified": 1788062878,
|
||||||
"narHash": "sha256-N4ljMPGSikj3Yl4EZv7xa6KSGkmm+G5wFZBhnOCwqZw=",
|
"narHash": "sha256-rcVVm6aHB0uUy0W4IE/Pbs8E7YVONklftB2v3vUqsd0=",
|
||||||
"owner": "rycee",
|
"owner": "rycee",
|
||||||
"repo": "nur-expressions",
|
"repo": "nur-expressions",
|
||||||
"rev": "2e2c50de599df9787f6aa735ceea0a7aabcfae2a",
|
"rev": "b1ad358290dcf751d364b80f50bb706e30327f7b",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -187,11 +187,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1788053103,
|
"lastModified": 1788129603,
|
||||||
"narHash": "sha256-+H+8us7JvdcVbPQMq2d0RJLpShaptiRjKfcpx9en8g0=",
|
"narHash": "sha256-NIj3G63MeCajZr70RGl1xNsdsAa+0QgH+lq00doGjDY=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "ab89bd7fc180b742838a4883acbaf9ff47994695",
|
"rev": "3131ebbfcdbbf49f073d0f81ea987300cf422a2e",
|
||||||
"revCount": 7,
|
"revCount": 12,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://git.greyweather.dev/greyweather/nix-helper-flake"
|
"url": "https://git.greyweather.dev/greyweather/nix-helper-flake"
|
||||||
},
|
},
|
||||||
@@ -235,33 +235,13 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nh": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1787933897,
|
|
||||||
"narHash": "sha256-nnMvRwXgRUktCsWf2S+9SkVVlff3QEDwUAys49zTuSc=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nh",
|
|
||||||
"rev": "0556d89ba6d63df9d423f3e0df8450d6653a0aae",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nh",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1787900134,
|
"lastModified": 1788039129,
|
||||||
"narHash": "sha256-VYXO0XZlgj06dxJZRhrD3WoSsvq/c7+/Akyoa22pefw=",
|
"narHash": "sha256-pa4Q0qErvCvzCaaUph7Sm37RhR4xvPrYI8Lgz6k85+A=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "83199d0d373dd3ac2b9a1996b1d0263f76ab7a4c",
|
"rev": "d2f67949798825fe853f7c5d0492b8bf016d3f88",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -293,11 +273,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1788050744,
|
"lastModified": 1788125858,
|
||||||
"narHash": "sha256-O+GIRtyRZhn2Cv5NosvsoQzaPBpI2T3AGNqxwcS65Oc=",
|
"narHash": "sha256-CIAwVQWtDSFiGulRQlLALXfdoJDUrtXBEtctSxXuCXQ=",
|
||||||
"owner": "noctalia-dev",
|
"owner": "noctalia-dev",
|
||||||
"repo": "noctalia",
|
"repo": "noctalia",
|
||||||
"rev": "99296b25b0aa6e293fad10ae77a56e567cd6120c",
|
"rev": "da34acc58d6c3c5733ebe95caaeb6086cc96d7de",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -338,7 +318,6 @@
|
|||||||
"helpers": "helpers",
|
"helpers": "helpers",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"import-tree": "import-tree",
|
"import-tree": "import-tree",
|
||||||
"nh": "nh",
|
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"noctalia": "noctalia",
|
"noctalia": "noctalia",
|
||||||
"spicetify": "spicetify",
|
"spicetify": "spicetify",
|
||||||
@@ -353,11 +332,11 @@
|
|||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1787460061,
|
"lastModified": 1788083617,
|
||||||
"narHash": "sha256-r2FJY01jRVhrZIKPdhQ3QFYsAz3wjilWTMSSH7VMOeo=",
|
"narHash": "sha256-aXMDRUxm/9se+vgKViKdDcClk1k3qA3sUwT0kAYo3Fg=",
|
||||||
"owner": "Gerg-L",
|
"owner": "Gerg-L",
|
||||||
"repo": "spicetify-nix",
|
"repo": "spicetify-nix",
|
||||||
"rev": "a8adfd6f9f341dd586d5c06dda3bbfa21c6014e7",
|
"rev": "bf4ed54253a61c8324a5b461638c42db77c0b980",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -20,11 +20,6 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
nh = {
|
|
||||||
url = "github:nix-community/nh";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
stylix = {
|
stylix = {
|
||||||
url = "github:nix-community/stylix";
|
url = "github:nix-community/stylix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|||||||
@@ -1,33 +1,22 @@
|
|||||||
{ inputs, self, ... }: {
|
{ inputs, self, ... }: let
|
||||||
|
wm-option-type = inputs.helpers.mkOptionalListOfType (inputs.helpers.mkEnumFromDirContents "${self}/modules/components/window-managers");
|
||||||
|
shell-option-type = inputs.helpers.mkOptionalListOfType (inputs.helpers.mkEnumFromDirContents "${self}/modules/components/shells");
|
||||||
|
in {
|
||||||
flake.nixosModules.graphics = { config, pkgs, lib, ... }: {
|
flake.nixosModules.graphics = { config, pkgs, lib, ... }: {
|
||||||
options.components = {
|
options.components = {
|
||||||
displayManager = lib.mkOption {
|
displayManager = lib.mkOption {
|
||||||
# enum that dynamically populates itself with the contents of the display-managers directory
|
# enum that dynamically populates itself with the contents of the display-managers directory
|
||||||
type = lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
type = inputs.helpers.mkEnumFromDirContents "${self}/modules/components/display-managers";
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/display-managers")
|
|
||||||
));
|
|
||||||
default = "lightdm";
|
default = "lightdm";
|
||||||
};
|
};
|
||||||
|
|
||||||
windowManagers = lib.mkOption {
|
windowManagers = lib.mkOption {
|
||||||
type = lib.types.either (lib.types.listOf (
|
type = wm-option-type;
|
||||||
lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/window-managers")
|
|
||||||
))
|
|
||||||
)) (lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/window-managers")
|
|
||||||
)));
|
|
||||||
default = [];
|
default = [];
|
||||||
};
|
};
|
||||||
|
|
||||||
shells = lib.mkOption {
|
shells = lib.mkOption {
|
||||||
type = lib.types.either (lib.types.listOf (
|
type = shell-option-type;
|
||||||
lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/shells")
|
|
||||||
))
|
|
||||||
)) (lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/shells")
|
|
||||||
)));
|
|
||||||
default = [];
|
default = [];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -49,24 +38,12 @@
|
|||||||
flake.homeModules.graphics = { config, pkgs, lib, ... }: {
|
flake.homeModules.graphics = { config, pkgs, lib, ... }: {
|
||||||
options.components = {
|
options.components = {
|
||||||
windowManagers = lib.mkOption {
|
windowManagers = lib.mkOption {
|
||||||
type = lib.types.either (lib.types.listOf (
|
type = wm-option-type;
|
||||||
lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/window-managers")
|
|
||||||
))
|
|
||||||
)) (lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/window-managers")
|
|
||||||
)));
|
|
||||||
default = [];
|
default = [];
|
||||||
};
|
};
|
||||||
|
|
||||||
shells = lib.mkOption {
|
shells = lib.mkOption {
|
||||||
type = lib.types.either (lib.types.listOf (
|
type = shell-option-type;
|
||||||
lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/shells")
|
|
||||||
))
|
|
||||||
)) (lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/shells")
|
|
||||||
)));
|
|
||||||
default = [];
|
default = [];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -100,7 +77,7 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
colorScheme = "dark";
|
colorScheme = "dark";
|
||||||
|
|
||||||
gtk2.configLocation = "${config.home.homeDirectory}/.config/.gtkrc-2.0"; # prevents file conflicts between this and other parts of the nix config
|
gtk2.configLocation = "${config.xdg.configHome}/.gtkrc-2.0"; # prevents file conflicts between this and other parts of the nix config
|
||||||
gtk2.force = true;
|
gtk2.force = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
||||||
config = lib.mkIf ((config.components.shells == "noctalia")||(builtins.elem "noctalia" config.components.shells)) {
|
config = lib.mkIf ((config.components.shells == "noctalia")||(builtins.elem "noctalia" config.components.shells)) {
|
||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
inputs.noctalia.packages.${pkgs.system}.default
|
inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.noctalia.enable = true;
|
programs.noctalia.enable = true;
|
||||||
@@ -16,18 +16,17 @@
|
|||||||
flake.homeModules.graphics = { pkgs, config, lib, inputs, ... }: {
|
flake.homeModules.graphics = { pkgs, config, lib, inputs, ... }: {
|
||||||
config = lib.mkIf ((config.components.shells == "noctalia")||(builtins.elem "noctalia" config.components.shells)) {
|
config = lib.mkIf ((config.components.shells == "noctalia")||(builtins.elem "noctalia" config.components.shells)) {
|
||||||
home = {
|
home = {
|
||||||
packages = lib.mkIf (config.info.isStandalone) [ inputs.noctalia.packages.${pkgs.system}.default ];
|
packages = lib.mkIf (config.info.isStandalone) [ inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default ];
|
||||||
|
|
||||||
activation = {
|
activation = {
|
||||||
symlinkNoctaliaState = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
linkNoctaliaState = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
target = "${config.home.homeDirectory}/.local/state/noctalia/settings.toml";
|
target = "${config.home.homeDirectory}/.local/state/noctalia/settings.toml";
|
||||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/noctalia/settings.toml";
|
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/noctalia/settings.toml";
|
||||||
});
|
});
|
||||||
|
|
||||||
symlinkNoctaliaStatePlugins = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
linkNoctaliaStatePlugins = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
target = "${config.home.homeDirectory}/.local/state/noctalia/plugins";
|
target = "${config.home.homeDirectory}/.local/state/noctalia/plugins";
|
||||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/noctalia/plugins";
|
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/noctalia/plugins";
|
||||||
isDir = true;
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -20,21 +20,19 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
useNautilus = true;
|
useNautilus = true;
|
||||||
# override niri source to use https://github.com/niri-wm/niri/pull/3642
|
# override niri source to use https://github.com/niri-wm/niri/pull/3642
|
||||||
package = (pkgs.niri.overrideAttrs (finalAttrs: prevAttrs:
|
package = (pkgs.niri.overrideAttrs (finalAttrs: prevAttrs: {
|
||||||
{
|
cargoHash = "sha256-HypBB3PL4nVFMNH2+jEK0+dG9dJ920nHi8GwRoeH/v4=";
|
||||||
cargoHash = "sha256-HypBB3PL4nVFMNH2+jEK0+dG9dJ920nHi8GwRoeH/v4=";
|
src = pkgs.fetchFromGitHub {
|
||||||
src = pkgs.fetchFromGitHub {
|
owner = "niri-wm";
|
||||||
owner = "niri-wm";
|
repo = "niri";
|
||||||
repo = "niri";
|
rev = "cb41d54703eef73883bb2be58e19bcf3715d777c";
|
||||||
rev = "cb41d54703eef73883bb2be58e19bcf3715d777c";
|
sha256 = "sha256-cLzTeMcCdQJ+kHGcOposjeheFyEG/tGOA1jFAORMHjI=";
|
||||||
sha256 = "sha256-cLzTeMcCdQJ+kHGcOposjeheFyEG/tGOA1jFAORMHjI=";
|
};
|
||||||
};
|
cargoDeps = pkgs.rustPlatform.fetchCargoVendor {
|
||||||
cargoDeps = pkgs.rustPlatform.fetchCargoVendor {
|
inherit (finalAttrs) pname src version;
|
||||||
inherit (finalAttrs) pname src version;
|
hash = finalAttrs.cargoHash;
|
||||||
hash = finalAttrs.cargoHash;
|
};
|
||||||
};
|
}));
|
||||||
}
|
|
||||||
));
|
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.users.grey = lib.mkIf (config.features.nixos.home-manager.enable) {
|
home-manager.users.grey = lib.mkIf (config.features.nixos.home-manager.enable) {
|
||||||
@@ -45,10 +43,8 @@
|
|||||||
|
|
||||||
flake.homeModules.graphics = { config, pkgs, lib, inputs, ... }: {
|
flake.homeModules.graphics = { config, pkgs, lib, inputs, ... }: {
|
||||||
home = lib.mkIf ((config.components.windowManagers == "niri")||(builtins.elem "niri" config.components.windowManagers)) {
|
home = lib.mkIf ((config.components.windowManagers == "niri")||(builtins.elem "niri" config.components.windowManagers)) {
|
||||||
packages = lib.mkIf (config.info.isStandalone) [ pkgs.niri ];
|
activation.linkNiriConfig = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
|
target = "${config.xdg.configHome}/niri/config.kdl";
|
||||||
activation.symlinkNiriConfig = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
|
||||||
target = "${config.home.homeDirectory}/.config/niri/config.kdl";
|
|
||||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/niri.kdl";
|
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/niri.kdl";
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -0,0 +1,49 @@
|
|||||||
|
{ inputs, self, ... }: let
|
||||||
|
color-converter-package = { lib, pkgs }: pkgs.python3Packages.buildPythonApplication rec {
|
||||||
|
pname = "color-converter";
|
||||||
|
version = "1.0.0";
|
||||||
|
__structuredAttrs = true;
|
||||||
|
strictDeps = true;
|
||||||
|
pyproject = false;
|
||||||
|
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "sotrali";
|
||||||
|
repo = "color-converter";
|
||||||
|
tag = "v${version}";
|
||||||
|
hash = "sha256-xvU7Z6rV+o0F9s1JBGnRWccK0JhZPL7BbPOsnZJLTJM=";
|
||||||
|
};
|
||||||
|
|
||||||
|
dontUnpack = true;
|
||||||
|
installPhase = ''
|
||||||
|
install -Dm755 "${src}/${pname}.py" "$out/bin/${pname}"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "A robust CLI color conversion utility";
|
||||||
|
homepage = "https://github.com/sotrali/color-converter";
|
||||||
|
changelog = "https://github.com/sotrali/color-converter/releases/tag/${src.tag}";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
maintainers = with lib.maintainers; [ ];
|
||||||
|
mainProgram = "color-converter";
|
||||||
|
platforms = lib.platforms.all;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
flake.nixosModules.global = { pkgs, lib, config, ... }: {
|
||||||
|
options.features.applications.cli.color-converter.enable = lib.mkEnableOption "color-converter";
|
||||||
|
|
||||||
|
config = lib.mkIf (config.features.applications.cli.color-converter.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||||
|
home-manager.users.grey.features.applications.cli.color-converter.enable = lib.mkDefault true;
|
||||||
|
} {
|
||||||
|
environment.systemPackages = [ (pkgs.callPackage color-converter-package {}) ];
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
flake.homeModules.global = { pkgs, config, lib, ... }: {
|
||||||
|
options.features.applications.cli.color-converter.enable = lib.mkEnableOption "color-converter";
|
||||||
|
|
||||||
|
config = lib.mkIf (config.features.applications.cli.color-converter.enable) {
|
||||||
|
home.packages = [ (pkgs.callPackage color-converter-package {}) ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{ inputs, self, ... }: let
|
||||||
|
mkNhAttrs = flake: {
|
||||||
|
enable = true;
|
||||||
|
inherit flake;
|
||||||
|
clean = {
|
||||||
|
enable = true;
|
||||||
|
dates = "Sun 05:00";
|
||||||
|
extraArgs = "--keep 5 --keep-since 3d";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
flake.nixosModules.global = { pkgs, config, lib, ... }: {
|
||||||
|
options.features.applications.cli.nh.enable = lib.mkEnableOption "nh";
|
||||||
|
|
||||||
|
config = lib.mkIf (config.features.applications.cli.nh.enable) {
|
||||||
|
programs.nh = mkNhAttrs config.info.rootPath;
|
||||||
|
|
||||||
|
home-manager.users.grey = lib.mkIf (config.features.nixos.home-manager.enable) {
|
||||||
|
features.applications.cli.nh.enable = lib.mkDefault true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
flake.homeModules.global = { pkgs, config, lib, ... }: {
|
||||||
|
options.features.applications.cli.nh.enable = lib.mkEnableOption "nh";
|
||||||
|
|
||||||
|
config = lib.mkIf (config.features.applications.cli.nh.enable && config.info.isStandalone) {
|
||||||
|
programs.nh = mkNhAttrs config.info.rootPath;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -17,17 +17,17 @@
|
|||||||
|
|
||||||
home.activation = {
|
home.activation = {
|
||||||
linkEquibopConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
linkEquibopConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
target = "${config.home.homeDirectory}/.config/equibop/settings.json";
|
target = "${config.xdg.configHome}/equibop/settings.json";
|
||||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/equibop/settings.json";
|
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/equibop/settings.json";
|
||||||
});
|
});
|
||||||
|
|
||||||
linkEquibopConfigEquicordSettings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
linkEquibopConfigEquicordSettings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
target = "${config.home.homeDirectory}/.config/equibop/settings/settings.json";
|
target = "${config.xdg.configHome}/equibop/settings/settings.json";
|
||||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/equibop/equicord-settings.json";
|
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/equibop/equicord-settings.json";
|
||||||
});
|
});
|
||||||
|
|
||||||
linkEquibopConfigQuickCss = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
linkEquibopConfigQuickCss = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
target = "${config.home.homeDirectory}/.config/equibop/settings/quickCss.css";
|
target = "${config.xdg.configHome}/equibop/settings/quickCss.css";
|
||||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/equibop/quickCss.css";
|
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/equibop/quickCss.css";
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
config = lib.mkIf (config.features.applications.gui.floorp.enable) (
|
config = lib.mkIf (config.features.applications.gui.floorp.enable) (
|
||||||
let
|
let
|
||||||
firefox-addons = with pkgs; inputs.firefox-addons.packages.${system};
|
firefox-addons = with pkgs; inputs.firefox-addons.packages.${pkgs.stdenv.hostPlatform.system};
|
||||||
in {
|
in {
|
||||||
programs.floorp = {
|
programs.floorp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
@@ -24,7 +24,6 @@
|
|||||||
home.activation.linkRemminaPresets = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
home.activation.linkRemminaPresets = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
target = "${config.home.homeDirectory}/.local/share/remmina";
|
target = "${config.home.homeDirectory}/.local/share/remmina";
|
||||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/remmina";
|
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/remmina";
|
||||||
isDir = true;
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,24 +1,42 @@
|
|||||||
{ inputs, self, ... }: {
|
{ inputs, self, ... }: {
|
||||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
flake.nixosModules.graphics = { pkgs, config, lib, ... }: let
|
||||||
|
spicePkgs = inputs.spicetify.legacyPackages.${pkgs.stdenv.hostPlatform.system};
|
||||||
|
theme-option-type = with inputs.nixpkgs; lib.types.enum (builtins.attrNames spicePkgs.themes);
|
||||||
|
in {
|
||||||
options.features.applications.gui.spotify = {
|
options.features.applications.gui.spotify = {
|
||||||
enable = lib.mkEnableOption "spotify";
|
enable = lib.mkEnableOption "spotify";
|
||||||
spicetify.enable = lib.mkEnableOption "spicetify";
|
spicetify = {
|
||||||
|
enable = lib.mkEnableOption "spicetify";
|
||||||
|
theme = lib.mkOption {
|
||||||
|
type = lib.types.nullOr (theme-option-type);
|
||||||
|
default = null;
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf (config.features.applications.gui.spotify.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
config = lib.mkIf (config.features.applications.gui.spotify.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||||
home-manager.users.grey.features.applications.gui.spotify = {
|
home-manager.users.grey.features.applications.gui.spotify = {
|
||||||
enable = lib.mkDefault true;
|
enable = lib.mkDefault true;
|
||||||
spicetify.enable = lib.mkDefault config.features.applications.gui.spotify.spicetify.enable;
|
spicetify = lib.mkDefault config.features.applications.gui.spotify.spicetify;
|
||||||
};
|
};
|
||||||
} {
|
} {
|
||||||
environment.systemPackages = [ pkgs.spotify ];
|
environment.systemPackages = [ pkgs.spotify ];
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
flake.homeModules.graphics = { pkgs, config, lib, ... }: {
|
flake.homeModules.graphics = { pkgs, config, lib, ... }: let
|
||||||
|
spicePkgs = inputs.spicetify.legacyPackages.${pkgs.stdenv.hostPlatform.system};
|
||||||
|
theme-option-type = with inputs.nixpkgs; lib.types.enum (builtins.attrNames spicePkgs.themes);
|
||||||
|
in {
|
||||||
options.features.applications.gui.spotify = {
|
options.features.applications.gui.spotify = {
|
||||||
enable = lib.mkEnableOption "spotify";
|
enable = lib.mkEnableOption "spotify";
|
||||||
spicetify.enable = lib.mkEnableOption "spicetify";
|
spicetify = {
|
||||||
|
enable = lib.mkEnableOption "spicetify";
|
||||||
|
theme = lib.mkOption {
|
||||||
|
type = lib.types.nullOr (theme-option-type);
|
||||||
|
default = null;
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
@@ -28,13 +46,10 @@
|
|||||||
config = lib.mkIf (config.features.applications.gui.spotify.enable) {
|
config = lib.mkIf (config.features.applications.gui.spotify.enable) {
|
||||||
home.packages = lib.mkIf (!config.features.applications.gui.spotify.spicetify.enable) [ pkgs.spotify ];
|
home.packages = lib.mkIf (!config.features.applications.gui.spotify.spicetify.enable) [ pkgs.spotify ];
|
||||||
|
|
||||||
programs.spicetify =
|
programs.spicetify = lib.mkIf (config.features.applications.gui.spotify.spicetify.enable) {
|
||||||
let
|
|
||||||
spicePkgs = inputs.spicetify.legacyPackages.${pkgs.stdenv.hostPlatform.system};
|
|
||||||
in lib.mkIf (config.features.applications.gui.spotify.spicetify.enable) {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
enabledExtensions = with spicePkgs.extensions; [
|
enabledExtensions = with spicePkgs.extensions; [
|
||||||
hidePodcasts
|
# hidePodcasts
|
||||||
];
|
];
|
||||||
enabledSnippets = with spicePkgs.snippets; [
|
enabledSnippets = with spicePkgs.snippets; [
|
||||||
spinningCdCoverArt
|
spinningCdCoverArt
|
||||||
@@ -47,6 +62,8 @@
|
|||||||
enabledCustomApps = with spicePkgs.apps; [
|
enabledCustomApps = with spicePkgs.apps; [
|
||||||
# marketplace
|
# marketplace
|
||||||
];
|
];
|
||||||
|
theme = lib.mkIf (config.features.applications.gui.spotify.spicetify.theme != null) spicePkgs.themes.${config.features.applications.gui.spotify.spicetify.theme};
|
||||||
|
windowManagerPatch = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -17,12 +17,12 @@
|
|||||||
|
|
||||||
home.activation = {
|
home.activation = {
|
||||||
linkVsCodeConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
linkVsCodeConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
target = "${config.home.homeDirectory}/.config/Code/User/settings.json";
|
target = "${config.xdg.configHome}/Code/User/settings.json";
|
||||||
source = "${config.info.rootPath}/dotfiles/global/vscode/settings.json";
|
source = "${config.info.rootPath}/dotfiles/global/vscode/settings.json";
|
||||||
});
|
});
|
||||||
|
|
||||||
linkVsCodeConfigKeybindings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
linkVsCodeConfigKeybindings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
target = "${config.home.homeDirectory}/.config/Code/User/keybindings.json";
|
target = "${config.xdg.configHome}/Code/User/keybindings.json";
|
||||||
source = "${config.info.rootPath}/dotfiles/global/vscode/keybindings.json";
|
source = "${config.info.rootPath}/dotfiles/global/vscode/keybindings.json";
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,19 +0,0 @@
|
|||||||
{ inputs, self, ... }: {
|
|
||||||
flake.nixosModules.global = { pkgs, config, lib, ... }: {
|
|
||||||
options.features.nixos.nh.enable = lib.mkOption {
|
|
||||||
type = lib.types.bool;
|
|
||||||
default = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
config = lib.mkIf (config.features.nixos.nh.enable) {
|
|
||||||
environment.systemPackages = [
|
|
||||||
inputs.nh.packages.${pkgs.stdenv.hostPlatform.system}.default
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.nh = {
|
|
||||||
enable = true;
|
|
||||||
flake = "/home/grey/nixos";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
{ inputs, self, ... }: {
|
||||||
|
flake.homeModules.audio = { pkgs, config, lib, ...}: {
|
||||||
|
options.features.services.easyeffects.enable = lib.mkEnableOption "easyeffects";
|
||||||
|
|
||||||
|
config = lib.mkIf (config.features.services.easyeffects.enable) {
|
||||||
|
services.easyeffects.enable = true;
|
||||||
|
|
||||||
|
home.activation.linkEasyEffectsConfig = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||||
|
target = "${config.xdg.configHome}/easyeffects/db";
|
||||||
|
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/easyeffects";
|
||||||
|
});
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,9 +1,7 @@
|
|||||||
{ inputs, self, ... }: {
|
{ inputs, self, ... }: {
|
||||||
flake.nixosModules.global = { config, pkgs, lib, ... }: {
|
flake.nixosModules.global = { config, pkgs, lib, ... }: {
|
||||||
options.features.shells.defaultShell = lib.mkOption {
|
options.features.shells.defaultShell = lib.mkOption {
|
||||||
type = lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
type = inputs.helpers.mkEnumFromDirContents "${self}/modules/features/shells";
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/features/shells")
|
|
||||||
));
|
|
||||||
default = "zsh";
|
default = "zsh";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
+12
-6
@@ -1,6 +1,6 @@
|
|||||||
{ inputs, self, ... }: {
|
{ inputs, self, ... }: {
|
||||||
flake.homeModules.global = { lib, config, pkgs, ... }: {
|
flake.homeModules.global = { lib, config, pkgs, ... }: {
|
||||||
nix.gc = {
|
nix.gc = lib.mkIf (!config.features.applications.cli.nh.enable) {
|
||||||
automatic = true;
|
automatic = true;
|
||||||
persistent = true;
|
persistent = true;
|
||||||
dates = "Sun 05:00";
|
dates = "Sun 05:00";
|
||||||
@@ -25,18 +25,24 @@
|
|||||||
username = "grey";
|
username = "grey";
|
||||||
homeDirectory = "/home/${config.home.username}";
|
homeDirectory = "/home/${config.home.username}";
|
||||||
|
|
||||||
file = inputs.helpers.homeFilesFromStringAttrs {
|
file = inputs.helpers.localBinFromStringAttrs config.features.applications.shellScripts;
|
||||||
dir = ".local/bin";
|
|
||||||
attrs = config.features.applications.shellScripts;
|
|
||||||
exec = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
targets.genericLinux.enable = config.info.isStandalone;
|
||||||
|
|
||||||
xdg = {
|
xdg = {
|
||||||
enable = true;
|
enable = true;
|
||||||
localBinInPath = true;
|
localBinInPath = true;
|
||||||
|
portal = lib.mkIf (config.info.isStandalone) {
|
||||||
|
enable = true;
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
|
config.common.default = "*";
|
||||||
|
extraPortals = with pkgs; [ xdg-desktop-portal-gtk xdg-desktop-portal-gnome ];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.gnome-keyring.enable = config.info.isStandalone;
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
git = {
|
git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
"flakes"
|
"flakes"
|
||||||
];
|
];
|
||||||
|
|
||||||
gc = {
|
gc = lib.mkIf (!config.features.applications.cli.nh.enable) {
|
||||||
automatic = true;
|
automatic = true;
|
||||||
persistent = true;
|
persistent = true;
|
||||||
dates = "Sun 05:00";
|
dates = "Sun 05:00";
|
||||||
@@ -90,5 +90,16 @@
|
|||||||
isStandalone = lib.mkDefault false;
|
isStandalone = lib.mkDefault false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
|
config.common.default = "*";
|
||||||
|
extraPortals = with pkgs; [ xdg-desktop-portal-gtk xdg-desktop-portal-gnome ];
|
||||||
|
};
|
||||||
|
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
|
environment.pathsToLink = [ "/share/xdg-desktop-portal" "/share/applications" ]; # from description of this home-manager option: https://search.nixos.org/options?channel=26.05&query=xdg.portal.enable&source=home_manager&type=options
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -19,9 +19,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
components.bootLoader = lib.mkOption {
|
components.bootLoader = lib.mkOption {
|
||||||
type = lib.types.enum (map (name: lib.removeSuffix ".nix" name) (
|
type = inputs.helpers.mkEnumFromDirContents "${self}/modules/components/boot-loaders";
|
||||||
builtins.attrNames (builtins.readDir "${self}/modules/components/boot-loaders")
|
|
||||||
));
|
|
||||||
default = "grub";
|
default = "grub";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -5,8 +5,8 @@
|
|||||||
shutdown-takamaki = "ssh takamaki universal-shutdown";
|
shutdown-takamaki = "ssh takamaki universal-shutdown";
|
||||||
reboot-takamaki = "ssh takamaki universal-reboot";
|
reboot-takamaki = "ssh takamaki universal-reboot";
|
||||||
switch-takamaki-os = "ssh takamaki switch-os";
|
switch-takamaki-os = "ssh takamaki switch-os";
|
||||||
apply-config = "zsh -c 'cd /home/grey/nixos; git add .; nh os switch .'";
|
apply-config = "zsh -c 'cd ${config.info.rootPath}; git add .; nh os switch .'";
|
||||||
update-system = "zsh -c 'cd /home/grey/nixos; git add .; nh os switch -u .'";
|
update-system = "zsh -c 'cd ${config.info.rootPath}; git add .; nh os switch -u .'";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -46,6 +46,7 @@
|
|||||||
|
|
||||||
cli = {
|
cli = {
|
||||||
fastfetch.enable = true;
|
fastfetch.enable = true;
|
||||||
|
nh.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
extraPackages = with pkgs; [
|
extraPackages = with pkgs; [
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
{ inputs, self, ... }: {
|
||||||
|
flake.homeModules."grey@takamaki" = { pkgs, config, lib, ... }: {
|
||||||
|
programs.kitty = {
|
||||||
|
font = lib.mkForce {
|
||||||
|
name = "Jetbrains Mono";
|
||||||
|
package = pkgs.nerd-fonts.jetbrains-mono;
|
||||||
|
size = 12;
|
||||||
|
};
|
||||||
|
|
||||||
|
extraConfig = ''
|
||||||
|
include ${config.xdg.configHome}/kitty/themes/noctalia.conf
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,9 +1,11 @@
|
|||||||
{ inputs, self, ... }: {
|
{ inputs, self, ... }: {
|
||||||
flake.homeModules.takamaki = { config, pkgs, ... }: {
|
flake.homeModules."grey@takamaki" = { config, pkgs, ... }: {
|
||||||
programs.zsh.shellAliases = {
|
programs.zsh.shellAliases = let
|
||||||
apply-config = "zsh -c 'cd ${config.info.rootPath}; git add .; home-manager switch --flake .#takamaki -b bak'";
|
mkConfigCommand = args: "zsh -c 'cd ${config.info.rootPath}; git add .; nh home switch ${args} -b bak'";
|
||||||
apply-config-trace = "zsh -c 'cd ${config.info.rootPath}; git add .; home-manager switch --flake .#takamaki -b bak --show-trace'";
|
in {
|
||||||
update-config = "zsh -c 'cd ${config.info.rootPath}; git add .; nix flake update; home-manager switch --flake .#takamaki -b bak'";
|
apply-config = mkConfigCommand "";
|
||||||
|
trace-config = mkConfigCommand "-t";
|
||||||
|
update-config = mkConfigCommand "-u";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -1,16 +1,17 @@
|
|||||||
{ inputs, self, ... }: {
|
{ inputs, self, ... }: {
|
||||||
flake.homeConfigurations.takamaki = inputs.home-manager.lib.homeManagerConfiguration {
|
flake.homeConfigurations."grey@takamaki" = inputs.home-manager.lib.homeManagerConfiguration {
|
||||||
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
|
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
|
||||||
modules = with self.homeModules; [
|
modules = [
|
||||||
takamaki
|
self.homeModules."grey@takamaki"
|
||||||
inputs.stylix.homeModules.stylix
|
inputs.stylix.homeModules.stylix
|
||||||
];
|
];
|
||||||
extraSpecialArgs = { inherit inputs; };
|
extraSpecialArgs = { inherit inputs; };
|
||||||
};
|
};
|
||||||
|
|
||||||
flake.homeModules.takamaki = { pkgs, config, lib, ... }: {
|
flake.homeModules."grey@takamaki" = { pkgs, config, lib, ... }: {
|
||||||
imports = with self.homeModules; [
|
imports = with self.homeModules; [
|
||||||
global
|
global
|
||||||
|
audio
|
||||||
graphics
|
graphics
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -27,22 +28,63 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
components = {
|
||||||
|
windowManagers = "niri";
|
||||||
|
shells = "noctalia";
|
||||||
|
};
|
||||||
|
|
||||||
features = {
|
features = {
|
||||||
shells.zsh = {
|
shells.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
antidote.enable = true;
|
antidote.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services = {
|
||||||
|
easyeffects.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
applications = {
|
applications = {
|
||||||
cli = {
|
cli = {
|
||||||
fastfetch.enable = true;
|
fastfetch.enable = true;
|
||||||
|
color-converter.enable = true;
|
||||||
|
nh.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
gui = {
|
gui = {
|
||||||
vscode.enable = true;
|
vscode.enable = true;
|
||||||
|
equibop.enable = true;
|
||||||
|
kitty.enable = true;
|
||||||
|
spotify = {
|
||||||
|
enable = true;
|
||||||
|
spicetify = {
|
||||||
|
enable = true;
|
||||||
|
theme = "comfy";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
shellScripts = {
|
extraPackages = with pkgs; [
|
||||||
|
nix-init
|
||||||
|
github-desktop
|
||||||
|
];
|
||||||
|
|
||||||
|
shellScripts = let
|
||||||
|
mkBrightnessScript = direction: ''
|
||||||
|
LOOP_COUNTER=0
|
||||||
|
DEVICE=$1
|
||||||
|
PRETTY_NAME=$(sudo ddccontrol dev:$DEVICE 2>&1 >/dev/null | grep -oP "/usr/share/ddccontrol-db/monitor/\K.+\.xml" | sed 's/.xml//')
|
||||||
|
WRITTEN="foo"
|
||||||
|
CONTROL="bar"
|
||||||
|
while [[ "$WRITTEN" != "$CONTROL" ]] && [ $LOOP_COUNTER -lt 3 ]; do
|
||||||
|
RESULT=$(sudo ddccontrol -r 0x10 -W ${direction}5 dev:$DEVICE 2> /dev/null)
|
||||||
|
WRITTEN=$(echo $RESULT | grep -oP "Writing.+\(\K\d{1,3}\)" | sed 's/)//')
|
||||||
|
CONTROL=$(echo $RESULT | grep -oP "Control.+\+/\K\d{1,3}/100" | sed 's/\/100//')
|
||||||
|
LOOP_COUNTER=$(($LOOP_COUNTER + 1))
|
||||||
|
done
|
||||||
|
|
||||||
|
noctalia msg notification-show "Set brightness to $WRITTEN for display $PRETTY_NAME"
|
||||||
|
'';
|
||||||
|
in {
|
||||||
switch-os = ''
|
switch-os = ''
|
||||||
sudo efibootmgr --bootnext 0000
|
sudo efibootmgr --bootnext 0000
|
||||||
sudo reboot
|
sudo reboot
|
||||||
@@ -55,38 +97,30 @@
|
|||||||
universal-shutdown = ''
|
universal-shutdown = ''
|
||||||
sudo systemctl poweroff
|
sudo systemctl poweroff
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
toggle-easyeffects = lib.mkIf (config.features.services.easyeffects.enable) ''
|
||||||
|
bypass_value=$(easyeffects -b 3)
|
||||||
|
|
||||||
|
if [ "$bypass_value" = "1" ]; then
|
||||||
|
easyeffects -b 2
|
||||||
|
else
|
||||||
|
easyeffects -b 1
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
|
||||||
|
increase-brightness = mkBrightnessScript "+";
|
||||||
|
|
||||||
|
decrease-brightness = mkBrightnessScript "-";
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
extraPackages = with pkgs; [
|
programs.ssh.settings = {
|
||||||
(writeShellScriptBin "increase-brightness" ''
|
"sakamoto" = {
|
||||||
LOOP_COUNTER=0
|
HostName = "192.168.0.40";
|
||||||
DEVICE=$1
|
Port = "22";
|
||||||
PRETTY_NAME=$(sudo ddccontrol dev:$DEVICE 2>&1 >/dev/null | grep -oP "/usr/share/ddccontrol-db/monitor/\K.+\.xml" | sed 's/.xml//')
|
User = "grey";
|
||||||
while
|
IdentityFile = "~/.ssh/id_sakamoto";
|
||||||
RESULT=$(sudo ddccontrol -r 0x10 -W +5 dev:$DEVICE 2> /dev/null)
|
|
||||||
WRITTEN=$(echo $RESULT | grep -oP "Writing.+\(\K\d{1,3}\)" | sed 's/)//')
|
|
||||||
CONTROL=$(echo $RESULT | grep -oP "Control.+\+/\K\d{1,3}/100" | sed 's/\/100//')
|
|
||||||
LOOP_COUNTER=$(($LOOP_COUNTER + 1))
|
|
||||||
[[ "$WRITTEN" != "$CONTROL" ]] && [ $LOOP_COUNTER -lt 5 ]
|
|
||||||
do true; done
|
|
||||||
|
|
||||||
noctalia msg notification-show "Set brightness to $WRITTEN for display $PRETTY_NAME"
|
|
||||||
'')
|
|
||||||
(writeShellScriptBin "decrease-brightness" ''
|
|
||||||
LOOP_COUNTER=0
|
|
||||||
DEVICE=$1
|
|
||||||
PRETTY_NAME=$(sudo ddccontrol dev:$DEVICE 2>&1 >/dev/null | grep -oP "/usr/share/ddccontrol-db/monitor/\K.+\.xml" | sed 's/.xml//')
|
|
||||||
while
|
|
||||||
RESULT=$(sudo ddccontrol -r 0x10 -W -5 dev:$DEVICE 2> /dev/null)
|
|
||||||
WRITTEN=$(echo $RESULT | grep -oP "Writing.+\(\K\d{1,3}\)" | sed 's/)//')
|
|
||||||
CONTROL=$(echo $RESULT | grep -oP "Control.+\+/\K\d{1,3}/100" | sed 's/\/100//')
|
|
||||||
LOOP_COUNTER=$(($LOOP_COUNTER + 1))
|
|
||||||
[[ "$WRITTEN" != "$CONTROL" ]] && [ $LOOP_COUNTER -lt 5 ]
|
|
||||||
do true; done
|
|
||||||
|
|
||||||
noctalia msg notification-show "Set brightness to $WRITTEN for display $PRETTY_NAME"
|
|
||||||
'')
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in new issue
Block a user