aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Schanzenbacher <ryan@rschanz.org>2026-08-24 01:09:26 -0400
committerRyan Schanzenbacher <ryan@rschanz.org>2026-08-24 01:09:26 -0400
commit0f472179ea1aaab0ab68a109c34fd78b25642422 (patch)
tree584f45f02788ce85023d7a6b9c1dbae4c5e869a1
parenta16f194100e72ea63633618587e1808ed81f864c (diff)
migration to mostly nix
-rw-r--r--home-config/home-configuration.scm7
-rw-r--r--home-config/nix-channels2
-rw-r--r--home-config/nix-config/nix.conf1
-rw-r--r--home-config/nix-home-manager/firefox-nightly/default.nix199
-rw-r--r--home-config/nix-home-manager/firefox-nightly/default.nixold206
-rw-r--r--home-config/nix-home-manager/firefox-nightly/policies.nix130
-rw-r--r--home-config/nix-home-manager/flake.lock1079
-rw-r--r--home-config/nix-home-manager/flake.nix89
-rw-r--r--home-config/nix-home-manager/home.nix186
-rw-r--r--home-config/nix-home-manager/zenPolicies.nix124
-rw-r--r--home-config/nix-home-manager/zenProfile.nix70
11 files changed, 4 insertions, 2089 deletions
diff --git a/home-config/home-configuration.scm b/home-config/home-configuration.scm
index 1436167..47cd45c 100644
--- a/home-config/home-configuration.scm
+++ b/home-config/home-configuration.scm
@@ -37,7 +37,7 @@
37 (define %home-symlinks 37 (define %home-symlinks
38; `((".config/guix/home-config/fish" ".config/fish") 38; `((".config/guix/home-config/fish" ".config/fish")
39; (".config/guix/home-config/nix-config" ".config/nix") 39; (".config/guix/home-config/nix-config" ".config/nix")
40 (".config/guix/home-config/nix-combined" ".config/home-manager"))) 40 `((".config/guix/home-config/nix-files" ".config/home-manager")))
41 41
42(home-symlinks %home-symlinks) 42(home-symlinks %home-symlinks)
43 43
@@ -152,8 +152,9 @@
152 (home-bash-configuration 152 (home-bash-configuration
153 (aliases '(("grep" . "grep --color=auto") ("ll" . "ls -l") 153 (aliases '(("grep" . "grep --color=auto") ("ll" . "ls -l")
154 ("ls" . "ls -p --color=auto") 154 ("ls" . "ls -p --color=auto")
155 ("spt" . "spotify_player") 155 ;("spt" . "spotify_player")
156 ("python" . "python3"))) 156 ;("python" . "python3")))
157 ))
157 (bashrc (list (local-file 158 (bashrc (list (local-file
158 "bashrc"))) 159 "bashrc")))
159 (bash-profile (list (local-file 160 (bash-profile (list (local-file
diff --git a/home-config/nix-channels b/home-config/nix-channels
deleted file mode 100644
index 0df3852..0000000
--- a/home-config/nix-channels
+++ /dev/null
@@ -1,2 +0,0 @@
1https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
2https://nixos.org/channels/nixpkgs-unstable nixpkgs
diff --git a/home-config/nix-config/nix.conf b/home-config/nix-config/nix.conf
deleted file mode 100644
index c7d7291..0000000
--- a/home-config/nix-config/nix.conf
+++ /dev/null
@@ -1 +0,0 @@
1experimental-features = nix-command flakes
diff --git a/home-config/nix-home-manager/firefox-nightly/default.nix b/home-config/nix-home-manager/firefox-nightly/default.nix
deleted file mode 100644
index b86da78..0000000
--- a/home-config/nix-home-manager/firefox-nightly/default.nix
+++ /dev/null
@@ -1,199 +0,0 @@
1{ config, pkgs, zen-browser, ...}:
2
3let
4
5#wrapped-ff-nightly = zen-browser.packages.${pkgs.system}.default
6
7in
8
9{
10 programs.firefox = {
11 enable = true;
12 policies = import ./policies.nix;
13 #package = zen-browser.packages.${pkgs.system}.default.unwrapped;
14
15 profiles.${config.home.username} = {
16 name = "${config.home.username}";
17 isDefault = true;
18 containersForce = true;
19 containers = {
20 rit = {
21 name = "RIT";
22 color = "orange";
23 icon = "dollar";
24 id = 1;
25 };
26 ritwork = {
27 name = "RIT Work";
28 color = "green";
29 icon = "briefcase";
30 id = 2;
31 };
32 other = {
33 name = "Other";
34 color = "blue";
35 icon = "fingerprint";
36 id = 3;
37 };
38 };
39 search = {
40 force = true;
41 default = "DuckDuckGo";
42 order = ["DuckDuckGo" "Google"];
43 engines = {
44 "Nix Packages" = {
45 urls = [
46 {
47 template = "https://search.nixos.org/packages";
48 params = [
49 {
50 name = "type";
51 value = "packages";
52 }
53 {
54 name = "channel";
55 value = "unstable";
56 }
57 {
58 name = "query";
59 value = "{searchTerms}";
60 }
61 ];
62 }
63 ];
64 icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
65 definedAliases = ["@np"];
66 };
67 };
68 };
69 userChrome = "
70#main-window .toolbar-items {
71overflow: hidden;
72transition: height 0.3s 0.3s !important;
73}
74/* Default state: Set initial height to enable animation */
75#main-window .toolbar-items { height: 3em !important; }
76#main-window .titlebar-button { height: 3em !important; }
77#main-window[uidensity=\"touch\"] .toolbar-items { height: 3.35em !important; }
78#main-window[uidensity=\"compact\"] .toolbar-items { height: 2.7em !important; }
79/* Hidden state: Hide native tabs strip */
80#main-window[titlepreface*=\"\"] .toolbar-items { height: 0 !important; }
81#main-window[titlepreface*=\"\"] .titlebar-button { height: 0 !important; }
82/* Hidden state: Fix z-index of active pinned tabs */
83#main-window[titlepreface*=\"\"] #tabbrowser-tabs { z-index: 0 !important; }
84
85/* Sidebery expand on mouse-over and hide otherwise */
86
87/* Source file https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome/autohide_sidebar.css made available under Mozilla Public License v. 2.0
88See the above repository for updates as well as full license text. */
89
90/* Show sidebar only when the cursor is over it */
91/* The border controlling sidebar width will be removed so you'll need to modify these values to change width */
92
93#sidebar-box{
94--uc-sidebar-width: 60px;
95--uc-sidebar-hover-width: 230px;
96--uc-autohide-sidebar-delay: 200ms; /* Wait 0.2s before hiding sidebar */
97--uc-autohide-transition-duration: 115ms;
98--uc-autohide-transition-type: linear;
99--browser-area-z-index-sidebar: 3;
100position: relative;
101 min-width: var(--uc-sidebar-width) !important;
102width: var(--uc-sidebar-width) !important;
103 max-width: var(--uc-sidebar-width) !important;
104 z-index: var(--browser-area-z-index-sidebar,3);
105}
106#sidebar-box[positionend]{ direction: rtl }
107#sidebar-box[positionend] > *{ direction: ltr }
108
109#sidebar-box[positionend]:-moz-locale-dir(rtl){ direction: ltr }
110#sidebar-box[positionend]:-moz-locale-dir(rtl) > *{ direction: rtl }
111
112#main-window[sizemode=\"fullscreen\"] #sidebar-box{ --uc-sidebar-width: 1px; }
113
114#sidebar-splitter{ display: none }
115
116#sidebar-header{
117overflow: hidden;
118color: var(--chrome-color, inherit) !important;
119 padding-inline: 0 !important;
120}
121
122#sidebar-header::before,
123#sidebar-header::after{
124content: \"\";
125display: flex;
126 padding-left: 8px;
127}
128
129#sidebar-header,
130#sidebar{
131transition: min-width var(--uc-autohide-transition-duration) var(--uc-autohide-transition-type) var(--uc-autohide-sidebar-delay) !important;
132 min-width: var(--uc-sidebar-width) !important;
133 will-change: min-width;
134}
135#sidebar-box:hover > #sidebar-header,
136#sidebar-box:hover > #sidebar{
137min-width: var(--uc-sidebar-hover-width) !important;
138transition-delay: 0ms !important;
139}
140
141.sidebar-panel{
142background-color: transparent !important;
143color: var(--newtab-text-primary-color) !important;
144}
145
146.sidebar-panel #search-box{
147-moz-appearance: none !important;
148background-color: rgba(249,249,250,0.1) !important;
149color: inherit !important;
150}
151
152/* Add sidebar divider and give it background */
153
154#sidebar,
155#sidebar-header{
156background-color: inherit !important;
157border-inline: 1px solid rgb(80,80,80);
158border-inline-width: 0px 1px;
159}
160
161#sidebar-box:not([positionend]) > :-moz-locale-dir(rtl),
162#sidebar-box[positionend] > *{
163border-inline-width: 1px 0px;
164}
165
166/* Move statuspanel to the other side when sidebar is hovered so it doesn't get covered by sidebar */
167
168#sidebar-box:not([positionend]):hover ~ #appcontent #statuspanel{
169inset-inline: auto 0px !important;
170}
171#sidebar-box:not([positionend]):hover ~ #appcontent #statuspanel-label{
172margin-inline: 0px !important;
173border-left-style: solid !important;
174}
175
176/* Remove the tabs label and move the Sidebary icon to the center of the box */
177#sidebar-box:hover [id=\"sidebar-icon\"] {
178transform: translateX(0px) !important;
179 transition-delay: 0ms !important;
180}
181
182#sidebar-box [id=\"sidebar-icon\"] {
183transform: translateX(9px);
184transition: transform var(--uc-autohide-transition-duration) var(--uc-autohide-transition-type) var(--uc-autohide-sidebar-delay) !important;
185}
186
187#sidebar-box [id=\"sidebar-title\"] {
188visibility: hidden !important;
189transition: visibility var(--uc-autohide-transition-duration) var(--uc-autohide-transition-type) var(--uc-autohide-sidebar-delay) !important;
190}
191
192#sidebar-box:hover [id=\"sidebar-title\"] {
193visibility: visible !important;
194 transition-delay: 0ms !important;
195}
196";
197};
198};
199}
diff --git a/home-config/nix-home-manager/firefox-nightly/default.nixold b/home-config/nix-home-manager/firefox-nightly/default.nixold
deleted file mode 100644
index 543d57c..0000000
--- a/home-config/nix-home-manager/firefox-nightly/default.nixold
+++ /dev/null
@@ -1,206 +0,0 @@
1{ config, pkgs, ...}:
2
3let
4
5wrapped-ff-nightly = pkgs.latest.firefox-nightly-bin.firefox-bin-unwrapped.overrideAttrs (oldAttrs: rec {
6 policies = import ./policies.nix;
7 policiesJson = pkgs.writeText "firefox-policies.json" (builtins.toJSON { inherit policies; });
8 postFixup = ''
9 # See: https://github.com/mozilla/policy-templates/blob/master/README.md
10 mkdir -p "$out/lib/firefox/distribution"
11 ln -s ${policiesJson} "$out/lib/firefox-nightly-bin-${oldAttrs.version}/distribution/policies.json"
12 '';
13});
14
15in
16
17{
18 programs.firefox = {
19 enable = true;
20 package = wrapped-ff-nightly;
21
22 profiles.${config.home.username} = {
23 name = "${config.home.username}";
24 isDefault = true;
25 containersForce = true;
26 containers = {
27 rit = {
28 name = "RIT";
29 color = "orange";
30 icon = "dollar";
31 id = 1;
32 };
33 ritwork = {
34 name = "RIT Work";
35 color = "green";
36 icon = "briefcase";
37 id = 2;
38 };
39 other = {
40 name = "Other";
41 color = "blue";
42 icon = "fingerprint";
43 id = 3;
44 };
45 };
46 search = {
47 force = true;
48 default = "DuckDuckGo";
49 order = ["DuckDuckGo" "Google"];
50 engines = {
51 "Nix Packages" = {
52 urls = [
53 {
54 template = "https://search.nixos.org/packages";
55 params = [
56 {
57 name = "type";
58 value = "packages";
59 }
60 {
61 name = "channel";
62 value = "unstable";
63 }
64 {
65 name = "query";
66 value = "{searchTerms}";
67 }
68 ];
69 }
70 ];
71 icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
72 definedAliases = ["@np"];
73 };
74 };
75 };
76 userChrome = "
77#main-window .toolbar-items {
78overflow: hidden;
79transition: height 0.3s 0.3s !important;
80}
81/* Default state: Set initial height to enable animation */
82#main-window .toolbar-items { height: 3em !important; }
83#main-window .titlebar-button { height: 3em !important; }
84#main-window[uidensity=\"touch\"] .toolbar-items { height: 3.35em !important; }
85#main-window[uidensity=\"compact\"] .toolbar-items { height: 2.7em !important; }
86/* Hidden state: Hide native tabs strip */
87#main-window[titlepreface*=\"\"] .toolbar-items { height: 0 !important; }
88#main-window[titlepreface*=\"\"] .titlebar-button { height: 0 !important; }
89/* Hidden state: Fix z-index of active pinned tabs */
90#main-window[titlepreface*=\"\"] #tabbrowser-tabs { z-index: 0 !important; }
91
92/* Sidebery expand on mouse-over and hide otherwise */
93
94/* Source file https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome/autohide_sidebar.css made available under Mozilla Public License v. 2.0
95See the above repository for updates as well as full license text. */
96
97/* Show sidebar only when the cursor is over it */
98/* The border controlling sidebar width will be removed so you'll need to modify these values to change width */
99
100#sidebar-box{
101--uc-sidebar-width: 60px;
102--uc-sidebar-hover-width: 230px;
103--uc-autohide-sidebar-delay: 200ms; /* Wait 0.2s before hiding sidebar */
104--uc-autohide-transition-duration: 115ms;
105--uc-autohide-transition-type: linear;
106--browser-area-z-index-sidebar: 3;
107position: relative;
108 min-width: var(--uc-sidebar-width) !important;
109width: var(--uc-sidebar-width) !important;
110 max-width: var(--uc-sidebar-width) !important;
111 z-index: var(--browser-area-z-index-sidebar,3);
112}
113#sidebar-box[positionend]{ direction: rtl }
114#sidebar-box[positionend] > *{ direction: ltr }
115
116#sidebar-box[positionend]:-moz-locale-dir(rtl){ direction: ltr }
117#sidebar-box[positionend]:-moz-locale-dir(rtl) > *{ direction: rtl }
118
119#main-window[sizemode=\"fullscreen\"] #sidebar-box{ --uc-sidebar-width: 1px; }
120
121#sidebar-splitter{ display: none }
122
123#sidebar-header{
124overflow: hidden;
125color: var(--chrome-color, inherit) !important;
126 padding-inline: 0 !important;
127}
128
129#sidebar-header::before,
130#sidebar-header::after{
131content: \"\";
132display: flex;
133 padding-left: 8px;
134}
135
136#sidebar-header,
137#sidebar{
138transition: min-width var(--uc-autohide-transition-duration) var(--uc-autohide-transition-type) var(--uc-autohide-sidebar-delay) !important;
139 min-width: var(--uc-sidebar-width) !important;
140 will-change: min-width;
141}
142#sidebar-box:hover > #sidebar-header,
143#sidebar-box:hover > #sidebar{
144min-width: var(--uc-sidebar-hover-width) !important;
145transition-delay: 0ms !important;
146}
147
148.sidebar-panel{
149background-color: transparent !important;
150color: var(--newtab-text-primary-color) !important;
151}
152
153.sidebar-panel #search-box{
154-moz-appearance: none !important;
155background-color: rgba(249,249,250,0.1) !important;
156color: inherit !important;
157}
158
159/* Add sidebar divider and give it background */
160
161#sidebar,
162#sidebar-header{
163background-color: inherit !important;
164border-inline: 1px solid rgb(80,80,80);
165border-inline-width: 0px 1px;
166}
167
168#sidebar-box:not([positionend]) > :-moz-locale-dir(rtl),
169#sidebar-box[positionend] > *{
170border-inline-width: 1px 0px;
171}
172
173/* Move statuspanel to the other side when sidebar is hovered so it doesn't get covered by sidebar */
174
175#sidebar-box:not([positionend]):hover ~ #appcontent #statuspanel{
176inset-inline: auto 0px !important;
177}
178#sidebar-box:not([positionend]):hover ~ #appcontent #statuspanel-label{
179margin-inline: 0px !important;
180border-left-style: solid !important;
181}
182
183/* Remove the tabs label and move the Sidebary icon to the center of the box */
184#sidebar-box:hover [id=\"sidebar-icon\"] {
185transform: translateX(0px) !important;
186 transition-delay: 0ms !important;
187}
188
189#sidebar-box [id=\"sidebar-icon\"] {
190transform: translateX(9px);
191transition: transform var(--uc-autohide-transition-duration) var(--uc-autohide-transition-type) var(--uc-autohide-sidebar-delay) !important;
192}
193
194#sidebar-box [id=\"sidebar-title\"] {
195visibility: hidden !important;
196transition: visibility var(--uc-autohide-transition-duration) var(--uc-autohide-transition-type) var(--uc-autohide-sidebar-delay) !important;
197}
198
199#sidebar-box:hover [id=\"sidebar-title\"] {
200visibility: visible !important;
201 transition-delay: 0ms !important;
202}
203";
204};
205};
206}
diff --git a/home-config/nix-home-manager/firefox-nightly/policies.nix b/home-config/nix-home-manager/firefox-nightly/policies.nix
deleted file mode 100644
index 136b8b9..0000000
--- a/home-config/nix-home-manager/firefox-nightly/policies.nix
+++ /dev/null
@@ -1,130 +0,0 @@
1let
2 lock-false = {
3 Value = false;
4 Status = "locked";
5 };
6 lock-true = {
7 Value = true;
8 Status = "locked";
9 };
10in
11{
12
13EnableTrackingProtection = {
14 Value = true;
15 Locked = true;
16 Cryptomining = true;
17 Fingerprinting = true;
18 EmailTracking = true;
19};
20UserMessaging = {
21 WhatsNew = false;
22 ExtensionRecommendations = false;
23 FeatureRecommendations = false;
24 UrlbarInterventions = false;
25 SkipOnboarding = true;
26 MoreFromMozilla = false;
27 Labs = false;
28 Locked = true;
29};
30DisableAppUpdate = true;
31DisableAccounts = true;
32DisableFirefoxAccounts = true;
33DisableFirefoxStudies = true;
34DisablePocket = true;
35DisableTelemetry = true;
36AutofillAddressEnabled = false;
37AutofillCreditCardEnabled = false;
38DisableMasterPasswordCreation = true;
39PasswordManagerEnabled = false;
40PrimaryPassword = false;
41OfferToSaveLogins = false;
42NoDefaultBookmarks = true;
43OverrideFirstRunPage = "";
44OverridePostUpdatePage = "";
45FirefoxHome = {
46 Search = true;
47 TopSites = true;
48 SponsoredTopSites = false;
49 Highlights = false;
50 Pocket = false;
51 SponsoredPocket = false;
52 Snippets = false;
53 Locked = true;
54};
55SearchSuggestEnabled = true;
56FirefoxSuggest = {
57 WebSuggestions = true;
58 SponsoredSuggestions = false;
59 ImproveSuggest = false;
60 Locked = true;
61};
62PictureInPicture = lock-true;
63HardwareAcceleration = true;
64Certificates = {
65 ImportEnterpriseRoots = true;
66};
67ExtensionSettings = {
68#"*".installation_mode = "blocked";
69# uBlock Origin
70 "uBlock0@raymondhill.net" = {
71 install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
72 installation_mode = "force_installed";
73 };
74# Bitwarden
75 "{446900e4-71c2-419f-a6a7-df9c091e268b}" = {
76 install_url = "https://addons.mozilla.org/firefox/downloads/latest/bitwarden-password-manager/latest.xpi";
77 installation_mode = "normal_installed";
78 };
79# SponsorBlock
80 "sponsorBlocker@ajay.app" = {
81 install_url = "https://addons.mozilla.org/firefox/downloads/latest/sponsorblock/latest.xpi";
82 installation_mode = "force_installed";
83 };
84# DeArrow
85 "deArrow@ajay.app" = {
86 install_url = "https://addons.mozilla.org/firefox/downloads/latest/dearrow/latest.xpi";
87 installation_mode = "force_installed";
88 };
89# Return Youtube Dislike
90 "{762f9885-5a13-4abd-9c77-433dcd38b8fd}" = {
91 install_url = "https://addons.mozilla.org/firefox/downloads/latest/return-youtube-dislikes/latest.xpi";
92 installation_mode = "force_installed";
93 };
94# Youtube Nonstop
95 "{0d7cafdd-501c-49ca-8ebb-e3341caaa55e}" = {
96 install_url = "https://addons.mozilla.org/firefox/downloads/latest/youtube-nonstop/latest.xpi";
97 installation_mode = "force_installed";
98 };
99# Sidebery
100 "{3c078156-979c-498b-8990-85f7987dd929}" = {
101 install_url = "https://addons.mozilla.org/firefox/downloads/latest/sidebery/latest.xpi";
102 installation_mode = "normal_installed";
103 };
104# TamperMonkey
105 "firefox@tampermonkey.net" = {
106 install_url = "https://addons.mozilla.org/firefox/downloads/latest/tampermonkey/latest.xpi";
107 installation_mode = "force_installed";
108 };
109# Floccus
110 "floccus@handmadeideas.org" = {
111 install_url = "https://addons.mozilla.org/firefox/downloads/latest/floccus/latest.xpi";
112 installation_mode = "force_installed";
113 };
114};
115Preferences = {
116 "browser.startup.homepage" = "https://d.in.rschanz.org";
117 "extensions.activeThemeID" = {
118 Value = "firefox-compact-dark@mozilla.org";
119 Status = "locked";
120 };
121 "toolkit.legacyUserProfileCustomizations.stylesheets" = lock-true;
122 "xpinstall.whitelist.required" = lock-true;
123 "dom.webgpu.enabled" = lock-true;
124 "media.eme.enabled" = lock-true;
125 "general.autoScroll" = lock-true;
126 "general.smoothScroll" = lock-true;
127 "browser.crashReports.unsubmittedCheck.autoSubmit2" = lock-false;
128 "browser.aboutConfig.showWarning" = lock-false;
129};
130}
diff --git a/home-config/nix-home-manager/flake.lock b/home-config/nix-home-manager/flake.lock
deleted file mode 100644
index 71e1959..0000000
--- a/home-config/nix-home-manager/flake.lock
+++ /dev/null
@@ -1,1079 +0,0 @@
1{
2 "nodes": {
3 "aquamarine": {
4 "inputs": {
5 "hyprutils": [
6 "hyprland",
7 "hyprutils"
8 ],
9 "hyprwayland-scanner": [
10 "hyprland",
11 "hyprwayland-scanner"
12 ],
13 "nixpkgs": [
14 "hyprland",
15 "nixpkgs"
16 ],
17 "systems": [
18 "hyprland",
19 "systems"
20 ]
21 },
22 "locked": {
23 "lastModified": 1762356719,
24 "narHash": "sha256-qwd/xdoOya1m8FENle+4hWnydCtlXUWLAW/Auk6WL7s=",
25 "owner": "hyprwm",
26 "repo": "aquamarine",
27 "rev": "6d0b3567584691bf9d8fedb5d0093309e2f979c7",
28 "type": "github"
29 },
30 "original": {
31 "owner": "hyprwm",
32 "repo": "aquamarine",
33 "type": "github"
34 }
35 },
36 "cachix": {
37 "locked": {
38 "lastModified": 1635350005,
39 "narHash": "sha256-tAMJnUwfaDEB2aa31jGcu7R7bzGELM9noc91L2PbVjg=",
40 "owner": "nixos",
41 "repo": "nixpkgs",
42 "rev": "1c1f5649bb9c1b0d98637c8c365228f57126f361",
43 "type": "github"
44 },
45 "original": {
46 "owner": "nixos",
47 "ref": "nixos-20.09",
48 "repo": "nixpkgs",
49 "type": "github"
50 }
51 },
52 "clipboard-sync": {
53 "inputs": {
54 "nixpkgs": [
55 "nixpkgs"
56 ]
57 },
58 "locked": {
59 "lastModified": 1731355357,
60 "narHash": "sha256-kTXsO+hskCfX36+Ez1fHu9SO54uUY2lofkrbMKE3Vrk=",
61 "owner": "dnut",
62 "repo": "clipboard-sync",
63 "rev": "943e49e0a9a16b54bbab3704e99b6cf6ad4ea19f",
64 "type": "github"
65 },
66 "original": {
67 "owner": "dnut",
68 "repo": "clipboard-sync",
69 "rev": "943e49e0a9a16b54bbab3704e99b6cf6ad4ea19f",
70 "type": "github"
71 }
72 },
73 "flake-compat": {
74 "flake": false,
75 "locked": {
76 "lastModified": 1747046372,
77 "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
78 "owner": "edolstra",
79 "repo": "flake-compat",
80 "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
81 "type": "github"
82 },
83 "original": {
84 "owner": "edolstra",
85 "repo": "flake-compat",
86 "type": "github"
87 }
88 },
89 "flake-compat_2": {
90 "locked": {
91 "lastModified": 1717312683,
92 "narHash": "sha256-FrlieJH50AuvagamEvWMIE6D2OAnERuDboFDYAED/dE=",
93 "owner": "nix-community",
94 "repo": "flake-compat",
95 "rev": "38fd3954cf65ce6faf3d0d45cd26059e059f07ea",
96 "type": "github"
97 },
98 "original": {
99 "owner": "nix-community",
100 "repo": "flake-compat",
101 "type": "github"
102 }
103 },
104 "flake-utils": {
105 "inputs": {
106 "systems": "systems_4"
107 },
108 "locked": {
109 "lastModified": 1731533236,
110 "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
111 "owner": "numtide",
112 "repo": "flake-utils",
113 "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
114 "type": "github"
115 },
116 "original": {
117 "owner": "numtide",
118 "repo": "flake-utils",
119 "type": "github"
120 }
121 },
122 "flake-utils_2": {
123 "locked": {
124 "lastModified": 1659877975,
125 "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
126 "owner": "numtide",
127 "repo": "flake-utils",
128 "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
129 "type": "github"
130 },
131 "original": {
132 "owner": "numtide",
133 "repo": "flake-utils",
134 "type": "github"
135 }
136 },
137 "gitignore": {
138 "inputs": {
139 "nixpkgs": [
140 "hyprland",
141 "pre-commit-hooks",
142 "nixpkgs"
143 ]
144 },
145 "locked": {
146 "lastModified": 1709087332,
147 "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
148 "owner": "hercules-ci",
149 "repo": "gitignore.nix",
150 "rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
151 "type": "github"
152 },
153 "original": {
154 "owner": "hercules-ci",
155 "repo": "gitignore.nix",
156 "type": "github"
157 }
158 },
159 "home-manager": {
160 "inputs": {
161 "nixpkgs": [
162 "nixpkgs"
163 ]
164 },
165 "locked": {
166 "lastModified": 1764361670,
167 "narHash": "sha256-jgWzgpIaHbL3USIq0gihZeuy1lLf2YSfwvWEwnfAJUw=",
168 "owner": "nix-community",
169 "repo": "home-manager",
170 "rev": "780be8ef503a28939cf9dc7996b48ffb1a3e04c6",
171 "type": "github"
172 },
173 "original": {
174 "owner": "nix-community",
175 "repo": "home-manager",
176 "rev": "780be8ef503a28939cf9dc7996b48ffb1a3e04c6",
177 "type": "github"
178 }
179 },
180 "hypr-dynamic-cursors": {
181 "inputs": {
182 "hyprland": [
183 "hyprland"
184 ],
185 "nixpkgs": [
186 "hyprland",
187 "nixpkgs"
188 ]
189 },
190 "locked": {
191 "lastModified": 1763589171,
192 "narHash": "sha256-3+k074XQ4quCWQ/WLEeYTTD+AlDlxtzKvH9gkWqn+8Y=",
193 "owner": "VirtCode",
194 "repo": "hypr-dynamic-cursors",
195 "rev": "85e6a93f311132d775538c4a016b637b366d2a44",
196 "type": "github"
197 },
198 "original": {
199 "owner": "VirtCode",
200 "repo": "hypr-dynamic-cursors",
201 "rev": "85e6a93f311132d775538c4a016b637b366d2a44",
202 "type": "github"
203 }
204 },
205 "hyprcursor": {
206 "inputs": {
207 "hyprlang": [
208 "hyprland",
209 "hyprlang"
210 ],
211 "nixpkgs": [
212 "hyprland",
213 "nixpkgs"
214 ],
215 "systems": [
216 "hyprland",
217 "systems"
218 ]
219 },
220 "locked": {
221 "lastModified": 1753964049,
222 "narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=",
223 "owner": "hyprwm",
224 "repo": "hyprcursor",
225 "rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5",
226 "type": "github"
227 },
228 "original": {
229 "owner": "hyprwm",
230 "repo": "hyprcursor",
231 "type": "github"
232 }
233 },
234 "hyprgraphics": {
235 "inputs": {
236 "hyprutils": [
237 "hyprland",
238 "hyprutils"
239 ],
240 "nixpkgs": [
241 "hyprland",
242 "nixpkgs"
243 ],
244 "systems": [
245 "hyprland",
246 "systems"
247 ]
248 },
249 "locked": {
250 "lastModified": 1762462052,
251 "narHash": "sha256-6roLYzcDf4V38RUMSqycsOwAnqfodL6BmhRkUtwIgdA=",
252 "owner": "hyprwm",
253 "repo": "hyprgraphics",
254 "rev": "ffc999d980c7b3bca85d3ebd0a9fbadf984a8162",
255 "type": "github"
256 },
257 "original": {
258 "owner": "hyprwm",
259 "repo": "hyprgraphics",
260 "type": "github"
261 }
262 },
263 "hyprgraphics_2": {
264 "inputs": {
265 "hyprutils": [
266 "hyprlock",
267 "hyprutils"
268 ],
269 "nixpkgs": [
270 "hyprlock",
271 "nixpkgs"
272 ],
273 "systems": [
274 "hyprlock",
275 "systems"
276 ]
277 },
278 "locked": {
279 "lastModified": 1759490292,
280 "narHash": "sha256-T6iWzDOXp8Wv0KQOCTHpBcmAOdHJ6zc/l9xaztW6Ivc=",
281 "owner": "hyprwm",
282 "repo": "hyprgraphics",
283 "rev": "9431db625cd9bb66ac55525479dce694101d6d7a",
284 "type": "github"
285 },
286 "original": {
287 "owner": "hyprwm",
288 "repo": "hyprgraphics",
289 "type": "github"
290 }
291 },
292 "hyprland": {
293 "inputs": {
294 "aquamarine": "aquamarine",
295 "hyprcursor": "hyprcursor",
296 "hyprgraphics": "hyprgraphics",
297 "hyprland-guiutils": "hyprland-guiutils",
298 "hyprland-protocols": "hyprland-protocols",
299 "hyprlang": "hyprlang",
300 "hyprutils": "hyprutils",
301 "hyprwayland-scanner": "hyprwayland-scanner_2",
302 "nixpkgs": [
303 "nixpkgs"
304 ],
305 "pre-commit-hooks": "pre-commit-hooks",
306 "systems": "systems",
307 "xdph": "xdph"
308 },
309 "locked": {
310 "lastModified": 1762731096,
311 "narHash": "sha256-Kma5MxOipSBamO6DnwBeqJNjJ+VwEO73zh9h1hs/2Aw=",
312 "owner": "hyprwm",
313 "repo": "hyprland",
314 "rev": "967c3c7404d4fa00234e29c70df3e263386d2597",
315 "type": "github"
316 },
317 "original": {
318 "owner": "hyprwm",
319 "ref": "v0.52.1",
320 "repo": "hyprland",
321 "type": "github"
322 }
323 },
324 "hyprland-guiutils": {
325 "inputs": {
326 "aquamarine": [
327 "hyprland",
328 "aquamarine"
329 ],
330 "hyprgraphics": [
331 "hyprland",
332 "hyprgraphics"
333 ],
334 "hyprlang": [
335 "hyprland",
336 "hyprlang"
337 ],
338 "hyprtoolkit": "hyprtoolkit",
339 "hyprutils": [
340 "hyprland",
341 "hyprutils"
342 ],
343 "nixpkgs": [
344 "hyprland",
345 "nixpkgs"
346 ],
347 "systems": [
348 "hyprland",
349 "systems"
350 ]
351 },
352 "locked": {
353 "lastModified": 1762465111,
354 "narHash": "sha256-dS13YZdWjgGGLBjpT4FHB6xf8I/WiAU+mgNWXsZgDUs=",
355 "owner": "hyprwm",
356 "repo": "hyprland-guiutils",
357 "rev": "a415eba866a953f3096d661318f771aa0082eb98",
358 "type": "github"
359 },
360 "original": {
361 "owner": "hyprwm",
362 "repo": "hyprland-guiutils",
363 "type": "github"
364 }
365 },
366 "hyprland-protocols": {
367 "inputs": {
368 "nixpkgs": [
369 "hyprland",
370 "nixpkgs"
371 ],
372 "systems": [
373 "hyprland",
374 "systems"
375 ]
376 },
377 "locked": {
378 "lastModified": 1759610243,
379 "narHash": "sha256-+KEVnKBe8wz+a6dTLq8YDcF3UrhQElwsYJaVaHXJtoI=",
380 "owner": "hyprwm",
381 "repo": "hyprland-protocols",
382 "rev": "bd153e76f751f150a09328dbdeb5e4fab9d23622",
383 "type": "github"
384 },
385 "original": {
386 "owner": "hyprwm",
387 "repo": "hyprland-protocols",
388 "type": "github"
389 }
390 },
391 "hyprlang": {
392 "inputs": {
393 "hyprutils": [
394 "hyprland",
395 "hyprutils"
396 ],
397 "nixpkgs": [
398 "hyprland",
399 "nixpkgs"
400 ],
401 "systems": [
402 "hyprland",
403 "systems"
404 ]
405 },
406 "locked": {
407 "lastModified": 1758927902,
408 "narHash": "sha256-LZgMds7M94+vuMql2bERQ6LiFFdhgsEFezE4Vn+Ys3A=",
409 "owner": "hyprwm",
410 "repo": "hyprlang",
411 "rev": "4dafa28d4f79877d67a7d1a654cddccf8ebf15da",
412 "type": "github"
413 },
414 "original": {
415 "owner": "hyprwm",
416 "repo": "hyprlang",
417 "type": "github"
418 }
419 },
420 "hyprlang_2": {
421 "inputs": {
422 "hyprutils": [
423 "hyprlock",
424 "hyprutils"
425 ],
426 "nixpkgs": [
427 "hyprlock",
428 "nixpkgs"
429 ],
430 "systems": [
431 "hyprlock",
432 "systems"
433 ]
434 },
435 "locked": {
436 "lastModified": 1758927902,
437 "narHash": "sha256-LZgMds7M94+vuMql2bERQ6LiFFdhgsEFezE4Vn+Ys3A=",
438 "owner": "hyprwm",
439 "repo": "hyprlang",
440 "rev": "4dafa28d4f79877d67a7d1a654cddccf8ebf15da",
441 "type": "github"
442 },
443 "original": {
444 "owner": "hyprwm",
445 "repo": "hyprlang",
446 "type": "github"
447 }
448 },
449 "hyprlock": {
450 "inputs": {
451 "hyprgraphics": "hyprgraphics_2",
452 "hyprlang": "hyprlang_2",
453 "hyprutils": "hyprutils_2",
454 "hyprwayland-scanner": "hyprwayland-scanner_3",
455 "nixpkgs": "nixpkgs",
456 "systems": "systems_2"
457 },
458 "locked": {
459 "lastModified": 1761675634,
460 "narHash": "sha256-Et1jNDB2d3e0b4okIKuyAMktECS+5hk+vMAA7X598ao=",
461 "owner": "hyprwm",
462 "repo": "hyprlock",
463 "rev": "98b86752fe4867bd14ef96a92ea788229af93130",
464 "type": "github"
465 },
466 "original": {
467 "owner": "hyprwm",
468 "repo": "hyprlock",
469 "rev": "98b86752fe4867bd14ef96a92ea788229af93130",
470 "type": "github"
471 }
472 },
473 "hyprpicker-git": {
474 "inputs": {
475 "hyprutils": "hyprutils_3",
476 "hyprwayland-scanner": "hyprwayland-scanner_4",
477 "nixpkgs": [
478 "nixpkgs"
479 ],
480 "systems": "systems_3"
481 },
482 "locked": {
483 "lastModified": 1746060866,
484 "narHash": "sha256-ta3eCdXyKTVKhCU2/zC+XljU1Tq5huIyuFBtzOcUU4c=",
485 "owner": "hyprwm",
486 "repo": "hyprpicker",
487 "rev": "980ebd486b8a4c2ac1670286f38d163db1e38cd9",
488 "type": "github"
489 },
490 "original": {
491 "owner": "hyprwm",
492 "ref": "v0.4.5",
493 "repo": "hyprpicker",
494 "type": "github"
495 }
496 },
497 "hyprtoolkit": {
498 "inputs": {
499 "aquamarine": [
500 "hyprland",
501 "hyprland-guiutils",
502 "aquamarine"
503 ],
504 "hyprgraphics": [
505 "hyprland",
506 "hyprland-guiutils",
507 "hyprgraphics"
508 ],
509 "hyprlang": [
510 "hyprland",
511 "hyprland-guiutils",
512 "hyprlang"
513 ],
514 "hyprutils": [
515 "hyprland",
516 "hyprland-guiutils",
517 "hyprutils"
518 ],
519 "hyprwayland-scanner": "hyprwayland-scanner",
520 "nixpkgs": [
521 "hyprland",
522 "hyprland-guiutils",
523 "nixpkgs"
524 ],
525 "systems": [
526 "hyprland",
527 "hyprland-guiutils",
528 "systems"
529 ]
530 },
531 "locked": {
532 "lastModified": 1762463729,
533 "narHash": "sha256-2fYkU/mdz8WKY3dkDPlE/j6hTxIwqultsx4gMMsMns0=",
534 "owner": "hyprwm",
535 "repo": "hyprtoolkit",
536 "rev": "88483bdee5329ec985f0c8f834c519cd18cfe532",
537 "type": "github"
538 },
539 "original": {
540 "owner": "hyprwm",
541 "repo": "hyprtoolkit",
542 "type": "github"
543 }
544 },
545 "hyprutils": {
546 "inputs": {
547 "nixpkgs": [
548 "hyprland",
549 "nixpkgs"
550 ],
551 "systems": [
552 "hyprland",
553 "systems"
554 ]
555 },
556 "locked": {
557 "lastModified": 1762387740,
558 "narHash": "sha256-gQ9zJ+pUI4o+Gh4Z6jhJll7jjCSwi8ZqJIhCE2oqwhQ=",
559 "owner": "hyprwm",
560 "repo": "hyprutils",
561 "rev": "926689ddb9c0a8787e58c02c765a62e32d63d1f7",
562 "type": "github"
563 },
564 "original": {
565 "owner": "hyprwm",
566 "repo": "hyprutils",
567 "type": "github"
568 }
569 },
570 "hyprutils_2": {
571 "inputs": {
572 "nixpkgs": [
573 "hyprlock",
574 "nixpkgs"
575 ],
576 "systems": [
577 "hyprlock",
578 "systems"
579 ]
580 },
581 "locked": {
582 "lastModified": 1759619523,
583 "narHash": "sha256-r1ed7AR2ZEb2U8gy321/Xcp1ho2tzn+gG1te/Wxsj1A=",
584 "owner": "hyprwm",
585 "repo": "hyprutils",
586 "rev": "3df7bde01efb3a3e8e678d1155f2aa3f19e177ef",
587 "type": "github"
588 },
589 "original": {
590 "owner": "hyprwm",
591 "repo": "hyprutils",
592 "type": "github"
593 }
594 },
595 "hyprutils_3": {
596 "inputs": {
597 "nixpkgs": [
598 "hyprpicker-git",
599 "nixpkgs"
600 ],
601 "systems": [
602 "hyprpicker-git",
603 "systems"
604 ]
605 },
606 "locked": {
607 "lastModified": 1737632363,
608 "narHash": "sha256-X9I8POSlHxBVjD0fiX1O2j7U9Zi1+4rIkrsyHP0uHXY=",
609 "owner": "hyprwm",
610 "repo": "hyprutils",
611 "rev": "006620eb29d54ea9086538891404c78563d1bae1",
612 "type": "github"
613 },
614 "original": {
615 "owner": "hyprwm",
616 "repo": "hyprutils",
617 "type": "github"
618 }
619 },
620 "hyprwayland-scanner": {
621 "inputs": {
622 "nixpkgs": [
623 "hyprland",
624 "hyprland-guiutils",
625 "hyprtoolkit",
626 "nixpkgs"
627 ],
628 "systems": [
629 "hyprland",
630 "hyprland-guiutils",
631 "hyprtoolkit",
632 "systems"
633 ]
634 },
635 "locked": {
636 "lastModified": 1755184602,
637 "narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=",
638 "owner": "hyprwm",
639 "repo": "hyprwayland-scanner",
640 "rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d",
641 "type": "github"
642 },
643 "original": {
644 "owner": "hyprwm",
645 "repo": "hyprwayland-scanner",
646 "type": "github"
647 }
648 },
649 "hyprwayland-scanner_2": {
650 "inputs": {
651 "nixpkgs": [
652 "hyprland",
653 "nixpkgs"
654 ],
655 "systems": [
656 "hyprland",
657 "systems"
658 ]
659 },
660 "locked": {
661 "lastModified": 1755184602,
662 "narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=",
663 "owner": "hyprwm",
664 "repo": "hyprwayland-scanner",
665 "rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d",
666 "type": "github"
667 },
668 "original": {
669 "owner": "hyprwm",
670 "repo": "hyprwayland-scanner",
671 "type": "github"
672 }
673 },
674 "hyprwayland-scanner_3": {
675 "inputs": {
676 "nixpkgs": [
677 "hyprlock",
678 "nixpkgs"
679 ],
680 "systems": [
681 "hyprlock",
682 "systems"
683 ]
684 },
685 "locked": {
686 "lastModified": 1755184602,
687 "narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=",
688 "owner": "hyprwm",
689 "repo": "hyprwayland-scanner",
690 "rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d",
691 "type": "github"
692 },
693 "original": {
694 "owner": "hyprwm",
695 "repo": "hyprwayland-scanner",
696 "type": "github"
697 }
698 },
699 "hyprwayland-scanner_4": {
700 "inputs": {
701 "nixpkgs": [
702 "hyprpicker-git",
703 "nixpkgs"
704 ],
705 "systems": [
706 "hyprpicker-git",
707 "systems"
708 ]
709 },
710 "locked": {
711 "lastModified": 1735493474,
712 "narHash": "sha256-fktzv4NaqKm94VAkAoVqO/nqQlw+X0/tJJNAeCSfzK4=",
713 "owner": "hyprwm",
714 "repo": "hyprwayland-scanner",
715 "rev": "de913476b59ee88685fdc018e77b8f6637a2ae0b",
716 "type": "github"
717 },
718 "original": {
719 "owner": "hyprwm",
720 "repo": "hyprwayland-scanner",
721 "type": "github"
722 }
723 },
724 "lib-aggregate": {
725 "inputs": {
726 "flake-utils": "flake-utils",
727 "nixpkgs-lib": "nixpkgs-lib"
728 },
729 "locked": {
730 "lastModified": 1740312740,
731 "narHash": "sha256-z3M+zR18jGF1IIJ7Fp9LVOkEIUBhtY+65TSNq/DbgzQ=",
732 "owner": "nix-community",
733 "repo": "lib-aggregate",
734 "rev": "1229db6582e2ee6337d6fbc4c3c59f2ef0b6d481",
735 "type": "github"
736 },
737 "original": {
738 "owner": "nix-community",
739 "repo": "lib-aggregate",
740 "type": "github"
741 }
742 },
743 "mozff": {
744 "inputs": {
745 "cachix": "cachix",
746 "flake-compat": "flake-compat_2",
747 "lib-aggregate": "lib-aggregate",
748 "mozilla": "mozilla",
749 "nixpkgs": [
750 "nixpkgs"
751 ]
752 },
753 "locked": {
754 "lastModified": 1740573223,
755 "narHash": "sha256-OVysWIAwSvjCabd5F3QAyNXjU7bcNQ/zNve6YS5mZh4=",
756 "owner": "nix-community",
757 "repo": "flake-firefox-nightly",
758 "rev": "3391372604cd3def19e6df88a51f1882aabcd59f",
759 "type": "github"
760 },
761 "original": {
762 "owner": "nix-community",
763 "repo": "flake-firefox-nightly",
764 "rev": "3391372604cd3def19e6df88a51f1882aabcd59f",
765 "type": "github"
766 }
767 },
768 "mozilla": {
769 "flake": false,
770 "locked": {
771 "lastModified": 1736765918,
772 "narHash": "sha256-oh7GSCjBGHpxaU8/gejT55mlvI3qoKObXgqyn1XR7SA=",
773 "owner": "mozilla",
774 "repo": "nixpkgs-mozilla",
775 "rev": "534ee26d3dbcbb9da3766c556638b9bcc3627871",
776 "type": "github"
777 },
778 "original": {
779 "owner": "mozilla",
780 "repo": "nixpkgs-mozilla",
781 "type": "github"
782 }
783 },
784 "nixgl": {
785 "inputs": {
786 "flake-utils": "flake-utils_2",
787 "nixpkgs": [
788 "nixpkgs"
789 ]
790 },
791 "locked": {
792 "lastModified": 1736159088,
793 "narHash": "sha256-WDBc35XdHCdmgVYbPOtd2IeUtUHCYwNyEpIr5vLZMng=",
794 "owner": "ryan77627",
795 "repo": "nixGL",
796 "rev": "3865170cbc23b32ec7cc8df1ec811fd44b6c2a58",
797 "type": "github"
798 },
799 "original": {
800 "owner": "ryan77627",
801 "repo": "nixGL",
802 "rev": "3865170cbc23b32ec7cc8df1ec811fd44b6c2a58",
803 "type": "github"
804 }
805 },
806 "nixpkgs": {
807 "locked": {
808 "lastModified": 1759831965,
809 "narHash": "sha256-vgPm2xjOmKdZ0xKA6yLXPJpjOtQPHfaZDRtH+47XEBo=",
810 "owner": "NixOS",
811 "repo": "nixpkgs",
812 "rev": "c9b6fb798541223bbb396d287d16f43520250518",
813 "type": "github"
814 },
815 "original": {
816 "owner": "NixOS",
817 "ref": "nixos-unstable",
818 "repo": "nixpkgs",
819 "type": "github"
820 }
821 },
822 "nixpkgs-lib": {
823 "locked": {
824 "lastModified": 1740272720,
825 "narHash": "sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk=",
826 "owner": "nix-community",
827 "repo": "nixpkgs.lib",
828 "rev": "3d8ac19b63cf9d8305eed7301e4e83ff4ce9f495",
829 "type": "github"
830 },
831 "original": {
832 "owner": "nix-community",
833 "repo": "nixpkgs.lib",
834 "type": "github"
835 }
836 },
837 "nixpkgs_2": {
838 "locked": {
839 "lastModified": 1764242076,
840 "narHash": "sha256-sKoIWfnijJ0+9e4wRvIgm/HgE27bzwQxcEmo2J/gNpI=",
841 "owner": "nixos",
842 "repo": "nixpkgs",
843 "rev": "2fad6eac6077f03fe109c4d4eb171cf96791faa4",
844 "type": "github"
845 },
846 "original": {
847 "owner": "nixos",
848 "repo": "nixpkgs",
849 "rev": "2fad6eac6077f03fe109c4d4eb171cf96791faa4",
850 "type": "github"
851 }
852 },
853 "pre-commit-hooks": {
854 "inputs": {
855 "flake-compat": "flake-compat",
856 "gitignore": "gitignore",
857 "nixpkgs": [
858 "hyprland",
859 "nixpkgs"
860 ]
861 },
862 "locked": {
863 "lastModified": 1762441963,
864 "narHash": "sha256-j+rNQ119ffYUkYt2YYS6rnd6Jh/crMZmbqpkGLXaEt0=",
865 "owner": "cachix",
866 "repo": "git-hooks.nix",
867 "rev": "8e7576e79b88c16d7ee3bbd112c8d90070832885",
868 "type": "github"
869 },
870 "original": {
871 "owner": "cachix",
872 "repo": "git-hooks.nix",
873 "type": "github"
874 }
875 },
876 "root": {
877 "inputs": {
878 "clipboard-sync": "clipboard-sync",
879 "home-manager": "home-manager",
880 "hypr-dynamic-cursors": "hypr-dynamic-cursors",
881 "hyprland": "hyprland",
882 "hyprlock": "hyprlock",
883 "hyprpicker-git": "hyprpicker-git",
884 "mozff": "mozff",
885 "nixgl": "nixgl",
886 "nixpkgs": "nixpkgs_2",
887 "wpaperd": "wpaperd",
888 "zen-browser": "zen-browser"
889 }
890 },
891 "rust-overlay": {
892 "inputs": {
893 "nixpkgs": [
894 "wpaperd",
895 "nixpkgs"
896 ]
897 },
898 "locked": {
899 "lastModified": 1764902447,
900 "narHash": "sha256-wNqkDBj+tjK619sTHPEA7uhjr7DHHEY8OsFou31dxy0=",
901 "owner": "oxalica",
902 "repo": "rust-overlay",
903 "rev": "d914a744a83098eeb28125d2848ad383b209223f",
904 "type": "github"
905 },
906 "original": {
907 "owner": "oxalica",
908 "repo": "rust-overlay",
909 "rev": "d914a744a83098eeb28125d2848ad383b209223f",
910 "type": "github"
911 }
912 },
913 "systems": {
914 "locked": {
915 "lastModified": 1689347949,
916 "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
917 "owner": "nix-systems",
918 "repo": "default-linux",
919 "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
920 "type": "github"
921 },
922 "original": {
923 "owner": "nix-systems",
924 "repo": "default-linux",
925 "type": "github"
926 }
927 },
928 "systems_2": {
929 "locked": {
930 "lastModified": 1689347949,
931 "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
932 "owner": "nix-systems",
933 "repo": "default-linux",
934 "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
935 "type": "github"
936 },
937 "original": {
938 "owner": "nix-systems",
939 "repo": "default-linux",
940 "type": "github"
941 }
942 },
943 "systems_3": {
944 "locked": {
945 "lastModified": 1689347949,
946 "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
947 "owner": "nix-systems",
948 "repo": "default-linux",
949 "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
950 "type": "github"
951 },
952 "original": {
953 "owner": "nix-systems",
954 "repo": "default-linux",
955 "type": "github"
956 }
957 },
958 "systems_4": {
959 "locked": {
960 "lastModified": 1681028828,
961 "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
962 "owner": "nix-systems",
963 "repo": "default",
964 "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
965 "type": "github"
966 },
967 "original": {
968 "owner": "nix-systems",
969 "repo": "default",
970 "type": "github"
971 }
972 },
973 "systems_5": {
974 "locked": {
975 "lastModified": 1689347949,
976 "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
977 "owner": "nix-systems",
978 "repo": "default-linux",
979 "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
980 "type": "github"
981 },
982 "original": {
983 "owner": "nix-systems",
984 "repo": "default-linux",
985 "type": "github"
986 }
987 },
988 "wpaperd": {
989 "inputs": {
990 "nixpkgs": [
991 "nixpkgs"
992 ],
993 "rust-overlay": "rust-overlay",
994 "systems": "systems_5"
995 },
996 "locked": {
997 "lastModified": 1761730811,
998 "narHash": "sha256-tGeBjGdhzwCRVJ+/bEghEzmF4dZn9GbG6wBhVVFfp4c=",
999 "owner": "danyspin97",
1000 "repo": "wpaperd",
1001 "rev": "087a1edb5afd78434806f2f185755d0ced7f26ab",
1002 "type": "github"
1003 },
1004 "original": {
1005 "owner": "danyspin97",
1006 "repo": "wpaperd",
1007 "rev": "087a1edb5afd78434806f2f185755d0ced7f26ab",
1008 "type": "github"
1009 }
1010 },
1011 "xdph": {
1012 "inputs": {
1013 "hyprland-protocols": [
1014 "hyprland",
1015 "hyprland-protocols"
1016 ],
1017 "hyprlang": [
1018 "hyprland",
1019 "hyprlang"
1020 ],
1021 "hyprutils": [
1022 "hyprland",
1023 "hyprutils"
1024 ],
1025 "hyprwayland-scanner": [
1026 "hyprland",
1027 "hyprwayland-scanner"
1028 ],
1029 "nixpkgs": [
1030 "hyprland",
1031 "nixpkgs"
1032 ],
1033 "systems": [
1034 "hyprland",
1035 "systems"
1036 ]
1037 },
1038 "locked": {
1039 "lastModified": 1761431178,
1040 "narHash": "sha256-xzjC1CV3+wpUQKNF+GnadnkeGUCJX+vgaWIZsnz9tzI=",
1041 "owner": "hyprwm",
1042 "repo": "xdg-desktop-portal-hyprland",
1043 "rev": "4b8801228ff958d028f588f0c2b911dbf32297f9",
1044 "type": "github"
1045 },
1046 "original": {
1047 "owner": "hyprwm",
1048 "repo": "xdg-desktop-portal-hyprland",
1049 "type": "github"
1050 }
1051 },
1052 "zen-browser": {
1053 "inputs": {
1054 "home-manager": [
1055 "home-manager"
1056 ],
1057 "nixpkgs": [
1058 "nixpkgs"
1059 ]
1060 },
1061 "locked": {
1062 "lastModified": 1764350280,
1063 "narHash": "sha256-H8VpXvqEHll38N3YIaZUtqn7BSrq3SRfCL8idWvVRLw=",
1064 "owner": "0xc000022070",
1065 "repo": "zen-browser-flake",
1066 "rev": "504383097cbd6793aa62d1ec2d90d67ce7e4542e",
1067 "type": "github"
1068 },
1069 "original": {
1070 "owner": "0xc000022070",
1071 "repo": "zen-browser-flake",
1072 "rev": "504383097cbd6793aa62d1ec2d90d67ce7e4542e",
1073 "type": "github"
1074 }
1075 }
1076 },
1077 "root": "root",
1078 "version": 7
1079}
diff --git a/home-config/nix-home-manager/flake.nix b/home-config/nix-home-manager/flake.nix
deleted file mode 100644
index 35390b1..0000000
--- a/home-config/nix-home-manager/flake.nix
+++ /dev/null
@@ -1,89 +0,0 @@
1{
2 description = "Home Manager configuration of ryan";
3
4 inputs = {
5 # Specify the source of Home Manager and Nixpkgs.
6 nixpkgs.url = "github:nixos/nixpkgs/2fad6eac6077f03fe109c4d4eb171cf96791faa4";
7 home-manager = {
8 url = "github:nix-community/home-manager/780be8ef503a28939cf9dc7996b48ffb1a3e04c6";
9 inputs.nixpkgs.follows = "nixpkgs";
10 };
11 hyprlock = {
12 url = "github:hyprwm/hyprlock/98b86752fe4867bd14ef96a92ea788229af93130";
13 #inputs.nixpkgs.follows = "nixpkgs";
14 };
15 hyprpicker-git = {
16 url = "github:hyprwm/hyprpicker/v0.4.5";
17 inputs.nixpkgs.follows = "nixpkgs";
18 };
19 hyprland = {
20 url = "github:hyprwm/hyprland/v0.52.1";
21 inputs.nixpkgs.follows = "nixpkgs";
22 #inputs.hyprutils.url = "github:hyprwm/hyprutils/v0.6.0";
23 };
24 nixgl = {
25 url = "github:ryan77627/nixGL/3865170cbc23b32ec7cc8df1ec811fd44b6c2a58";
26 inputs.nixpkgs.follows = "nixpkgs";
27 };
28 wpaperd = {
29 url = "github:danyspin97/wpaperd/087a1edb5afd78434806f2f185755d0ced7f26ab";
30 inputs.nixpkgs.follows = "nixpkgs";
31 inputs.rust-overlay.url = "github:oxalica/rust-overlay/d914a744a83098eeb28125d2848ad383b209223f";
32 };
33 mozff = {
34 url = "github:nix-community/flake-firefox-nightly/3391372604cd3def19e6df88a51f1882aabcd59f";
35 inputs.nixpkgs.follows = "nixpkgs";
36 };
37 clipboard-sync = {
38 url = "github:dnut/clipboard-sync/943e49e0a9a16b54bbab3704e99b6cf6ad4ea19f";
39 inputs.nixpkgs.follows = "nixpkgs";
40 };
41 hypr-dynamic-cursors = {
42 url = "github:VirtCode/hypr-dynamic-cursors/85e6a93f311132d775538c4a016b637b366d2a44";
43 inputs.hyprland.follows = "hyprland";
44 inputs.nixpkgs.follows = "hyprland/nixpkgs";
45 };
46 zen-browser = {
47 url = "github:0xc000022070/zen-browser-flake/504383097cbd6793aa62d1ec2d90d67ce7e4542e";
48 inputs.nixpkgs.follows = "nixpkgs";
49 inputs.home-manager.follows = "home-manager";
50 };
51 };
52
53 outputs = { nixpkgs, home-manager, hyprland, nixgl, wpaperd, hyprpicker-git, hyprlock, mozff, clipboard-sync, hypr-dynamic-cursors, zen-browser, ... }@inputs:
54 let
55 system = "x86_64-linux";
56 pkgs = nixpkgs.legacyPackages.${system};
57 overlays = [
58 #zen-browser.homeModules
59 ];
60 in {
61 homeConfigurations."ryan" = home-manager.lib.homeManagerConfiguration {
62 inherit pkgs;
63
64 # Specify your home configuration modules here, for example,
65 # the path to your home.nix.
66 modules = [
67 {nixpkgs.overlays = overlays;}
68 ./home.nix
69 zen-browser.homeModules.beta
70 {
71 _module.args = {
72 inherit hyprland;
73 inherit nixgl;
74 inherit wpaperd;
75 inherit hyprlock;
76 inherit hyprpicker-git;
77 inherit mozff;
78 inherit clipboard-sync;
79 inherit hypr-dynamic-cursors;
80 };
81 }
82 ];
83
84 # Optionally use extraSpecialArgs
85 # to pass through arguments to home.nix
86 # extraSpecialArgs = { inherit overlays; };
87 };
88 };
89}
diff --git a/home-config/nix-home-manager/home.nix b/home-config/nix-home-manager/home.nix
deleted file mode 100644
index a969bf9..0000000
--- a/home-config/nix-home-manager/home.nix
+++ /dev/null
@@ -1,186 +0,0 @@
1{ config, pkgs, hyprland, nixgl, wpaperd, hyprpicker-git, hyprlock, mozff, clipboard-sync, hypr-dynamic-cursors, home-manager, ... }:
2
3{
4 imports = [
5 ./firefox-nightly/default.nix
6 ];
7 # Home Manager needs a bit of information about you and the paths it should
8 # manage.
9 home.username = "ryan";
10 home.homeDirectory = "/home/ryan";
11
12 # Ignore news
13 news.display = "silent";
14
15 # This value determines the Home Manager release that your configuration is
16 # compatible with. This helps avoid breakage when a new Home Manager release
17 # introduces backwards incompatible changes.
18 #
19 # You should not change this value, even if you update Home Manager. If you do
20 # want to update the value, then make sure to first check the Home Manager
21 # release notes.
22 home.stateVersion = "23.11"; # Please read the comment before changing.
23
24 # This value will set some environment variables to allow home-manager to
25 # function better outside of NixOS
26 nixpkgs.config.allowUnfree = true;
27 #targets.genericLinux.enable = true;
28 fonts.fontconfig.enable = true;
29 fonts.fontconfig.defaultFonts = {
30 monospace = [ "DejaVu Sans Mono" ];
31 sansSerif = [ "DejaVu Sans" ];
32 serif = [ "DejaVu Serif" ];
33 };
34
35 wayland.windowManager.hyprland = {
36 enable = true;
37 package = hyprland.packages.${pkgs.system}.hyprland;
38 portalPackage = hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland;
39 extraConfig = ''
40 ${builtins.readFile ../hypr/hyprland.conf}
41 '';
42 plugins = [ hypr-dynamic-cursors.packages.${pkgs.system}.hypr-dynamic-cursors ];
43 };
44
45 programs.starship = {
46 enable = true;
47 settings = {
48 add_newline = false;
49 character = {
50 success_symbol = "[➜](bold green)";
51 error_symbol = "[➜](bold red)";
52 };
53 time = {
54 disabled = false;
55 format = "\[ $time \]($style)";
56 time_format = "%T";
57 };
58 };
59 };
60
61 programs.zen-browser = {
62 enable = true;
63 policies = import ./zenPolicies.nix;
64 profiles.default = import ./zenProfile.nix;
65 };
66
67 # The home.packages option allows you to install Nix packages into your
68 # environment.
69 home.packages = with pkgs; [
70 # # Adds the 'hello' command to your environment. It prints a friendly
71 # # "Hello, world!" when run.
72 # pkgs.hello
73 # nix # Used to keep nix up to date when I don't update the guix package
74 yt-dlp
75 #pass
76 rustup
77 zoxide
78 nodePackages.pnpm
79 gcc
80 aerc
81 pkg-config
82 wttrbar
83 wl-clip-persist
84 gifski
85 waypaper
86 gdu
87 spotify-player
88 #hyprpicker
89 xwayland
90 xdg-desktop-portal
91 xdg-desktop-portal-gtk
92 mpv
93 imv
94 libva
95 libvdpau
96 #wpaperd
97 hypridle
98 #latest.firefox-nightly-bin
99 eza
100 wl-mirror
101 starship
102 taskwarrior3
103 delta
104 pyprland
105 satty
106 talosctl
107 kubectl
108 fluxcd
109 talhelper
110 sops
111 restic
112 kdePackages.kdenlive
113 bluetui
114 supercell-wx
115
116 # Here until i can fix firefox's stupid devtools issue
117 chromium
118
119 # Wrapped programs for some env variables
120 (pkgs.writeScriptBin "hyprlock" ''
121 #! ${pkgs.bash}/bin/bash
122 export LD_PRELOAD="/run/current-system/profile/lib/libpam.so.0:/run/current-system/profile/lib/libfontconfig.so:$LD_PRELOAD"
123 exec ${hyprlock.packages.${pkgs.system}.hyprlock}/bin/hyprlock "$@"
124 '')
125
126 # Flakes specific things defined in flake.nix
127 #hyprland.packages.${pkgs.system}.default
128 #hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland
129 nixgl.packages.${pkgs.system}.nixGLIntel
130 wpaperd.packages.${pkgs.system}.wpaperd
131 hyprpicker-git.packages.${pkgs.system}.hyprpicker
132 clipboard-sync.packages.${pkgs.system}.default
133
134 # Fonts!
135 noto-fonts
136 dejavu_fonts
137 liberation_ttf
138 noto-fonts-cjk-sans
139 noto-fonts-color-emoji
140
141 # # It is sometimes useful to fine-tune packages, for example, by applying
142 # # overrides. You can do that directly here, just don't forget the
143 # # parentheses. Maybe you want to install Nerd Fonts with a limited number of
144 # # fonts?
145 # (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
146
147 # # You can also create simple shell scripts directly inside your
148 # # configuration. For example, this adds a command 'my-hello' to your
149 # # environment:
150 # (pkgs.writeShellScriptBin "my-hello" ''
151 # echo "Hello, ${config.home.username}!"
152 # '')
153 ];
154
155 # Home Manager is pretty good at managing dotfiles. The primary way to manage
156 # plain files is through 'home.file'.
157 home.file = {
158 # # Building this configuration will create a copy of 'dotfiles/screenrc' in
159 # # the Nix store. Activating the configuration will then make '~/.screenrc' a
160 # # symlink to the Nix store copy.
161 # ".screenrc".source = dotfiles/screenrc;
162
163 # # You can also set the file content immediately.
164 # ".gradle/gradle.properties".text = ''
165 # org.gradle.console=verbose
166 # org.gradle.daemon.idletimeout=3600000
167 # '';
168 };
169
170 # You can also manage environment variables but you will have to manually
171 # source
172 #
173 # ~/.nix-profile/etc/profile.d/hm-session-vars.sh
174 #
175 # or
176 #
177 # /etc/profiles/per-user/ryan/etc/profile.d/hm-session-vars.sh
178 #
179 # if you don't want to manage your shell through Home Manager.
180 home.sessionVariables = {
181 # EDITOR = "emacs";
182 };
183
184 # Let Home Manager install and manage itself.
185 programs.home-manager.enable = true;
186}
diff --git a/home-config/nix-home-manager/zenPolicies.nix b/home-config/nix-home-manager/zenPolicies.nix
deleted file mode 100644
index 902ea19..0000000
--- a/home-config/nix-home-manager/zenPolicies.nix
+++ /dev/null
@@ -1,124 +0,0 @@
1let
2 lock-false = {
3 Value = false;
4 Status = "locked";
5 };
6 lock-true = {
7 Value = true;
8 Status = "locked";
9 };
10in
11{
12 EnableTrackingProtection = {
13 Value = true;
14 Locked = true;
15 Cryptomining = true;
16 Fingerprinting = true;
17 EmailTracking = true;
18 };
19 UserMessaging = {
20 WhatsNew = false;
21 ExtensionRecommendations = false;
22 FeatureRecommendations = false;
23 UrlbarInterventions = false;
24 SkipOnboarding = true;
25 MoreFromMozilla = false;
26 Labs = false;
27 Locked = true;
28 };
29 DisableAppUpdate = true;
30 DisableAccounts = true;
31 DisableFirefoxAccounts = true;
32 DisableFirefoxStudies = true;
33 DisablePocket = true;
34 DisableTelemetry = true;
35 AutofillAddressEnabled = false;
36 AutofillCreditCardEnabled = false;
37 DisableMasterPasswordCreation = true;
38 PasswordManagerEnabled = false;
39 PrimaryPassword = false;
40 OfferToSaveLogins = false;
41 NoDefaultBookmarks = true;
42 OverrideFirstRunPage = "";
43 OverridePostUpdatePage = "";
44 FirefoxHome = {
45 Search = true;
46 TopSites = true;
47 SponsoredTopSites = false;
48 Highlights = false;
49 Pocket = false;
50 SponsoredPocket = false;
51 Snippets = false;
52 Locked = true;
53 };
54 SearchSuggestEnabled = true;
55 FirefoxSuggest = {
56 WebSuggestions = true;
57 SponsoredSuggestions = false;
58 ImproveSuggest = false;
59 Locked = true;
60 };
61 PictureInPicture = lock-true;
62 HardwareAcceleration = true;
63 Certificates = {
64 ImportEnterpriseRoots = true;
65 };
66 ExtensionSettings = {
67 #"*".installation_mode = "blocked";
68 # uBlock Origin
69 "uBlock0@raymondhill.net" = {
70 install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
71 installation_mode = "force_installed";
72 };
73 # Bitwarden
74 "{446900e4-71c2-419f-a6a7-df9c091e268b}" = {
75 install_url = "https://addons.mozilla.org/firefox/downloads/latest/bitwarden-password-manager/latest.xpi";
76 installation_mode = "normal_installed";
77 };
78 # SponsorBlock
79 "sponsorBlocker@ajay.app" = {
80 install_url = "https://addons.mozilla.org/firefox/downloads/latest/sponsorblock/latest.xpi";
81 installation_mode = "force_installed";
82 };
83 # DeArrow
84 "deArrow@ajay.app" = {
85 install_url = "https://addons.mozilla.org/firefox/downloads/latest/dearrow/latest.xpi";
86 installation_mode = "force_installed";
87 };
88 # Return Youtube Dislike
89 "{762f9885-5a13-4abd-9c77-433dcd38b8fd}" = {
90 install_url = "https://addons.mozilla.org/firefox/downloads/latest/return-youtube-dislikes/latest.xpi";
91 installation_mode = "force_installed";
92 };
93 # Youtube Nonstop
94 "{0d7cafdd-501c-49ca-8ebb-e3341caaa55e}" = {
95 install_url = "https://addons.mozilla.org/firefox/downloads/latest/youtube-nonstop/latest.xpi";
96 installation_mode = "force_installed";
97 };
98 # TamperMonkey
99 "firefox@tampermonkey.net" = {
100 install_url = "https://addons.mozilla.org/firefox/downloads/latest/tampermonkey/latest.xpi";
101 installation_mode = "force_installed";
102 };
103 # Floccus
104 "floccus@handmadeideas.org" = {
105 install_url = "https://addons.mozilla.org/firefox/downloads/latest/floccus/latest.xpi";
106 installation_mode = "force_installed";
107 };
108 # Mailvelope
109 "jid1-AQqSMBYb0a8ADg@jetpack" = {
110 install_url = "https://addons.mozilla.org/firefox/downloads/latest/mailvelope/latest.xpi";
111 installation_mode = "force_installed";
112 };
113 };
114 Preferences = {
115 "xpinstall.whitelist.required" = lock-true;
116 "dom.webgpu.enabled" = lock-true;
117 "media.eme.enabled" = lock-true;
118 "general.autoScroll" = lock-true;
119 "general.smoothScroll" = lock-true;
120 "browser.crashReports.unsubmittedCheck.autoSubmit2" = lock-false;
121 "browser.aboutConfig.showWarning" = lock-false;
122 "media.videocontrols.picture-in-picture.enable-when-switching-tabs.enabled" = lock-true;
123 };
124}
diff --git a/home-config/nix-home-manager/zenProfile.nix b/home-config/nix-home-manager/zenProfile.nix
deleted file mode 100644
index e10cda6..0000000
--- a/home-config/nix-home-manager/zenProfile.nix
+++ /dev/null
@@ -1,70 +0,0 @@
1rec {
2 settings = {
3 "zen.welcome-screen.seen" = true;
4 "zen.urlbar.behavior" = "float";
5 "zen.view.compact.enable-at-startup"= true;
6 "zen.view.use-single-toolbar"= false;
7 "zen.view.window.scheme"= 0;
8 };
9
10 pinsForce = true;
11 pins = {
12 "Discord" = {
13 id = "59d28a80-d185-4dec-92cb-6da549cdfd27";
14 workspace = spaces."Personal".id;
15 url = "https://discord.com/channels/@me";
16 position = 101;
17 isEssential = true;
18 };
19 "RSS" = {
20 id = "0fa25825-01f2-49ce-b8a2-80f1100e782c";
21 workspace = spaces."Personal".id;
22 url = "https://rss.ryan77627.xyz";
23 position = 102;
24 isEssential = true;
25 };
26 };
27
28 spacesForce = true;
29 spaces = {
30 "Personal" = {
31 id = "2392f396-2548-4a20-9fb8-a3e940be4a58";
32 #icon = "";
33 position = 1000;
34 theme = {
35 type = "gradient";
36 colors = [
37 {
38 red = 199;
39 green = 161;
40 blue = 247;
41 algorithm = "complementary";
42 type = "explicit-lightness";
43 lightness = 80;
44 #isPrimary = true;
45 }
46 # {
47 # red = 157;
48 # green = 251;
49 # blue = 194;
50 # algorithm = "splitComplimentary";
51 # type = "explicit-lightness";
52 # lightness = 80;
53 # isPrimary = false;
54 # }
55 # {
56 # red = 161;
57 # green = 243;
58 # blue = 247;
59 # algorithm = "splitComplimentary";
60 # type = "explicit-lightness";
61 # lightness = 80;
62 # isPrimary = false;
63 # }
64 ];
65 opacity = 0.419;
66 texture = 0.3125;
67 };
68 };
69 };
70}