From 1528a9f7605cdfea982f6d450ac82111b74bf070 Mon Sep 17 00:00:00 2001 From: lsoriano-mcm Date: Sat, 9 Aug 2025 08:37:05 -0500 Subject: [PATCH] added oneUI --- flake.lock | 17 +++ flake.nix | 185 +++++++++++++++++++++++++++++++- nix/modules/desktop/desktop.nix | 1 + result | 2 +- 4 files changed, 200 insertions(+), 5 deletions(-) diff --git a/flake.lock b/flake.lock index 2cbdfea9a..d72a0b086 100644 --- a/flake.lock +++ b/flake.lock @@ -369,6 +369,22 @@ "type": "github" } }, + "oneUI": { + "flake": false, + "locked": { + "lastModified": 1745612116, + "narHash": "sha256-VWgITEJQFbPqIbiGDfDeD0R74y9tCKEfjO/M/tcO94M=", + "owner": "end-4", + "repo": "OneUI4-Icons", + "rev": "693095d45c67e6b48a9873e36af6283f05080e66", + "type": "github" + }, + "original": { + "owner": "end-4", + "repo": "OneUI4-Icons", + "type": "github" + } + }, "pre-commit-hooks": { "inputs": { "flake-compat": "flake-compat", @@ -417,6 +433,7 @@ "hyprland": "hyprland", "matugen": "matugen", "nixpkgs": "nixpkgs", + "oneUI": "oneUI", "quickshell": "quickshell" } }, diff --git a/flake.nix b/flake.nix index 1ccb94eca..4fb09fa2f 100644 --- a/flake.nix +++ b/flake.nix @@ -17,6 +17,11 @@ inputs.nixpkgs.follows = "nixpkgs"; # ref = "refs/tags/matugen-v0.10.0"; }; + oneUI = { + url = "github:/end-4/OneUI4-Icons"; + inputs.nixpkgs.follows = "nixpkgs"; + flake = false; + }; }; outputs = { @@ -25,6 +30,7 @@ hyprland, quickshell, matugen, + oneUI, ... }: let supportedSystems = ["x86_64-linux" "aarch64-darwin"]; @@ -56,13 +62,184 @@ ''; dontPatchShebangs = true; }; + iiOneUI4Icons = pkgs.stdenv.mkDerivation rec { + pname = "ii-oneui4-icons"; + version = "r70.55eada4"; + src = oneUI; + installPhase = '' + runHook preInstall + + install -d -m 755 $out/share/icons + cp -dr --no-preserve=mode OneUI $out/share/icons/OneUI + cp -dr --no-preserve=mode OneUI-dark $out/share/icons/OneUI-dark + cp -dr --no-preserve=mode OneUI-light $out/share/icons/OneUI-light + + runHook postInstall + ''; + dontStrip = true; + dontFixup = true; + }; + }); + + # This new output attribute aggregates all packages under a 'default' attribute. + packages = eachSupportedSystem (pkgs: { + default = pkgs.symlinkJoin { + name = "illogical-impulse-packages"; + paths = builtins.attrValues self.legacyPackages.${pkgs.system}; + }; }); devShells = eachSupportedSystem (pkgs: { - default = pkgs.mkShellNoCC { - packages = [ - self.legacyPackages.${pkgs.system}.iiShellConfig - ]; + default = pkgs.mkShell { + packages = with pkgs; + [ + self.legacyPackages.${pkgs.system}.iiShellConfig + ] + # --- Illogical Impulse Audio Dependencies --- + ++ [ + cava + pavucontrol + wireplumber + libdbusmenu-gtk3 + playerctl + ] + # --- Illogical Impulse Backlight Dependencies --- + ++ [ + geoclue2 # FIXME + brightnessctl + ddcutil + ] + # --- Illogical Impulse Basic Dependencies --- + ++ [ + axel + bc + coreutils + cliphist + cmake + curl + rsync + wget + ripgrep + jq + meson + xdg-user-dirs + ] + # --- Illogical Impulse Bibata Dependencies --- + ++ [ + bibata-cursors + ] + # --- Illogical Impulse Fonts and Theming Dependencies --- + ++ [ + # adw-gtk-theme-git + # breeze + # breeze-plus + # darkly-bin + adw-gtk3 #FIXME + darkly + eza + foot + fish + fontconfig + # kde-material-you-colors + kitty + matugen.packages.${pkgs.system}.default + # otf-space-grotesk + starship + # ttf-gabarito-git + nerd-fonts.jetbrains-mono + # ttf-material-symbols-variable-git + # ttf-readex-pro + # ttf-rubik-vf + # ttf-twemoji + ] + # --- Illogical Impulse Hyprland Dependencies --- + ++ [ + hyprland.packages.${pkgs.system}.default + hypridle + hyprcursor + hyprlang + hyprlock + hyprpicker + hyprsunset + hyprutils + hyprwayland-scanner + wl-clipboard + ] + # --- Illogical Impulse KDE Dependencies --- + ++ [ + kdePackages.bluedevil + gnome-keyring + networkmanager + kdePackages.plasma-nm + kdePackages.polkit-kde-agent-1 + kdePackages.dolphin + kdePackages.systemsettings + ] + # TODO + # Microtex + ++ [ + ] + # --- Illogical Impulse OneUI Dependencies --- + ++ [ + self.legacyPackages.${pkgs.system}.iiOneUI4Icons + ] + # --- Illogical Impulse XDG Portal Dependencies --- + ++ [ + xdg-desktop-portal + xdg-desktop-portal-kde + xdg-desktop-portal-gtk + xdg-desktop-portal-hyprland + ] + # --- Illogical Impulse Python Dependencies --- + ++ [ + clang + uv + gtk4 + libadwaita + libsoup_3 + libportal-gtk4 + gobject-introspection + sassc + python3Packages.opencv-python + ] + # --- Illogical Impulse Screencapture Dependencies --- + ++ [ + hyprshot + slurp + swappy + tesseract + # tesseract-data-eng + wf-recorder + ] + # --- Illogical Impulse GTK/Qt Dependencies --- + ++ [ + kdialog + # qt6-5compat + # qt6-avif-image-plugin + # qt6-base + # qt6-declarative + # qt6-imageformats + # qt6-multimedia + # qt6-positioning + # qt6-quicktimeline + # qt6-sensors + # qt6-svg + # qt6-tools + # qt6-translations + # qt6-virtualkeyboard + # qt6-wayland + upower + wtype + ydotool + ] + # --- Illogical Impulse Widget Dependencies --- + ++ [ + quickshell.packages.${pkgs.system}.default + fuzzel + # glib2 + translate-shell + wlogout + ]; }; }); }; diff --git a/nix/modules/desktop/desktop.nix b/nix/modules/desktop/desktop.nix index fcb82ae44..2aa859150 100644 --- a/nix/modules/desktop/desktop.nix +++ b/nix/modules/desktop/desktop.nix @@ -35,6 +35,7 @@ in { environment.systemPackages = [ inputs.quickshell.packages.${pkgs.system}.default inputs.matugen.packages.${pkgs.system}.default + inputs.self.legacyPackages.${pkgs.system}.iiOneUI4Icons ]; environment.etc."skel/.config/quickshell" = { source = "../../../.config/quickshell"; diff --git a/result b/result index 658cb65ad..a9a8c8e53 120000 --- a/result +++ b/result @@ -1 +1 @@ -/nix/store/87n00rqvz62aha1q9xgn8w3gnhibq8xn-ii-shell-config-1.0 \ No newline at end of file +/nix/store/56gx0b9amh21m0wjfb72mzgprsdyyr9a-illogical-impulse-packages \ No newline at end of file