diff --git a/packages/rounded-blur/default.nix b/packages/rounded-blur/default.nix new file mode 100644 index 0000000..b954815 --- /dev/null +++ b/packages/rounded-blur/default.nix @@ -0,0 +1,89 @@ +{ + lib, + stdenv, + fetchFromGitHub, + meson, + ninja, + pkg-config, + gobject-introspection, + glib, + gnome, + mutter, + cairo, + gsettings-desktop-schemas, + wayland, + libglvnd, + libxfixes, + libxi, + atk, + libxkbcommon, + clutter, + cmake, + gnome-shell, + lcms2, +}: + +stdenv.mkDerivation { + pname = "gnome-rounded-blur"; + version = "unstable-2026-06-11"; + + src = fetchFromGitHub { + owner = "kancko"; + repo = "gnome-rounded-blur"; + # Replace this with a fixed commit. + rev = "master"; + # Run once with lib.fakeHash, then replace with the real hash. + hash = "sha256-hiWQaYydlyIMHKsx49f7sGOLM9ev1g1kdlloUszZU8I="; + }; + + nativeBuildInputs = [ + meson + ninja + pkg-config + gobject-introspection + cmake + ]; + + buildInputs = [ + glib + mutter + cairo + gsettings-desktop-schemas + wayland + libglvnd + libxfixes + libxi + atk + libxkbcommon + clutter + (lib.getDev mutter) + (lib.getLib mutter) + (lib.getDev gnome-shell) + (lib.getLib gnome-shell) + lcms2 # required by mutter-clutter + ]; + postFixup = '' + for libfile in $out/lib/libblur-effect-1.0.so*; do + if [ -f "$libfile" ] && [ ! -L "$libfile" ]; then + patchelf --set-rpath "${ + lib.makeLibraryPath [ + glib + wayland + (lib.getLib mutter) + ] + }:$out/lib" "$libfile" + fi + done + ''; + # The upstream meson file installs: + # - libblur-effect-1.0.so* + # - Blur-1.0.gir + # - Blur-1.0.typelib + # See src/meson.build. + meta = { + description = "Rounded blur GObject library for GNOME Shell extensions"; + homepage = "https://github.com/kancko/gnome-rounded-blur"; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.linux; + }; +} \ No newline at end of file diff --git a/packages/rounded-windows-bms/default.nix b/packages/rounded-windows-bms/default.nix new file mode 100644 index 0000000..fe8a50e --- /dev/null +++ b/packages/rounded-windows-bms/default.nix @@ -0,0 +1,53 @@ +{ + lib, + stdenvNoCC, + fetchFromGitHub, + glib, +}: + +stdenvNoCC.mkDerivation rec { + pname = "rounded-windows-bms"; + version = "2.2.0-bms-fix"; + + src = fetchFromGitHub { + owner = "MeguMario"; + repo = "rounded-windows"; + rev = "bms-fix"; + + # Put a fake hash first; Nix will tell you the real one. + hash = "sha256-5llnqW1dK3jsMRfvxb1VrSkZ/DSXsfU3PiNmpbb5CLw="; + }; + + nativeBuildInputs = [ + glib + ]; + + installPhase = '' + runHook preInstall + + uuid="rounded-windows@marcosgt.github.io" + extension_dir="$out/share/gnome-shell/extensions/$uuid" + + mkdir -p "$extension_dir" + + cp metadata.json extension.js effect.js prefs.js stylesheet.css "$extension_dir/" + + mkdir -p "$extension_dir/schemas" + cp schemas/*.xml "$extension_dir/schemas/" + + glib-compile-schemas "$extension_dir/schemas" + + runHook postInstall + ''; + + passthru = { + extensionUuid = "rounded-windows@marcosgt.github.io"; + }; + + meta = { + description = "Rounded Window Corners GNOME extension with Blur-My-Shell compatibility fix"; + homepage = "https://github.com/MeguMario/rounded-windows/tree/bms-fix"; + license = lib.licenses.gpl3Only; + platforms = lib.platforms.linux; + }; +} \ No newline at end of file