From 2fc6832ef1bc7154445e5a309af22a702fe90f59 Mon Sep 17 00:00:00 2001 From: Justin Garrison Date: Mon, 18 May 2026 21:44:35 -0700 Subject: [PATCH] add more packages and host --- flake.lock | 98 ++++++++++++++++++++++++- flake.nix | 5 +- hosts/x-home.nix | 164 +++++------------------------------------- packages-unstable.txt | 1 + 4 files changed, 117 insertions(+), 151 deletions(-) diff --git a/flake.lock b/flake.lock index 2e3bdf6..50893ee 100644 --- a/flake.lock +++ b/flake.lock @@ -159,13 +159,72 @@ "type": "github" } }, + "nixpkgs_4": { + "locked": { + "lastModified": 1777954456, + "narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "noctalia-qs": { + "inputs": { + "nixpkgs": [ + "noctalia-shell", + "nixpkgs" + ], + "systems": "systems_3", + "treefmt-nix": "treefmt-nix" + }, + "locked": { + "lastModified": 1777773024, + "narHash": "sha256-pLU+KB84A0Jei/vTD6pOS4Ovkmq3QDfPQHg1MlKsRqM=", + "owner": "noctalia-dev", + "repo": "noctalia-qs", + "rev": "d3e26ccd9eecde9139be00caf5dc2d4260fb31ee", + "type": "github" + }, + "original": { + "owner": "noctalia-dev", + "repo": "noctalia-qs", + "type": "github" + } + }, + "noctalia-shell": { + "inputs": { + "nixpkgs": "nixpkgs_4", + "noctalia-qs": "noctalia-qs" + }, + "locked": { + "lastModified": 1778104114, + "narHash": "sha256-+tbqLv7IW5Aem8kGF6cp4n3MtNBcwqmuGlMt6S1kQjs=", + "owner": "noctalia-dev", + "repo": "noctalia-shell", + "rev": "eb2b53ddaa7564f5c93031cbe65cd5b6ef3c12a9", + "type": "github" + }, + "original": { + "owner": "noctalia-dev", + "repo": "noctalia-shell", + "type": "github" + } + }, "root": { "inputs": { "claude-code": "claude-code", "home-manager": "home-manager", "k": "k", "nixpkgs": "nixpkgs_3", - "nixpkgs-unstable": "nixpkgs-unstable" + "nixpkgs-unstable": "nixpkgs-unstable", + "noctalia-shell": "noctalia-shell" } }, "systems": { @@ -197,6 +256,43 @@ "repo": "default", "type": "github" } + }, + "systems_3": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "treefmt-nix": { + "inputs": { + "nixpkgs": [ + "noctalia-shell", + "noctalia-qs", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775636079, + "narHash": "sha256-pc20NRoMdiar8oPQceQT47UUZMBTiMdUuWrYu2obUP0=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "790751ff7fd3801feeaf96d7dc416a8d581265ba", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index a63438b..d1d8e4b 100644 --- a/flake.nix +++ b/flake.nix @@ -6,9 +6,10 @@ home-manager.inputs.nixpkgs.follows = "nixpkgs"; k.url = "github:rothgar/k"; claude-code.url = "github:sadjow/claude-code-nix"; + noctalia-shell.url = "github:noctalia-dev/noctalia-shell"; }; - outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, k, claude-code, ... }: + outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, k, claude-code, noctalia-shell, ... }: let system = "x86_64-linux"; unstablePkgs = import nixpkgs-unstable { inherit system; config.allowUnfree = true; }; @@ -46,7 +47,7 @@ hostname = "x"; hostModule = ./hosts/x.nix; hardwareModule = ./hardware/x.nix; - homeModules = [ ./hosts/x-home.nix ]; + homeModules = [ ./hosts/x-home.nix noctalia-shell.homeModules.default ]; }; }; } diff --git a/hosts/x-home.nix b/hosts/x-home.nix index 30745cf..93da286 100644 --- a/hosts/x-home.nix +++ b/hosts/x-home.nix @@ -1,45 +1,6 @@ -{ pkgs, unstable, ... }: +{ pkgs, ... }: { - services.swayosd = { - enable = true; - package = unstable.swayosd; - stylePath = "${pkgs.writeText "swayosd-style.css" '' - window#osd { - border-radius: 12px; - border: none; - background: rgba(30, 30, 30, 0.9); - } - window#osd #container { - margin: 16px; - } - window#osd image, - window#osd label { - color: white; - } - window#osd progressbar { - min-height: 8px; - min-width: 200px; - border-radius: 999px; - background: transparent; - border: none; - } - window#osd trough { - min-height: inherit; - min-width: inherit; - border-radius: inherit; - border: none; - background: rgba(255, 255, 255, 0.25); - } - window#osd progress { - min-height: inherit; - min-width: 0; - border-radius: inherit; - border: none; - background: white; - } - ''}"; - }; home.packages = [ pkgs.xwayland-satellite @@ -48,7 +9,6 @@ pkgs.playerctl pkgs.iio-sensor-proxy # provides monitor-sensor pkgs.wlogout - pkgs.swaybg ]; xdg.configFile."ghostty/config".text = '' @@ -61,104 +21,13 @@ gesture swipe left 3 niri msg action focus-column-left ''; - xdg.configFile."waybar/config.jsonc".text = '' - { - "layer": "top", - "position": "top", - "height": 30, - "modules-left": ["tray", "idle_inhibitor"], - "modules-center": ["clock"], - "modules-right": ["cpu", "memory", "pulseaudio", "bluetooth", "network", "battery"], - "tray": { - "spacing": 8 - }, - "idle_inhibitor": { - "format": "{icon}", - "format-icons": { - "activated": "󰅶", - "deactivated": "󰾪" - }, - "tooltip": false - }, - "clock": { - "format": "{:%a %b %d %H:%M}" - }, - "cpu": { - "format": "{usage}% ", - "tooltip": false - }, - "memory": { - "format": "{percentage}% ", - "tooltip": false - }, - "pulseaudio": { - "format": "{volume}% {icon}", - "format-muted": "muted 󰝟", - "format-icons": { - "default": ["󰕿", "󰖀", "󰕾"] - }, - "on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle", - "tooltip": false - }, - "bluetooth": { - "format": "{icon}", - "format-icons": { - "enabled": "󰂯", - "disabled": "󰂲" - }, - "format-connected": "󰂱 {device_alias}", - "on-click": "blueman-manager", - "tooltip": false - }, - "network": { - "format-wifi": "{essid} ({signalStrength}%)", - "format-disconnected": "disconnected", - "tooltip": false - }, - "battery": { - "format": "{capacity}% {icon}", - "format-icons": ["󰁺", "󰁼", "󰁾", "󰂀", "󰂂"], - "tooltip": false - } - } - ''; - - xdg.configFile."waybar/style.css".text = '' - * { - font-family: "JetBrainsMono Nerd Font"; - font-size: 13px; - } - window#waybar { - background: rgba(0, 0, 0, 0.7); - color: #ffffff; - } - .modules-right, - .modules-center, - .modules-left { - padding: 0 8px; - } - #tray, - #idle_inhibitor, - #clock, - #cpu, - #memory, - #pulseaudio, - #bluetooth, - #network, - #battery { - padding: 0 10px; - } - #battery.critical { - color: #ff5555; - } - #idle_inhibitor.activated { - color: #ffaa00; - } - #cpu.high, - #memory.critical { - color: #ff5555; - } - ''; + programs.noctalia-shell = { + enable = true; + settings = { + bar.position = "top"; + colorSchemes.darkMode = true; + }; + }; xdg.configFile."niri/config.kdl".text = '' // Niri configuration @@ -204,8 +73,7 @@ } // Spawn at startup - spawn-at-startup "swaybg" "-i" "/home/jgarr/pictures/27021343-mosaic-abstract-wallpapers.jpg" "-m" "fill" - spawn-at-startup "bash" "-c" "sleep 1 && waybar" +spawn-at-startup "bash" "-c" "sleep 1 && noctalia-shell" spawn-at-startup "ghostty" spawn-at-startup "firefox" spawn-at-startup "libinput-gestures" @@ -216,15 +84,15 @@ Mod+Slash { show-hotkey-overlay; } Mod+T hotkey-overlay-title="Open a Terminal: ghostty" { spawn "ghostty"; } - Mod+D hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; } + Mod+D hotkey-overlay-title="Run an Application: noctalia" { spawn "noctalia-shell" "ipc" "call" "launcher" "toggle"; } Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; } Super+Alt+S allow-when-locked=true hotkey-overlay-title=null { spawn-sh "pkill orca || exec orca"; } - XF86AudioRaiseVolume allow-when-locked=true { spawn "swayosd-client" "--output-volume" "raise"; } - XF86AudioLowerVolume allow-when-locked=true { spawn "swayosd-client" "--output-volume" "lower"; } - XF86AudioMute allow-when-locked=true { spawn "swayosd-client" "--output-volume" "mute-toggle"; } - XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; } + XF86AudioRaiseVolume allow-when-locked=true { spawn "noctalia-shell" "ipc" "call" "volume" "increase"; } + XF86AudioLowerVolume allow-when-locked=true { spawn "noctalia-shell" "ipc" "call" "volume" "decrease"; } + XF86AudioMute allow-when-locked=true { spawn "noctalia-shell" "ipc" "call" "volume" "muteOutput"; } + XF86AudioMicMute allow-when-locked=true { spawn "noctalia-shell" "ipc" "call" "volume" "muteInput"; } XF86AudioPlay allow-when-locked=true { spawn "playerctl" "play-pause"; } XF86AudioPause allow-when-locked=true { spawn "playerctl" "play-pause"; } @@ -232,8 +100,8 @@ XF86AudioPrev allow-when-locked=true { spawn "playerctl" "previous"; } XF86AudioNext allow-when-locked=true { spawn "playerctl" "next"; } - XF86MonBrightnessUp allow-when-locked=true { spawn "swayosd-client" "--brightness" "raise"; } - XF86MonBrightnessDown allow-when-locked=true { spawn "swayosd-client" "--brightness" "lower"; } + XF86MonBrightnessUp allow-when-locked=true { spawn "noctalia-shell" "ipc" "call" "brightness" "increase"; } + XF86MonBrightnessDown allow-when-locked=true { spawn "noctalia-shell" "ipc" "call" "brightness" "decrease"; } Mod+O repeat=false { toggle-overview; } diff --git a/packages-unstable.txt b/packages-unstable.txt index 705891b..e63363a 100644 --- a/packages-unstable.txt +++ b/packages-unstable.txt @@ -2,3 +2,4 @@ amp-cli talosctl omnictl +bambu-studio -- 2.51.2