diff --git a/flake.lock b/flake.lock index e76779f..2b98013 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,21 @@ { "nodes": { + "candy-icons": { + "flake": false, + "locked": { + "lastModified": 1717103572, + "narHash": "sha256-LdPoPUxE2v7u6oE8ZrjJWbwGkm1JlmjGKbYDAoU1UGk=", + "ref": "refs/heads/master", + "rev": "ddafbbcae3f0c88ae6f139eaa2f0a7ca278f9395", + "revCount": 1182, + "type": "git", + "url": "https://github.com/EliverLara/candy-icons" + }, + "original": { + "type": "git", + "url": "https://github.com/EliverLara/candy-icons" + } + }, "flake-utils": { "inputs": { "systems": "systems" @@ -20,11 +36,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1711163522, - "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", + "lastModified": 1717786204, + "narHash": "sha256-4q0s6m0GUcN7q+Y2DqD27iLvbcd1G50T2lv08kKxkSI=", "owner": "nixos", "repo": "nixpkgs", - "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", + "rev": "051f920625ab5aabe37c920346e3e69d7d34400e", "type": "github" }, "original": { @@ -36,14 +52,68 @@ }, "root": { "inputs": { + "candy-icons": "candy-icons", "flake-utils": "flake-utils", "nixpkgs": "nixpkgs", + "sweet-ambar-blue": "sweet-ambar-blue", + "sweet-ambar-blue-dark": "sweet-ambar-blue-dark", + "sweet-folders": "sweet-folders", "wallpaper-engine-plasma5-plugin": "wallpaper-engine-plasma5-plugin", "wallpaper-engine-plasma6-plugin": "wallpaper-engine-plasma6-plugin", "yorha-grub-theme": "yorha-grub-theme", "yorha-sound-theme": "yorha-sound-theme" } }, + "sweet-ambar-blue": { + "flake": false, + "locked": { + "lastModified": 1718055658, + "narHash": "sha256-Yt0C3RTpyUH7HkI+Xr+smcU+k9nvAqUbDnd86Vgw7lE=", + "ref": "Ambar-Blue", + "rev": "1c790e61ee1c2530e706fbadafdea258d7985f59", + "revCount": 287, + "type": "git", + "url": "https://github.com/EliverLara/Sweet" + }, + "original": { + "ref": "Ambar-Blue", + "type": "git", + "url": "https://github.com/EliverLara/Sweet" + } + }, + "sweet-ambar-blue-dark": { + "flake": false, + "locked": { + "lastModified": 1718055672, + "narHash": "sha256-bB/SusRmrgXWYFyJrLymMCRqis/MyQ01sAZINtwu0dE=", + "ref": "Ambar-Blue-Dark", + "rev": "63f0cf094a1c2eb8c929c2ba766842dc8991f20f", + "revCount": 370, + "type": "git", + "url": "https://github.com/EliverLara/Sweet" + }, + "original": { + "ref": "Ambar-Blue-Dark", + "type": "git", + "url": "https://github.com/EliverLara/Sweet" + } + }, + "sweet-folders": { + "flake": false, + "locked": { + "lastModified": 1679179505, + "narHash": "sha256-QexfqXH5a1IEhKBRjWSMdrEvThvLRzd4M32Xti1DCGE=", + "ref": "refs/heads/master", + "rev": "b2192ff1412472f036fdf9778c6b9dbcb6c044ec", + "revCount": 14, + "type": "git", + "url": "https://github.com/EliverLara/Sweet-folders" + }, + "original": { + "type": "git", + "url": "https://github.com/EliverLara/Sweet-folders" + } + }, "systems": { "locked": { "lastModified": 1681028828, @@ -121,11 +191,11 @@ "rev": "a1dad2f17c229ec9b98987614cce4de83eed73f9", "revCount": 3, "type": "git", - "url": "https://forgejo.invariantspace.com/macronova/yorha-sound-theme.git" + "url": "https://forgejo.invariantspace.com/macronova/yorha-sound-theme" }, "original": { "type": "git", - "url": "https://forgejo.invariantspace.com/macronova/yorha-sound-theme.git" + "url": "https://forgejo.invariantspace.com/macronova/yorha-sound-theme" } } }, diff --git a/flake.nix b/flake.nix index 55a43aa..4fd7b06 100644 --- a/flake.nix +++ b/flake.nix @@ -4,6 +4,22 @@ inputs = { flake-utils.url = "github:numtide/flake-utils"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; + candy-icons = { + flake = false; + url = "git+https://github.com/EliverLara/candy-icons"; + }; + sweet-ambar-blue = { + flake = false; + url = "git+https://github.com/EliverLara/Sweet?ref=Ambar-Blue"; + }; + sweet-ambar-blue-dark = { + flake = false; + url = "git+https://github.com/EliverLara/Sweet?ref=Ambar-Blue-Dark"; + }; + sweet-folders = { + flake = false; + url = "git+https://github.com/EliverLara/Sweet-folders"; + }; wallpaper-engine-plasma5-plugin = { flake = false; url = "git+https://github.com/catsout/wallpaper-engine-kde-plugin?submodules=1"; @@ -18,7 +34,7 @@ }; yorha-sound-theme = { flake = false; - url = "git+https://forgejo.invariantspace.com/macronova/yorha-sound-theme.git"; + url = "git+https://forgejo.invariantspace.com/macronova/yorha-sound-theme"; }; }; diff --git a/packages/sweet-ambar-blue.nix b/packages/sweet-ambar-blue.nix new file mode 100644 index 0000000..1cd8fb1 --- /dev/null +++ b/packages/sweet-ambar-blue.nix @@ -0,0 +1,69 @@ +{ inputs, name, pkgs }: + +pkgs.stdenv.mkDerivation { + inherit name; + srcs = []; + buildInputs = [ pkgs.jdupes ]; + dontUnpack = true; + preInstall = with inputs; '' + cp -r ${candy-icons}/ candy-icons/ + cp -r ${sweet-ambar-blue}/ sweet-ambar-blue/ + cp -r ${sweet-ambar-blue-dark}/ sweet-ambar-blue-dark/ + cp -r ${sweet-folders}/ sweet-folders/ + chmod -R +w ./ + ''; + installPhase = '' + runHook preInstall + + # Start in theme folder + cd sweet-ambar-blue/ + + # Remove redundant files + rm -rf */.gitignore + rm -rf */Art + rm -rf */FUNDING.yml + rm -rf */LICENSE + rm -rf */README.md + rm -rf */{package.json,package-lock.json,Gulpfile.js} + rm -rf */src + rm -rf */cinnamon/*.scss + rm -rf */gnome-shell/{earlier-versions,extensions,*.scss} + rm -rf */gtk-2.0/{assets.svg,assets.txt,links.fish,render-assets.sh} + rm -rf */gtk-3.0/{apps,widgets,*.scss} + rm -rf */gtk-4.0/{apps,widgets,*.scss} + rm -rf */xfwm4/{assets,render_assets.fish} + + # Adjust KDE relevant folder structure + cd kde/ + mv -v aurorae/ aurorae-temp/ + mkdir aurorae/ + mv -v aurorae-temp/ aurorae/themes/ + mv -v colorschemes/ color-schemes/ + mv -v kvantum/ Kvantum/ + rm -rf plasma/look-and-feel/Sweet-Ambar-Blue/ + mv -v plasma/look-and-feel/Plasma6/Sweet-Ambar-Blue/ plasma/look-and-feel/Sweet-Ambar-Blue/ + mkdir plasma/desktoptheme/ + cp -r plasma/look-and-feel/Sweet-Ambar-Blue/ plasma/desktoptheme/Sweet-Ambar-Blue/ + rm -r plasma/look-and-feel/Plasma6/ + rm -rf plasma/look-and-feel/*/contents/{logout,osd,components} + rm -rf plasma/desktoptheme/*/contents/{defaults,splash,previews} + + mkdir -p $out/share/ + mv * $out/share/ + cd ../ + rm -r kde/ + cp -rv ./ $out/share/themes/ + + # Return to parent folder and move icons + cd ../ + mkdir $out/share/icons/ + mv candy-icons/ $out/share/icons/candy-icons/ + mv sweet-ambar-blue-dark/kde/cursors/Sweet-cursors/ $out/share/icons/Sweet-cursors/ + mv sweet-folders/Sweet-Rainbow/ $out/share/icons/Sweet-Rainbow/ + + # Replace duplicate files with symbolic links to the first file in each set of duplicates + jdupes --quiet --link-soft --recurse $out/share/ + + runHook postInstall + ''; +}