diff --git a/flake.lock b/flake.lock index 73d8139..42b3ab7 100644 --- a/flake.lock +++ b/flake.lock @@ -145,7 +145,7 @@ "inputs": { "deploy-rs": "deploy-rs", "nixpkgs": [ - "nixpkgs" + "nixpkgs-unstable" ], "nixpkgs-unstable": [ "nixpkgs-unstable" @@ -156,11 +156,11 @@ ] }, "locked": { - "lastModified": 1770914135, - "narHash": "sha256-gAOwv1il9GUxsS7XGF612Ftm9+cMvd1QOINwJlWpCnQ=", + "lastModified": 1770984934, + "narHash": "sha256-5+/r1CFqmmzUIqZNjrGUjGgF4BxDkQ2NUrKkCsBBE9s=", "owner": "emilelcb", "repo": "Cerulean", - "rev": "b151f45dfbdb0849d3c24940af946f11652dd8bf", + "rev": "3ba385ee25cc02c91fe4c245a734d59c54a1b1df", "type": "github" }, "original": { @@ -455,7 +455,7 @@ "home-manager": { "inputs": { "nixpkgs": [ - "nixpkgs" + "nixpkgs-unstable" ] }, "locked": { @@ -1224,13 +1224,13 @@ "type": "github" } }, - "nixpkgs-unstable": { + "nixpkgs-staging": { "locked": { - "lastModified": 1770914792, - "narHash": "sha256-QpCRgIbupASO9adsg2kFNNUnOIQq0vJ9g6HCxlOA7v8=", + "lastModified": 1770984692, + "narHash": "sha256-n6HUgG2+cvLcQkZEgXu14qgl/SrKC4EZerQXod0HGDg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3b285f04c85ceacf7a53cfa21b2f5cb60a2d06e2", + "rev": "e7b82c0fddf16a5e3fee29bbd8e0c8c67158176d", "type": "github" }, "original": { @@ -1240,13 +1240,13 @@ "type": "github" } }, - "nixpkgs_10": { + "nixpkgs-unstable": { "locked": { - "lastModified": 1770562336, - "narHash": "sha256-ub1gpAONMFsT/GU2hV6ZWJjur8rJ6kKxdm9IlCT0j84=", + "lastModified": 1770841267, + "narHash": "sha256-9xejG0KoqsoKEGp2kVbXRlEYtFFcDTHjidiuX8hGO44=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d6c71932130818840fc8fe9509cf50be8c64634f", + "rev": "ec7c70d12ce2fc37cb92aff673dcdca89d187bae", "type": "github" }, "original": { @@ -1256,7 +1256,7 @@ "type": "github" } }, - "nixpkgs_11": { + "nixpkgs_10": { "locked": { "lastModified": 1770197578, "narHash": "sha256-AYqlWrX09+HvGs8zM6ebZ1pwUqjkfpnv8mewYwAo+iM=", @@ -1272,7 +1272,7 @@ "type": "github" } }, - "nixpkgs_12": { + "nixpkgs_11": { "locked": { "lastModified": 1769461804, "narHash": "sha256-msG8SU5WsBUfVVa/9RPLaymvi5bI8edTavbIq3vRlhI=", @@ -1423,15 +1423,15 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1770911021, - "narHash": "sha256-8FcXBu0CjeeZeq3uW2h/c5AV+hqELuyPiHsUogOSmZM=", - "owner": "emilelcb", + "lastModified": 1770975056, + "narHash": "sha256-ZXTz/P3zUbbM6lNXzt91u8EwfNqhXpYMu8+wvFZqQHE=", + "owner": "cry128", "repo": "nt", - "rev": "471e1617e8cc0bc749712a7a6af2b2e9f988ffbf", + "rev": "f42dcdd49a7921a7f433512e83d5f93696632412", "type": "github" }, "original": { - "owner": "emilelcb", + "owner": "cry128", "repo": "nt", "type": "github" } @@ -1489,7 +1489,7 @@ "nix-alien": "nix-alien", "nixcats": "nixcats", "nixcord": "nixcord", - "nixpkgs": "nixpkgs_10", + "nixpkgs-staging": "nixpkgs-staging", "nixpkgs-unstable": "nixpkgs-unstable", "sddm-silent": "sddm-silent", "spicetify-nix": "spicetify-nix", @@ -1538,7 +1538,7 @@ "sddm-silent": { "inputs": { "nixpkgs": [ - "nixpkgs" + "nixpkgs-unstable" ] }, "locked": { @@ -1557,7 +1557,7 @@ }, "spicetify-nix": { "inputs": { - "nixpkgs": "nixpkgs_11", + "nixpkgs": "nixpkgs_10", "systems": "systems_5" }, "locked": { @@ -1766,7 +1766,7 @@ "zen": { "inputs": { "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs_12" + "nixpkgs": "nixpkgs_11" }, "locked": { "lastModified": 1770910552, diff --git a/flake.nix b/flake.nix index 4184706..09bf215 100644 --- a/flake.nix +++ b/flake.nix @@ -5,19 +5,19 @@ systems.url = "github:nix-systems/default"; # WARNING: don't remove duplicate!! (cry64 will fix) - nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - nixpkgs-unstable.url = "github:NixOS/nixpkgs/staging-next"; + nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable"; + nixpkgs-staging.url = "github:NixOS/nixpkgs/staging-next"; home-manager = { url = "github:nix-community/home-manager/master"; - inputs.nixpkgs.follows = "nixpkgs"; + inputs.nixpkgs.follows = "nixpkgs-unstable"; }; cerulean = { url = "github:emilelcb/Cerulean"; inputs = { systems.follows = "systems"; - nixpkgs.follows = "nixpkgs"; + nixpkgs.follows = "nixpkgs-unstable"; nixpkgs-unstable.follows = "nixpkgs-unstable"; }; }; @@ -51,7 +51,7 @@ # temp theme until i bother creating my own -python3 extraPython3Packages = { - test = (_:[]); + test = _: []; }; # populates $LUA_PATH and $LUA_CPATH extraLuaPackages = { - test = [ (_:[]) ]; + test = [(_: [])]; }; - }); + }; # see :help nixCats.flake.outputs.packageDefinitions packageDefinitions.replace = { # these are the names of your packages # you can include as many as you wish. - auroranvim = {pkgs , ... }: { + auroranvim = {pkgs, ...}: { # they contain a settings set defined above # see :help nixCats.flake.outputs.settings settings = { wrapRc = true; # IMPORTANT: # your alias may not conflict with your other packages. - aliases = [ "auroravim" "auravim" "foxyvim" "avix" "fvix" "auim" ]; + aliases = ["auroravim" "auravim" "foxyvim" "avix" "fvix" "auim"]; }; # and a set of categories that you want # (and other information to pass to lua) categories = { general = true; - ui = true; - qol = true; - telescope = true; - fyler = true; - lsp = true; - completion = true; - treesitter = true; - discord = false; + ui = true; + qol = true; + telescope = true; + fyler = true; + lsp = true; + completion = true; + treesitter = true; + discord = false; - lang = { - lua = true; - nix = true; - rust = true; - zig = true; - elixir = true; - gleam = true; - java = true; - }; + lang = { + lua = true; + nix = true; + rust = true; + zig = true; + elixir = true; + gleam = true; + java = true; + }; }; }; }; diff --git a/homes/modules/programs/nixcord.nix b/homes/modules/programs/nixcord.nix index d1d9e2b..7e22a19 100644 --- a/homes/modules/programs/nixcord.nix +++ b/homes/modules/programs/nixcord.nix @@ -1,5 +1,4 @@ -{ config, inputs, lib, pkgs, ... }: -{ +{inputs, ...}: { imports = [ inputs.nixcord.homeModules.nixcord ]; @@ -20,125 +19,125 @@ ]; plugins = { anonymiseFileNames = { - enable = true; - anonymiseByDefault = true; - method = 0; - randomisedLength = 16; - }; - betterSessions = { - backgroundCheck = true; - checkInterval = 1; - }; - biggerStreamPreview.enable = true; - callTimer.enable = true; - fixYoutubeEmbeds.enable = true; - fixSpotifyEmbeds.enable = true; - tidalEmbeds.enable = true; - youtubeAdblock.enable = true; - followVoiceUser.enable = true; - friendsSince.enable = true; - ircColors = { - enable = true; - lightness = 80; - memberListColors = true; - applyColorOnlyInDms = false; - applyColorOnlyToUsersWithoutColor = false; - }; - messageLogger = { - enable = true; - showEditDiffs = true; - separatedDiffs = false; - }; - fakeNitro.enable = true; - ghosted.enable = true; - noF1.enable = true; - noMaskedUrlPaste.enable = true; - messageLatency = { - enable = false; - latency = -1; - showMillis = true; - }; - openInApp.enable = true; - crashHandler.enable = true; - disableCallIdle.enable = true; - experiments.enable = true; - expressionCloner.enable = true; - favoriteGifSearch.enable = true; - fixImagesQuality.enable = true; - forceOwnerCrown.enable = true; - forwardAnywhere.enable = true; - spotifyCrack.enable = true; - spotifyShareCommands.enable = true; - spotifyControls.enable = true; - fullUserInChatbox.enable = true; - gifPaste.enable = true; - ignoreActivities = { - enable = true; - ignorePlaying = true; - ignoreStreaming = true; - ignoreListening = true; - ignoreWatching = true; - ignoreCompeting = true; - }; - imageLink.enable = true; - imageZoom.enable = true; - memberCount.enable = true; - noDevtoolsWarning.enable = true; - noUnblockToJump.enable = true; - pauseInvitesForever.enable = true; - permissionsViewer.enable = true; - pictureInPicture = { - enable = true; - loop = true; - }; - platformIndicators.enable = true; - previewMessage.enable = true; - relationshipNotifier.enable = true; - revealAllSpoilers.enable = true; - serverInfo.enable = true; - serverListIndicators.enable = true; - showHiddenChannels.enable = true; - showHiddenThings.enable = true; - showTimeoutDuration = { - enable = true; - displayStyle = "tooltip"; - }; - silentTyping = { - enable = true; - enabledGlobally = false; - }; - startupTimings.enable = true; - typingIndicator.enable = true; - unlockedAvatarZoom = { - enable = true; - zoomMultiplier = 4.0; - }; - userMessagesPronouns.enable = true; - validUser.enable = true; - validReply.enable = true; - viewIcons = { - enable = true; - format = "webp"; - imgSize = "4096"; - }; - voiceChatDoubleClick.enable = true; - voiceDownload.enable = true; - voiceMessages = { - enable = true; - noiseSuppression = false; - echoCancellation = true; - }; - volumeBooster.enable = true; - webKeybinds.enable = true; - webScreenShareFixes.enable = true; - whoReacted.enable = true; - whosWatching.enable = true; - quickReply.enable = true; - questCompleter.enable = true; - shikiCodeblocks = { - enable = true; - useDevIcon = "COLOR"; - theme = "https://raw.githubusercontent.com/shikijs/textmate-grammars-themes/2d87559c7601a928b9f7e0f0dda243d2fb6d4499/packages/tm-themes/themes/kanagawa-wave.json"; + enable = true; + anonymiseByDefault = true; + method = 0; + randomisedLength = 16; + }; + betterSessions = { + backgroundCheck = true; + checkInterval = 1; + }; + biggerStreamPreview.enable = true; + callTimer.enable = true; + fixYoutubeEmbeds.enable = true; + fixSpotifyEmbeds.enable = true; + tidalEmbeds.enable = true; + youtubeAdblock.enable = true; + followVoiceUser.enable = true; + friendsSince.enable = true; + ircColors = { + enable = true; + lightness = 80; + memberListColors = true; + applyColorOnlyInDms = false; + applyColorOnlyToUsersWithoutColor = false; + }; + messageLogger = { + enable = true; + showEditDiffs = true; + separatedDiffs = false; + }; + fakeNitro.enable = true; + ghosted.enable = true; + noF1.enable = true; + noMaskedUrlPaste.enable = true; + messageLatency = { + enable = false; + latency = -1; + showMillis = true; + }; + openInApp.enable = true; + crashHandler.enable = true; + disableCallIdle.enable = true; + experiments.enable = true; + expressionCloner.enable = true; + favoriteGifSearch.enable = true; + fixImagesQuality.enable = true; + forceOwnerCrown.enable = true; + forwardAnywhere.enable = true; + spotifyCrack.enable = true; + spotifyShareCommands.enable = true; + spotifyControls.enable = true; + fullUserInChatbox.enable = true; + gifPaste.enable = true; + ignoreActivities = { + enable = true; + ignorePlaying = true; + ignoreStreaming = true; + ignoreListening = true; + ignoreWatching = true; + ignoreCompeting = true; + }; + imageLink.enable = true; + imageZoom.enable = true; + memberCount.enable = true; + noDevtoolsWarning.enable = true; + noUnblockToJump.enable = true; + pauseInvitesForever.enable = true; + permissionsViewer.enable = true; + pictureInPicture = { + enable = true; + loop = true; + }; + platformIndicators.enable = true; + previewMessage.enable = true; + relationshipNotifier.enable = true; + revealAllSpoilers.enable = true; + serverInfo.enable = true; + serverListIndicators.enable = true; + showHiddenChannels.enable = true; + showHiddenThings.enable = true; + showTimeoutDuration = { + enable = true; + displayStyle = "tooltip"; + }; + silentTyping = { + enable = true; + enabledGlobally = false; + }; + startupTimings.enable = true; + typingIndicator.enable = true; + unlockedAvatarZoom = { + enable = true; + zoomMultiplier = 4.0; + }; + userMessagesPronouns.enable = true; + validUser.enable = true; + validReply.enable = true; + viewIcons = { + enable = true; + format = "webp"; + imgSize = "4096"; + }; + voiceChatDoubleClick.enable = true; + voiceDownload.enable = true; + voiceMessages = { + enable = true; + noiseSuppression = false; + echoCancellation = true; + }; + volumeBooster.enable = true; + webKeybinds.enable = true; + webScreenShareFixes.enable = true; + whoReacted.enable = true; + whosWatching.enable = true; + quickReply.enable = true; + questCompleter.enable = true; + shikiCodeblocks = { + enable = true; + useDevIcon = "COLOR"; + theme = "https://raw.githubusercontent.com/shikijs/textmate-grammars-themes/2d87559c7601a928b9f7e0f0dda243d2fb6d4499/packages/tm-themes/themes/kanagawa-wave.json"; }; }; }; diff --git a/homes/modules/programs/spicetify.nix b/homes/modules/programs/spicetify.nix index 896d0b7..7fa740e 100644 --- a/homes/modules/programs/spicetify.nix +++ b/homes/modules/programs/spicetify.nix @@ -1,8 +1,12 @@ -{ inputs, lib, pkgs, ... }: -let - spicetifyPkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system}; +{ + inputs, + upkgs, + system, + ... +}: let + spicetifyPkgs = inputs.spicetify-nix.legacyPackages.${system}; in { - imports = [ inputs.spicetify-nix.homeManagerModules.default ]; + imports = [inputs.spicetify-nix.homeManagerModules.default]; programs.spicetify = { enable = true; @@ -10,15 +14,17 @@ in { adblock shuffle keyboardShortcut - ({ - src = (pkgs.fetchFromGitHub { - owner = "Spikerko"; - repo = "spicy-lyrics"; - rev = "568c83326aa6aba6ded28c95df6fcfb25cab3648"; - hash = "sha256-lej93EDzGkmyrg5YMdPSqzrxlIfKsfaDBZosTvxoTNw="; - }) + /builds; - name = "spicy-lyrics.mjs"; - }) + { + src = + (upkgs.fetchFromGitHub { + owner = "Spikerko"; + repo = "spicy-lyrics"; + rev = "568c83326aa6aba6ded28c95df6fcfb25cab3648"; + hash = "sha256-lej93EDzGkmyrg5YMdPSqzrxlIfKsfaDBZosTvxoTNw="; + }) + + /builds; + name = "spicy-lyrics.mjs"; + } ]; theme = spicetifyPkgs.themes.comfy; colorScheme = "Sakura"; diff --git a/homes/modules/programs/yazi/yazi.nix b/homes/modules/programs/yazi/yazi.nix index 54c26be..9943358 100644 --- a/homes/modules/programs/yazi/yazi.nix +++ b/homes/modules/programs/yazi/yazi.nix @@ -1,8 +1,8 @@ -{ config, inputs, lib, pkgs, ... }: -{ +{upkgs, ...}: { # optional dependencies can be found here: # https://yazi-rs.github.io/docs/installation/ - home.packages = with pkgs; [ # dependencies + home.packages = with upkgs; [ + # dependencies ripdrag ]; @@ -22,9 +22,15 @@ keymap = { mgr.prepend_keymap = [ # drag and drop!! - { on = [ "" ]; run = ''shell "ripdrag -x -a \"$@\"" --confirm''; } + { + on = [""]; + run = ''shell "ripdrag -x -a \"$@\"" --confirm''; + } # copy hovered file to clipboard - { on = [ "" ]; run = ''shell -- path=%h; echo "file://$path" | wl-copy -t text/uri-list''; } + { + on = [""]; + run = ''shell -- path=%h; echo "file://$path" | wl-copy -t text/uri-list''; + } ]; }; @@ -34,36 +40,122 @@ theme = { icon = { dirs = [ - { name = ".config"; text = ""; fg = "red"; } - { name = ".git"; text = ""; fg = "blue"; } - { name = ".github"; text = ""; fg = "blue"; } - { name = ".npm"; text = ""; fg = "blue"; } - { name = "Desktop"; text = ""; fg = "magenta"; } - { name = "Documents"; text = ""; fg = "magenta"; } - { name = "Downloads"; text = ""; fg = "red"; } - { name = "Library"; text = ""; fg = "magenta"; } - { name = "Movies"; text = ""; fg = "magenta"; } - { name = "Music"; text = ""; fg = "magenta"; } - { name = "Pictures"; text = ""; fg = "magenta"; } - { name = "Public"; text = ""; fg = "magenta"; } - { name = "Videos"; text = ""; fg = "red"; } + { + name = ".config"; + text = ""; + fg = "red"; + } + { + name = ".git"; + text = ""; + fg = "blue"; + } + { + name = ".github"; + text = ""; + fg = "blue"; + } + { + name = ".npm"; + text = ""; + fg = "blue"; + } + { + name = "Desktop"; + text = ""; + fg = "magenta"; + } + { + name = "Documents"; + text = ""; + fg = "magenta"; + } + { + name = "Downloads"; + text = ""; + fg = "red"; + } + { + name = "Library"; + text = ""; + fg = "magenta"; + } + { + name = "Movies"; + text = ""; + fg = "magenta"; + } + { + name = "Music"; + text = ""; + fg = "magenta"; + } + { + name = "Pictures"; + text = ""; + fg = "magenta"; + } + { + name = "Public"; + text = ""; + fg = "magenta"; + } + { + name = "Videos"; + text = ""; + fg = "red"; + } ]; - conds = [ - # special files - { "if" = "orphan"; text = ""; } - { "if" = "link"; text = ""; } - { "if" = "block"; text = ""; } - { "if" = "char"; text = ""; } - { "if" = "fifo"; text = ""; } - { "if" = "sock"; text = ""; } - { "if" = "sticky"; text = ""; } - { "if" = "dummy"; text = ""; } + conds = [ + # special files + { + "if" = "orphan"; + text = ""; + } + { + "if" = "link"; + text = ""; + } + { + "if" = "block"; + text = ""; + } + { + "if" = "char"; + text = ""; + } + { + "if" = "fifo"; + text = ""; + } + { + "if" = "sock"; + text = ""; + } + { + "if" = "sticky"; + text = ""; + } + { + "if" = "dummy"; + text = ""; + } - # fallback - { "if" = "dir"; text = ""; fg = "blue"; } - { "if" = "exec"; text = ""; } - { "if" = "!dir"; text = ""; } - ]; + # fallback + { + "if" = "dir"; + text = ""; + fg = "blue"; + } + { + "if" = "exec"; + text = ""; + } + { + "if" = "!dir"; + text = ""; + } + ]; }; }; }; @@ -76,7 +168,7 @@ force = true; text = '' [filechooser] - cmd=${pkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh + cmd=${upkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh default_dir=$HOME env=TERMCMD='kitty --title filechooser' open_mode=suggested diff --git a/homes/modules/services/dunst.nix b/homes/modules/services/dunst.nix index 31c3453..3f70692 100644 --- a/homes/modules/services/dunst.nix +++ b/homes/modules/services/dunst.nix @@ -1,9 +1,5 @@ -{ config, inputs, pkgs, ... }: -let - unstable = inputs.nixpkgs-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system}; -in -{ - home.packages = with pkgs; [ +{upkgs, ...}: { + home.packages = with upkgs; [ libnotify ]; @@ -12,21 +8,21 @@ in settings = { global = { monitor = "DP-3"; # second monitor - origin = "top-left"; - layer = "top"; # above windows, below fullscreen - offset = "(16, 24)"; + origin = "top-left"; + layer = "top"; # above windows, below fullscreen + offset = "(16, 24)"; - padding = 4; - gap_size = 4; - frame_width = 2; + padding = 4; + gap_size = 4; + frame_width = 2; - font = "DepartureMono Nerd Font 8"; + font = "DepartureMono Nerd Font 8"; - corner_radius = 12; - icon_corner_radius = 12; + corner_radius = 12; + icon_corner_radius = 12; - progress_bar = true; - progress_bar_height = 16; + progress_bar = true; + progress_bar_height = 16; }; }; }; diff --git a/homes/modules/services/keepassxc/keepassxc.nix b/homes/modules/services/keepassxc/keepassxc.nix index 7fd6e49..b669c42 100644 --- a/homes/modules/services/keepassxc/keepassxc.nix +++ b/homes/modules/services/keepassxc/keepassxc.nix @@ -1,20 +1,19 @@ -{ config, inputs, lib, pkgs, ... }: -{ - home.packages = with pkgs; [ +{upkgs, ...}: { + home.packages = with upkgs; [ keepassxc ]; systemd.user.services.keepassxc = { Unit = { Description = "KeePassXC password manager"; - After = [ "graphical-session-pre.target" ]; - PartOf = [ "graphical-session.target" ]; + After = ["graphical-session-pre.target"]; + PartOf = ["graphical-session.target"]; }; Service = { - Description = "${pkgs.keepassxc}/bin/keepassxc"; + Description = "${upkgs.keepassxc}/bin/keepassxc"; Restart = "on-failure"; }; - Install.WantedBy = [ "graphical-session.target" ]; + Install.WantedBy = ["graphical-session.target"]; }; xdg.configFile."keepassxc/keepassxc.ini" = { diff --git a/homes/modules/services/pulse/pulse.nix b/homes/modules/services/pulse/pulse.nix index 59d1fa0..3757fde 100644 --- a/homes/modules/services/pulse/pulse.nix +++ b/homes/modules/services/pulse/pulse.nix @@ -1,7 +1,11 @@ -{ inputs, lib, pkgs, config, osConfig, ... }: -{ +{ + config, + osConfig, + ... +}: { # writes ./client.conf to ~/.config/pulse/client.conf - xdg.configFile."pulse/client.conf".text = builtins.replaceStrings + xdg.configFile."pulse/client.conf".text = + builtins.replaceStrings ["{uid}"] # make sure ur user id is set!!! ["${toString osConfig.users.users.${config.home.username}.uid}"] diff --git a/homes/modules/services/wireplumber/wireplumber.nix b/homes/modules/services/wireplumber/wireplumber.nix index 03e4957..e120486 100644 --- a/homes/modules/services/wireplumber/wireplumber.nix +++ b/homes/modules/services/wireplumber/wireplumber.nix @@ -1,5 +1,4 @@ -{ inputs, lib, pkgs, config, ... }: -{ +{...}: { # writes ./config to ~/.config/wireplumber xdg.configFile."wireplumber" = { recursive = true; diff --git a/homes/modules/shell/fastfetch/fastfetch.nix b/homes/modules/shell/fastfetch/fastfetch.nix index 987f805..1412fcc 100644 --- a/homes/modules/shell/fastfetch/fastfetch.nix +++ b/homes/modules/shell/fastfetch/fastfetch.nix @@ -1,6 +1,5 @@ -{ inputs, lib, pkgs, ... }: -{ - home.packages = with pkgs; [ +{upkgs, ...}: { + home.packages = with upkgs; [ fastfetch # displays system info! x3 ]; diff --git a/homes/modules/shell/programs.nix b/homes/modules/shell/programs.nix index b95007d..2c52a90 100644 --- a/homes/modules/shell/programs.nix +++ b/homes/modules/shell/programs.nix @@ -1,5 +1,4 @@ -{ inputs, lib, pkgs, ... }: -{ +{...}: { programs = { zoxide = { enable = true; @@ -12,14 +11,14 @@ hyfetch = { enable = true; settings = { - preset = "genderfae"; - mode = "rgb"; - backend = "fastfetch"; - color_align = { - mode = "vertical"; - }; - auto_detect_light_dark = true; - pride_month_disable = false; + preset = "genderfae"; + mode = "rgb"; + backend = "fastfetch"; + color_align = { + mode = "vertical"; + }; + auto_detect_light_dark = true; + pride_month_disable = false; }; }; }; diff --git a/homes/modules/shell/zellij/zellij.nix b/homes/modules/shell/zellij/zellij.nix index aa90116..9cd1778 100644 --- a/homes/modules/shell/zellij/zellij.nix +++ b/homes/modules/shell/zellij/zellij.nix @@ -1,8 +1,4 @@ -{ inputs, lib, pkgs, ... }: -let - unstable = inputs.nixpkgs-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system}; -in -{ +{...}: { # the theme file template for zellij is in wallust programs.zellij = { @@ -10,8 +6,8 @@ in enableZshIntegration = false; extraConfig = '' -theme "test" -show_startup_tips false + theme "test" + show_startup_tips false ''; }; } diff --git a/homes/modules/shell/zsh.nix b/homes/modules/shell/zsh.nix index 3c161f6..d1c9849 100644 --- a/homes/modules/shell/zsh.nix +++ b/homes/modules/shell/zsh.nix @@ -1,8 +1,4 @@ -{ inputs, lib, pkgs, ... }: -let - unstable = inputs.nixpkgs-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system}; -in -{ +{upkgs, ...}: { programs.zsh = { enable = true; enableCompletion = true; @@ -12,22 +8,22 @@ in plugins = [ { name = "vi-mode"; - src = pkgs.zsh-vi-mode; + src = upkgs.zsh-vi-mode; file = "share/zsh-vi-mode/zsh-vi-mode.plugin.zsh"; } ]; initContent = '' - # yazi wrapper!!! - function yazi() { - local tmp="$(mktemp -p "/run/user/$UID" -t "yazi-cwd.XXXXXX")" cwd - command yazi "$@" --cwd-file="$tmp" - IFS= read -r -d ''' cwd < "$tmp" - [ -n "$cwd" ] && [ "$cwd" != "$PWD" ] && builtin cd -- "$cwd" - rm -f -- "$tmp" - } + # yazi wrapper!!! + function yazi() { + local tmp="$(mktemp -p "/run/user/$UID" -t "yazi-cwd.XXXXXX")" cwd + command yazi "$@" --cwd-file="$tmp" + IFS= read -r -d ''' cwd < "$tmp" + [ -n "$cwd" ] && [ "$cwd" != "$PWD" ] && builtin cd -- "$cwd" + rm -f -- "$tmp" + } - hyfetch # oh i'm so gay!! :3 + hyfetch # oh i'm so gay!! :3 ''; shellAliases = { @@ -87,4 +83,3 @@ in theme = "agnoster"; }; } - diff --git a/homes/modules/themeing/hellwal/hellwal.nix b/homes/modules/themeing/hellwal/hellwal.nix index 4c0d191..4fcf069 100644 --- a/homes/modules/themeing/hellwal/hellwal.nix +++ b/homes/modules/themeing/hellwal/hellwal.nix @@ -1,20 +1,16 @@ -{ config, inputs, lib, pkgs, ... }: -let - unstable = inputs.nixpkgs-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system}; -in -{ - home.packages = with pkgs; [ +{upkgs, ...}: { + home.packages = with upkgs; [ hellwal ]; # writes ./wallust.toml to ~/.config/hellwal/wallust.toml #xdg.configFile."wallust/wallust.toml" = { - #source = ./wallust.toml; + #source = ./wallust.toml; #}; # writes ./templates to ~/.config/hellwal/templates #xdg.configFile."hellwal/templates" = { - #recursive = true; - #source = ./templates; + #recursive = true; + #source = ./templates; #}; } diff --git a/homes/modules/themeing/wallust/wallust.nix b/homes/modules/themeing/wallust/wallust.nix index 207c4ef..0b92fa3 100644 --- a/homes/modules/themeing/wallust/wallust.nix +++ b/homes/modules/themeing/wallust/wallust.nix @@ -1,9 +1,5 @@ -{ config, inputs, lib, pkgs, ... }: -let - unstable = inputs.nixpkgs-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system}; -in -{ - home.packages = with pkgs; [ +{upkgs, ...}: { + home.packages = with upkgs; [ wallust ]; diff --git a/homes/modules/wm/hyprland/hyprland.nix b/homes/modules/wm/hyprland/hyprland.nix index 48c670e..aff785f 100644 --- a/homes/modules/wm/hyprland/hyprland.nix +++ b/homes/modules/wm/hyprland/hyprland.nix @@ -1,9 +1,4 @@ -{ config, inputs, pkgs, ... }: -let - unstable = inputs.nixpkgs-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system}; - hyprland-git = inputs.hyprland-git.packages.${pkgs.stdenv.hostPlatform.system}; -in -{ +{...}: { wayland.windowManager.hyprland = { enable = true; package = null; @@ -37,44 +32,44 @@ in # startup programs exec-once = [ - "waybar" - "awww-daemon" + "waybar" + "awww-daemon" - "wl-paste --type text --watch cliphist store" - "wl-paste --type image --watch cliphist store" - "wl-clip-persist --clipboard regular" + "wl-paste --type text --watch cliphist store" + "wl-paste --type image --watch cliphist store" + "wl-clip-persist --clipboard regular" - "playerctld daemon" + "playerctld daemon" # swaps around the 3rd and 4th workspace because they always start - # in the wrong order - "hyprctl dispatch workspace 4 && hyprctl dispatch workspace 5 && hyprctl dispatch workspace 3 && hyprctl dispatch workspace 4 && hyprctl dispatch workspace 5 && hyprctl dispatch workspace 3 && hyprctl dispatch workspace 1" + # in the wrong order + "hyprctl dispatch workspace 4 && hyprctl dispatch workspace 5 && hyprctl dispatch workspace 3 && hyprctl dispatch workspace 4 && hyprctl dispatch workspace 5 && hyprctl dispatch workspace 3 && hyprctl dispatch workspace 1" ]; # monitor configuration monitor = [ - # note: display stream compression pending for open source - # amd gpu driver and my monitor (VG279QM) only supports DP 1.2 - # so no >240hz atm - "DP-2, 1920x1080@239.76, 0x0, 1" # main monitor - "DP-3, 1920x1080@143.61, 1920x0, 1" # second monitor - "HDMI-A-2, 2560x1440@59.95, 3840x0, 1" # third monitor (drawing tablet) - "HDMI-A-1, 1920x1080@60.00, -1920x0, 1" # tv + # note: display stream compression pending for open source + # amd gpu driver and my monitor (VG279QM) only supports DP 1.2 + # so no >240hz atm + "DP-2, 1920x1080@239.76, 0x0, 1" # main monitor + "DP-3, 1920x1080@143.61, 1920x0, 1" # second monitor + "HDMI-A-2, 2560x1440@59.95, 3840x0, 1" # third monitor (drawing tablet) + "HDMI-A-1, 1920x1080@60.00, -1920x0, 1" # tv ]; general = { - gaps_in = 5; - gaps_out = "0, 10, 10, 10"; - border_size = 2; - layout = "dwindle"; + gaps_in = 5; + gaps_out = "0, 10, 10, 10"; + border_size = 2; + layout = "dwindle"; }; plugin = { - # options at https://github.com/hyprwm/hyprland-plugins/tree/main/hyprscrolling - hyprscrolling = { - fullscreen_on_one_column = false; - column_width = 1.0; - }; + # options at https://github.com/hyprwm/hyprland-plugins/tree/main/hyprscrolling + hyprscrolling = { + fullscreen_on_one_column = false; + column_width = 1.0; + }; }; dwindle = { @@ -82,23 +77,23 @@ in }; decoration = { - rounding = 8; - - active_opacity = 1.00; - inactive_opacity = 1.00; + rounding = 8; - blur = { - xray = true; - size = 6; - passes = 2; - #vibrancy = 0.3; - special = true; - }; + active_opacity = 1.00; + inactive_opacity = 1.00; + + blur = { + xray = true; + size = 6; + passes = 2; + #vibrancy = 0.3; + special = true; + }; }; bezier = [ "workspace_curve, 0.56,0.19,0.24,0.58" - "workspace_in_curve, 0.56,0.19,0.56,0.99" + "workspace_in_curve, 0.56,0.19,0.56,0.99" ]; animation = [ @@ -109,11 +104,11 @@ in input = { repeat_rate = 50; - repeat_delay = 300; + repeat_delay = 300; - sensitivity = 0; # 0 = no modification - accel_profile = "flat"; - force_no_accel = false; # not recommended to turn on + sensitivity = 0; # 0 = no modification + accel_profile = "flat"; + force_no_accel = false; # not recommended to turn on }; cursor.no_hardware_cursors = true; @@ -125,66 +120,66 @@ in # bindings bind = [ - # binds for applications - "$mod, t, exec, $terminal" - "$mod, r, exec, $browser" - "$mod, e, exec, $explorer" + # binds for applications + "$mod, t, exec, $terminal" + "$mod, r, exec, $browser" + "$mod, e, exec, $explorer" - # binds for rofi - "$mod, d, exec, pkill -x rofi || rofi -show drun -show-icons" - "alt, tab, exec, pkill -x rofi || rofi -modi window -show window -show-icons" - "$mod, v, exec, pkill -x rofi || cliphist list | rofi -dmenu | cliphist decode | wl-copy" + # binds for rofi + "$mod, d, exec, pkill -x rofi || rofi -show drun -show-icons" + "alt, tab, exec, pkill -x rofi || rofi -modi window -show window -show-icons" + "$mod, v, exec, pkill -x rofi || cliphist list | rofi -dmenu | cliphist decode | wl-copy" - # screenshots - # todo: add active monitor - "$mod, s, exec, grim -g \"\$(slurp -d)\" - | wl-copy" # region - "$mod+alt, s, exec, grim -g \"\$(slurp -o)\" - | wl-copy" # monitor - "$mod+ctrl, s, exec, grim - | wl-copy" # all monitors + # screenshots + # todo: add active monitor + "$mod, s, exec, grim -g \"\$(slurp -d)\" - | wl-copy" # region + "$mod+alt, s, exec, grim -g \"\$(slurp -o)\" - | wl-copy" # monitor + "$mod+ctrl, s, exec, grim - | wl-copy" # all monitors - # hyprpicker - "$mod, n, exec, hyprpicker -v" - # hyprlock - "$mod+alt, y, exec, hyprlock" - # task manager - "$mod+ctrl, escape, exec, task-manager.sh" - "$mod+ctrl, grave, exec, task-manager.sh" + # hyprpicker + "$mod, n, exec, hyprpicker -v" + # hyprlock + "$mod+alt, y, exec, hyprlock" + # task manager + "$mod+ctrl, escape, exec, task-manager.sh" + "$mod+ctrl, grave, exec, task-manager.sh" - # media binds (more in binde below) - ", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" - ", XF86AudioPlay, exec, playerctl play-pause" - ", XF86AudioNext, exec, playerctl next" - ", XF86AudioPrev, exec, playerctl previous" - "Shift_R, XF86AudioPlay, exec, playerctl shuffle toggle" - "Shift_R, XF86AudioNext, exec, playerctl loop track" + # media binds (more in binde below) + ", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" + ", XF86AudioPlay, exec, playerctl play-pause" + ", XF86AudioNext, exec, playerctl next" + ", XF86AudioPrev, exec, playerctl previous" + "Shift_R, XF86AudioPlay, exec, playerctl shuffle toggle" + "Shift_R, XF86AudioNext, exec, playerctl loop track" # manage windows / session - "$mod+alt, c, killactive" - "$mod, f, fullscreen" - "$mod, x, togglefloating" - "$mod, i, togglesplit" - "$mod+Alt, Delete, exit" # exit hyprland + "$mod+alt, c, killactive" + "$mod, f, fullscreen" + "$mod, x, togglefloating" + "$mod, i, togglesplit" + "$mod+Alt, Delete, exit" # exit hyprland # move focus - "$mod, h, movefocus, l" - "$mod, j, movefocus, d" - "$mod, k, movefocus, u" - "$mod, l, movefocus, r" + "$mod, h, movefocus, l" + "$mod, j, movefocus, d" + "$mod, k, movefocus, u" + "$mod, l, movefocus, r" # move window - "$mod+alt, h, movewindow, l" - "$mod+alt, j, movewindow, d" - "$mod+alt, k, movewindow, u" - "$mod+alt, l, movewindow, r" + "$mod+alt, h, movewindow, l" + "$mod+alt, j, movewindow, d" + "$mod+alt, k, movewindow, u" + "$mod+alt, l, movewindow, r" # swap window - "$mod+ctrl, h, swapwindow, l" - "$mod+ctrl, j, swapwindow, d" - "$mod+ctrl, k, swapwindow, u" - "$mod+ctrl, l, swapwindow, r" + "$mod+ctrl, h, swapwindow, l" + "$mod+ctrl, j, swapwindow, d" + "$mod+ctrl, k, swapwindow, u" + "$mod+ctrl, l, swapwindow, r" - # move column (hyprscrolling) - "$mod, period, layoutmsg, move +col" - "$mod, comma, layoutmsg, move -col" + # move column (hyprscrolling) + "$mod, period, layoutmsg, move +col" + "$mod, comma, layoutmsg, move -col" # focus monitor #"$mod+Ctrl+Tab, 1, focusmonitor, DP-2" @@ -192,94 +187,94 @@ in #"$mod+Ctrl+Tab, 3, focusmonitor, HDMI-A-2" #"$mod+Ctrl+Tab, 4, focusmonitor, HDMI-A-1" - # move workspace to monitor + # move workspace to monitor #"$mod+Tab, 1, movecurrentworkspacetomonitor, DP-2" #"$mod+Tab, 2, movecurrentworkspacetomonitor, DP-3" #"$mod+Tab, 3, movecurrentworkspacetomonitor, HDMI-A-2" #"$mod+Tab, 4, movecurrentworkspacetomonitor, HDMI-A-1" - - # special workspace - "$mod, escape, togglespecialworkspace" - "$mod+shift, escape, movetoworkspace, special" - "$mod+alt, escape, movetoworkspacesilent, special" - "$mod, grave, togglespecialworkspace" - "$mod+shift, grave, movetoworkspace, special" - "$mod+alt, grave, movetoworkspacesilent, special" + + # special workspace + "$mod, escape, togglespecialworkspace" + "$mod+shift, escape, movetoworkspace, special" + "$mod+alt, escape, movetoworkspacesilent, special" + "$mod, grave, togglespecialworkspace" + "$mod+shift, grave, movetoworkspace, special" + "$mod+alt, grave, movetoworkspacesilent, special" # switch workspaces - "$mod, 1, workspace, 1" - "$mod, 2, workspace, 2" - "$mod, 3, workspace, 3" - "$mod, 4, workspace, 4" - "$mod, 5, workspace, 5" - "$mod, 6, workspace, 6" - "$mod, 7, workspace, 7" - "$mod, 8, workspace, 8" - "$mod, 9, workspace, 9" - "$mod, 0, workspace, 10" - "$mod, minus, workspace, 11" - "$mod, equal, workspace, 12" + "$mod, 1, workspace, 1" + "$mod, 2, workspace, 2" + "$mod, 3, workspace, 3" + "$mod, 4, workspace, 4" + "$mod, 5, workspace, 5" + "$mod, 6, workspace, 6" + "$mod, 7, workspace, 7" + "$mod, 8, workspace, 8" + "$mod, 9, workspace, 9" + "$mod, 0, workspace, 10" + "$mod, minus, workspace, 11" + "$mod, equal, workspace, 12" # move focused window to workspace - "$mod+shift, 1, movetoworkspace, 1" - "$mod+shift, 2, movetoworkspace, 2" - "$mod+shift, 3, movetoworkspace, 3" - "$mod+shift, 4, movetoworkspace, 4" - "$mod+shift, 5, movetoworkspace, 5" - "$mod+shift, 6, movetoworkspace, 6" - "$mod+shift, 7, movetoworkspace, 7" - "$mod+shift, 8, movetoworkspace, 8" - "$mod+shift, 9, movetoworkspace, 9" - "$mod+shift, 0, movetoworkspace, 10" - "$mod+shift, minus, movetoworkspace, 11" - "$mod+shift, equal, movetoworkspace, 12" + "$mod+shift, 1, movetoworkspace, 1" + "$mod+shift, 2, movetoworkspace, 2" + "$mod+shift, 3, movetoworkspace, 3" + "$mod+shift, 4, movetoworkspace, 4" + "$mod+shift, 5, movetoworkspace, 5" + "$mod+shift, 6, movetoworkspace, 6" + "$mod+shift, 7, movetoworkspace, 7" + "$mod+shift, 8, movetoworkspace, 8" + "$mod+shift, 9, movetoworkspace, 9" + "$mod+shift, 0, movetoworkspace, 10" + "$mod+shift, minus, movetoworkspace, 11" + "$mod+shift, equal, movetoworkspace, 12" # move focused window to workspace silently - "$mod+alt, 1, movetoworkspacesilent, 1" - "$mod+alt, 2, movetoworkspacesilent, 2" - "$mod+alt, 3, movetoworkspacesilent, 3" - "$mod+alt, 4, movetoworkspacesilent, 4" - "$mod+alt, 5, movetoworkspacesilent, 5" - "$mod+alt, 6, movetoworkspacesilent, 6" - "$mod+alt, 7, movetoworkspacesilent, 7" - "$mod+alt, 8, movetoworkspacesilent, 8" - "$mod+alt, 9, movetoworkspacesilent, 9" - "$mod+alt, 0, movetoworkspacesilent, 10" - "$mod+alt, minus, movetoworkspacesilent, 11" - "$mod+alt, equal, movetoworkspacesilent, 12" + "$mod+alt, 1, movetoworkspacesilent, 1" + "$mod+alt, 2, movetoworkspacesilent, 2" + "$mod+alt, 3, movetoworkspacesilent, 3" + "$mod+alt, 4, movetoworkspacesilent, 4" + "$mod+alt, 5, movetoworkspacesilent, 5" + "$mod+alt, 6, movetoworkspacesilent, 6" + "$mod+alt, 7, movetoworkspacesilent, 7" + "$mod+alt, 8, movetoworkspacesilent, 8" + "$mod+alt, 9, movetoworkspacesilent, 9" + "$mod+alt, 0, movetoworkspacesilent, 10" + "$mod+alt, minus, movetoworkspacesilent, 11" + "$mod+alt, equal, movetoworkspacesilent, 12" - # move current workspace to monitor - "$mod+shift+alt, 1, movecurrentworkspacetomonitor, DP-2" - "$mod+shift+alt, 2, movecurrentworkspacetomonitor, DP-3" - "$mod+shift+alt, 3, movecurrentworkspacetomonitor, HDMI-A-2" - "$mod+shift+alt, 4, movecurrentworkspacetomonitor, HDMI-A-1" + # move current workspace to monitor + "$mod+shift+alt, 1, movecurrentworkspacetomonitor, DP-2" + "$mod+shift+alt, 2, movecurrentworkspacetomonitor, DP-3" + "$mod+shift+alt, 3, movecurrentworkspacetomonitor, HDMI-A-2" + "$mod+shift+alt, 4, movecurrentworkspacetomonitor, HDMI-A-1" ]; # bindings for mouse bindm = [ - "$mod, mouse:272, movewindow" # left click - "$mod, mouse:273, resizewindow" # right click + "$mod, mouse:272, movewindow" # left click + "$mod, mouse:273, resizewindow" # right click ]; # repeating binds, repeats when held binde = [ ", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+" ", XF86AudioLowerVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%-" - "Shift_R, XF86AudioRaiseVolume, exec, playerctl volume 0.05+" - "Shift_R, XF86AudioLowerVolume, exec, playerctl volume 0.05-" + "Shift_R, XF86AudioRaiseVolume, exec, playerctl volume 0.05+" + "Shift_R, XF86AudioLowerVolume, exec, playerctl volume 0.05-" # resize window - # variable for `resizeactive` is (x, y) - # starting at 0, 0 in the top left - # meaning: - # -x = left - # +x = right - # -y = up - # +y = down - "$mod+ctrl+shift, h, resizeactive, -10 0" - "$mod+ctrl+shift, j, resizeactive, 0 10" - "$mod+ctrl+shift, k, resizeactive, 0 -10" - "$mod+ctrl+shift, l, resizeactive, 10 0" + # variable for `resizeactive` is (x, y) + # starting at 0, 0 in the top left + # meaning: + # -x = left + # +x = right + # -y = up + # +y = down + "$mod+ctrl+shift, h, resizeactive, -10 0" + "$mod+ctrl+shift, j, resizeactive, 0 10" + "$mod+ctrl+shift, k, resizeactive, 0 -10" + "$mod+ctrl+shift, l, resizeactive, 10 0" ]; layerrule = [ @@ -295,14 +290,14 @@ in ]; env = [ - "EDITOR,auravim" + "EDITOR,auravim" - "XCURSOR_THEME,Bunny (Icy) and Strawberries" - "XCURSOR_SIZE,24" - "HYPRCURSOR_THEME,Bunny (Icy) and Strawberries" - "HYPRCURSOR_SIZE,24" + "XCURSOR_THEME,Bunny (Icy) and Strawberries" + "XCURSOR_SIZE,24" + "HYPRCURSOR_THEME,Bunny (Icy) and Strawberries" + "HYPRCURSOR_SIZE,24" - "QT_QPA_PLATFORM,wayland" + "QT_QPA_PLATFORM,wayland" ]; }; }; diff --git a/homes/modules/wm/river.nix b/homes/modules/wm/river.nix index 5c96740..3fac1a0 100644 --- a/homes/modules/wm/river.nix +++ b/homes/modules/wm/river.nix @@ -1,14 +1,10 @@ -{ config, inputs, pkgs, upkgs, ... }: -let - unstable = inputs.nixpkgs-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system}; -in -{ +{spkgs, ...}: { wayland.windowManager.river = let layout = "rivertile"; in { - enable = true; - xwayland.enable = true; - package = upkgs.river-classic; # FIX: using upkgs version as zls is broken rn ;-; + enable = true; + xwayland.enable = true; + package = spkgs.river-classic; # FIX: using spkgs version as zls is broken rn ;-; settings = let main = "Super"; @@ -22,61 +18,61 @@ in border-width = 1; spawn = [ - ''${layout}'' + ''${layout}'' - "awww-daemon" - "waybar" + "awww-daemon" + "waybar" ]; map.normal = { - "${main} C" = "close"; # close focused window - "${main}+Alt Delete" = "exit"; # exit river + "${main} C" = "close"; # close focused window + "${main}+Alt Delete" = "exit"; # exit river - # app launcher - "${main} D" = ''spawn "pkill -x rofi || rofi -show drun -show-icons"''; - "Alt Tab" = ''spawn "pkill -x rofi || rofi -modi window -show window -show-icons"''; + # app launcher + "${main} D" = ''spawn "pkill -x rofi || rofi -show drun -show-icons"''; + "Alt Tab" = ''spawn "pkill -x rofi || rofi -modi window -show window -show-icons"''; # spawn applications - "${main} T" = ''spawn "${terminal}"''; - "${main} R" = ''spawn "${browser}"''; + "${main} T" = ''spawn "${terminal}"''; + "${main} R" = ''spawn "${browser}"''; # move focused view to top of layout stack - "${main} N" = ''zoom''; + "${main} N" = ''zoom''; # focus next/previous view - "${main} J" = "focus-view previous"; - "${main} K" = "focus-view next"; - # move to next/previous output - "${main} H" = "focus-output previous"; - "${main} L" = "focus-output next"; + "${main} J" = "focus-view previous"; + "${main} K" = "focus-view next"; + # move to next/previous output + "${main} H" = "focus-output previous"; + "${main} L" = "focus-output next"; # swap next/previous view - "${main}+Alt J" = "swap previous"; - "${main}+Alt K" = "swap next"; - # send view to next/previous output - # and switch to that output (wip) - "${main}+Alt H" = "send-to-output previous"; - #"${main}+Alt H" = "focus-output previous"; - "${main}+Alt L" = "send-to-output next"; - #"${main}+Alt L" = "focus-output next"; + "${main}+Alt J" = "swap previous"; + "${main}+Alt K" = "swap next"; + # send view to next/previous output + # and switch to that output (wip) + "${main}+Alt H" = "send-to-output previous"; + #"${main}+Alt H" = "focus-output previous"; + "${main}+Alt L" = "send-to-output next"; + #"${main}+Alt L" = "focus-output next"; # move views - #"${main}+Alt H" = "move left 100"; - #"${main}+Alt J" = "move down 100"; - #"${main}+Alt K" = "move up 100"; - #"${main}+Alt L" = "move right 100"; + #"${main}+Alt H" = "move left 100"; + #"${main}+Alt J" = "move down 100"; + #"${main}+Alt K" = "move up 100"; + #"${main}+Alt L" = "move right 100"; # snap views - #"${main}+Control H" = "snap left"; - #"${main}+Control J" = "snap down"; - #"${main}+Control K" = "snap up"; - #"${main}+Control L" = "snap right"; + #"${main}+Control H" = "snap left"; + #"${main}+Control J" = "snap down"; + #"${main}+Control K" = "snap up"; + #"${main}+Control L" = "snap right"; # resize views - #"${main}+Shift H" = "resize horizontal -100"; - #"${main}+Shift J" = "resize vertical -100"; - #"${main}+Shift K" = "resize vertical 100"; - #"${main}+Shift L" = "resize horizontal 100"; + #"${main}+Shift H" = "resize horizontal -100"; + #"${main}+Shift J" = "resize vertical -100"; + #"${main}+Shift K" = "resize vertical 100"; + #"${main}+Shift L" = "resize horizontal 100"; }; }; }; diff --git a/homes/modules/wm/sway.nix b/homes/modules/wm/sway.nix index c5dd3be..36db54e 100644 --- a/homes/modules/wm/sway.nix +++ b/homes/modules/wm/sway.nix @@ -1,8 +1,4 @@ -{ config, inputs, pkgs, ... }: -let - unstable = inputs.nixpkgs-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system}; -in -{ +{config, ...}: { wayland.windowManager.sway = { enable = true; config = rec { @@ -10,43 +6,43 @@ in terminal = "kitty"; # disable sway bar - bars = [ ]; + bars = []; # set border colors #colors = { - #focused = + #focused = startup = [ - { command = "awww-daemon"; } - { command = "waybar"; } + {command = "awww-daemon";} + {command = "waybar";} ]; keybindings = let - main = config.wayland.windowManager.sway.config.modifier; - terminal = config.wayland.windowManager.sway.config.terminal; - browser = "firefox"; + main = config.wayland.windowManager.sway.config.modifier; + terminal = config.wayland.windowManager.sway.config.terminal; + browser = "firefox"; in { - "${main}+c" = "kill"; # close focused window - "${main}+Alt+Delete" = "exit"; # exit sway + "${main}+c" = "kill"; # close focused window + "${main}+Alt+Delete" = "exit"; # exit sway # open launcher "${main}+d" = "exec pkill -x rofi || rofi -show drun -show-icons"; "Alt+Tab" = "exec pkill -x rofi || rofi -modi window -show window -show-icons"; - "${main}+t" = "exec ${terminal}"; # open terminal - "${main}+r" = "exec ${browser}"; # open browser + "${main}+t" = "exec ${terminal}"; # open terminal + "${main}+r" = "exec ${browser}"; # open browser # move focus - "${main}+h" = "focus left"; - "${main}+j" = "focus down"; - "${main}+k" = "focus up"; - "${main}+l" = "focus right"; + "${main}+h" = "focus left"; + "${main}+j" = "focus down"; + "${main}+k" = "focus up"; + "${main}+l" = "focus right"; # move focused window - "${main}+Alt+h" = "move left"; - "${main}+Alt+j" = "move down"; - "${main}+Alt+k" = "move up"; - "${main}+Alt+l" = "move right"; + "${main}+Alt+h" = "move left"; + "${main}+Alt+j" = "move down"; + "${main}+Alt+k" = "move up"; + "${main}+Alt+l" = "move right"; }; }; }; diff --git a/hosts/nixarawrui/default.nix b/hosts/nixarawrui/default.nix index c3d5c29..e51ce7e 100644 --- a/hosts/nixarawrui/default.nix +++ b/hosts/nixarawrui/default.nix @@ -1,12 +1,10 @@ { inputs, - pkgs, upkgs, + spkgs, root, ... -}: let - hyprland-git = inputs.hyprland-git.packages.${pkgs.stdenv.hostPlatform.system}; -in { +}: { imports = [ ./hardware-configuration.nix @@ -19,8 +17,6 @@ in { download-buffer-size = 524288000; }; - nixpkgs.config.allowUnfree = true; - # Use the systemd-boot EFI boot loader. boot = rec { initrd.kernelModules = ["amdgpu"]; @@ -30,8 +26,8 @@ in { efi.canTouchEfiVariables = true; }; - # kernelPackages = pkgs.cachyosKernels.linuxPackages-cachyos-latest-lto-x86_64-v4; - kernelPackages = pkgs.linuxPackages_latest; + # kernelPackages = upkgs.cachyosKernels.linuxPackages-cachyos-latest-lto-x86_64-v4; + kernelPackages = upkgs.linuxPackages_latest; kernelModules = ["v4l2loopback"]; extraModulePackages = with kernelPackages; [v4l2loopback]; @@ -107,7 +103,7 @@ in { enable = true; }; - extraPortals = with pkgs; [ + extraPortals = with upkgs; [ xdg-desktop-portal-termfilechooser ]; @@ -134,7 +130,7 @@ in { enable = true; enable32Bit = true; - extraPackages = with pkgs; [ + extraPackages = with upkgs; [ libva-vdpau-driver libvdpau-va-gl ]; @@ -165,7 +161,7 @@ in { udev = { enable = true; - packages = with pkgs; [ + packages = with upkgs; [ # adds via support for keyboards and stuffs :3 (needs reboot) via @@ -208,9 +204,9 @@ in { uid = 1000; extraGroups = ["wheel" "disk" "input" "video" "audio" "networkmanager" "games"]; - shell = pkgs.zsh; + shell = upkgs.zsh; - packages = with pkgs; [ + packages = with upkgs; [ flatpak tree ]; @@ -220,14 +216,6 @@ in { }; }; - home-manager = { - useGlobalPkgs = true; - useUserPackages = true; - - users.aurora = import ../../homes/aurora; - extraSpecialArgs = {inherit inputs upkgs root;}; - }; - programs = { # nix-ld runs unpatched dynamic binaries on nixos :3 nix-ld.enable = true; @@ -251,12 +239,12 @@ in { # to work properly on hyprland hyprland = { enable = true; - package = hyprland-git.hyprland; - portalPackage = hyprland-git.xdg-desktop-portal-hyprland; + package = upkgs.hyprland-git.hyprland; + portalPackage = upkgs.hyprland-git.xdg-desktop-portal-hyprland; }; river-classic = { - package = upkgs.river-classic; # FIX: using upkgs version as zls is broken rn ;-; + package = spkgs.river-classic; # FIX: using spkgs version as zls is broken rn ;-; enable = true; }; @@ -268,7 +256,7 @@ in { # steam has to be enabled here steam = { enable = true; - package = pkgs.millennium-steam; + package = upkgs.millennium-steam; remotePlay.openFirewall = true; dedicatedServer.openFirewall = true; localNetworkGameTransfers.openFirewall = true; @@ -277,7 +265,7 @@ in { alvr = { enable = true; - package = upkgs.alvr; + package = spkgs.alvr; openFirewall = true; }; @@ -300,7 +288,7 @@ in { # List packages installed in system profile. To search, run: # $ nix search wget - environment.systemPackages = with pkgs; [ + environment.systemPackages = with upkgs; [ # linux packages!!! linuxPackages.v4l2loopback @@ -325,17 +313,17 @@ in { # waydroid needs it apparently for clipboard sharing?? wl-clipboard (waydroid.override { - python3Packages = pkgs.python312Packages; + python3Packages = upkgs.python312Packages; }) # game stuff :3 (lutris.override { - extraPkgs = pkgs: [ + extraupkgs = upkgs: [ libadwaita ]; }) (steam.override { - extraPkgs = pkgs: [ + extraupkgs = upkgs: [ nss xorg.libX11 xorg.libXScrnSaver @@ -356,7 +344,7 @@ in { # Most users should NEVER change this value after the initial install, for any reason, # even if you've upgraded your system to a new NixOS release. # - # This value does NOT affect the Nixpkgs version your packages and OS are pulled from, + # This value does NOT affect the Nixupkgs version your packages and OS are pulled from, # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how # to actually do that. # diff --git a/hosts/nixarawrui/hardware-configuration.nix b/hosts/nixarawrui/hardware-configuration.nix index fb2aef7..664301b 100644 --- a/hosts/nixarawrui/hardware-configuration.nix +++ b/hosts/nixarawrui/hardware-configuration.nix @@ -1,55 +1,58 @@ # Do not modify this file! It was generated by ‘nixos-generate-config’ # and may be overwritten by future invocations. Please make changes # to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - { - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; + config, + lib, + modulesPath, + ... +}: { + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; + boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-amd"]; + boot.extraModulePackages = []; - fileSystems."/" = - { device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; - fsType = "btrfs"; - options = [ "subvol=@" ]; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; + fsType = "btrfs"; + options = ["subvol=@"]; + }; - fileSystems."/home" = - { device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; - fsType = "btrfs"; - options = [ "subvol=@home" ]; - }; + fileSystems."/home" = { + device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; + fsType = "btrfs"; + options = ["subvol=@home"]; + }; - fileSystems."/nix" = - { device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; - fsType = "btrfs"; - options = [ "subvol=@nix" ]; - }; + fileSystems."/nix" = { + device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; + fsType = "btrfs"; + options = ["subvol=@nix"]; + }; - fileSystems."/games" = - { device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; - fsType = "btrfs"; - options = [ "subvol=@games" ]; - }; + fileSystems."/games" = { + device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; + fsType = "btrfs"; + options = ["subvol=@games"]; + }; - fileSystems."/data" = - { device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; - fsType = "btrfs"; - options = [ "subvol=@data" ]; - }; + fileSystems."/data" = { + device = "/dev/disk/by-uuid/257dd2c7-59b1-431e-a5a1-c7db00b3312b"; + fsType = "btrfs"; + options = ["subvol=@data"]; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/63DC-1AEB"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/63DC-1AEB"; + fsType = "vfat"; + options = ["fmask=0077" "dmask=0077"]; + }; - swapDevices = [ ]; + swapDevices = []; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking # (the default) this is the recommended approach. When using systemd-networkd it's diff --git a/hosts/nixarawrui/modules/amdgpu-ignore-ctx-privileges.nix b/hosts/nixarawrui/modules/amdgpu-ignore-ctx-privileges.nix index 8498061..3174fb2 100644 --- a/hosts/nixarawrui/modules/amdgpu-ignore-ctx-privileges.nix +++ b/hosts/nixarawrui/modules/amdgpu-ignore-ctx-privileges.nix @@ -1,5 +1,5 @@ { - pkgs, + upkgs, lib, config, ... @@ -12,20 +12,22 @@ in { }; config = lib.mkIf enabled { - nixpkgs.overlays = [ - (self: super: { - amdgpu-ignore-ctx-privileges = super.fetchpatch { - name = "cap_sys_nice_begone.patch"; - url = "https://github.com/Frogging-Family/community-patches/raw/master/linux61-tkg/cap_sys_nice_begone.mypatch"; - hash = "sha256-Y3a0+x2xvHsfLax/uwycdJf3xLxvVfkfDVqjkxNaYEo="; - }; - }) - ]; + nixpkgs.channels.default = { + upkgs.overlays = [ + (self: super: { + amdgpu-ignore-ctx-privileges = super.fetchpatch { + name = "cap_sys_nice_begone.patch"; + url = "https://github.com/Frogging-Family/community-patches/raw/master/linux61-tkg/cap_sys_nice_begone.mypatch"; + hash = "sha256-Y3a0+x2xvHsfLax/uwycdJf3xLxvVfkfDVqjkxNaYEo="; + }; + }) + ]; + }; boot.kernelPatches = [ { name = "amdgpu-ignore-ctx-privileges"; - patch = pkgs.amdgpu-ignore-ctx-privileges; + patch = upkgs.amdgpu-ignore-ctx-privileges; } ]; }; diff --git a/nixpkgs.nix b/nixpkgs.nix new file mode 100644 index 0000000..93f40f4 --- /dev/null +++ b/nixpkgs.nix @@ -0,0 +1,28 @@ +{ + inputs, + system, + ... +}: { + nixpkgs.channels.default = { + # nixpkgs-unstable + upkgs = { + inherit system; + source = inputs.nixpkgs-unstable; + overlays = with inputs; [ + cachyos.overlays.pinned + millennium.overlays.default + + (import ./overlays.nix {inherit inputs;}) + ]; + + config.allowUnfree = true; + }; + # nixpkgs-staging + spkgs = { + inherit system; + source = inputs.nixpkgs-staging; + overlays = []; + config.allowUnfree = true; + }; + }; +} diff --git a/overlays.nix b/overlays.nix index 8d28bdd..30fe392 100644 --- a/overlays.nix +++ b/overlays.nix @@ -1,3 +1,9 @@ +# NOTE: `system` is provided by Cerulean +{ + inputs, + system, + ... +}: [ (self: super: { ekphos = import ../packages/ekphos { pkgs = super; @@ -10,4 +16,7 @@ }) ]; }); + + hyprland-git = inputs.hyprland-git.packages.${system}; }) +] diff --git a/snow.nix b/snow.nix new file mode 100644 index 0000000..af178fa --- /dev/null +++ b/snow.nix @@ -0,0 +1,23 @@ +{cerulean, ...} @ inputs: +cerulean.mkNexus ./. (self: { + nexus = { + specialArgs = {inherit inputs;}; + + extraPkgConfig = { + config.allowUnfree = true; + }; + + extraModules = with inputs; [ + home-manager.nixosModules.home-manager + ]; + + nodes = { + nixarawrui = { + system = "x86_64-linux"; + extraModules = with inputs; [ + sddm-silent.nixosModules.default + ]; + }; + }; + }; +})