rofi-emoji: Split into v4 and v3 versions

https://github.com/Mange/rofi-emoji/releases/tag/v4.0.0

rofi-emoji now has two branches, one for the stable release of Rofi and
another for the unstable unreleased version of Rofi. A lot of Rofi forks
are based on this unstable branch, which causes some issues for users.

Having the latest release available should be helpful for those users.

The default named `rofi-emoji` version is version 3, which builds
against the current version of the `rofi` pkg.

The other version is exposed as `rofi-emoji-wayland` and is built with
version 4 against the `rofi-wayland` fork.

Other changes:

- Add Mange as maintainer.
- Update 3.4.0 to 3.4.1.
- Stop requiring xsel.
- Only require xclip with X11 support enabled.
- Only require wl-clipboard with Wayland support enabled.
This commit is contained in:
Magnus Bergmark 2024-07-23 23:49:20 +02:00
parent ff60f2ca07
commit 9d67a1f61e
No known key found for this signature in database
GPG Key ID: 0443C69F6F022CDE
3 changed files with 67 additions and 47 deletions

View File

@ -15,61 +15,58 @@
, rofi-unwrapped
, wl-clipboard
, xclip
, xsel
, xdotool
, wtype
}:
stdenv.mkDerivation rec {
pname = "rofi-emoji";
version = "3.4.0";
import ./versions.nix ({ version, hash, patches}:
stdenv.mkDerivation rec {
pname = "rofi-emoji";
inherit version;
src = fetchFromGitHub {
owner = "Mange";
repo = pname;
rev = "v${version}";
hash = "sha256-tF3yAKRUix+if+45rxg5vq83Pu33TQ6oUKWPIs/l4X0=";
};
src = fetchFromGitHub {
owner = "Mange";
repo = "rofi-emoji";
rev = "v${version}";
inherit hash;
};
patches = [
# Look for plugin-related files in $out/lib/rofi
./0001-Patch-plugindir-to-output.patch
];
inherit patches;
postPatch = ''
patchShebangs clipboard-adapter.sh
'';
postPatch = ''
patchShebangs clipboard-adapter.sh
'';
postFixup = ''
chmod +x $out/share/rofi-emoji/clipboard-adapter.sh
wrapProgram $out/share/rofi-emoji/clipboard-adapter.sh \
--prefix PATH ":" ${lib.makeBinPath ([ libnotify wl-clipboard xclip xsel ]
++ lib.optionals waylandSupport [ wtype ]
++ lib.optionals x11Support [ xdotool ])}
'';
postFixup = ''
chmod +x $out/share/rofi-emoji/clipboard-adapter.sh
wrapProgram $out/share/rofi-emoji/clipboard-adapter.sh \
--prefix PATH ":" ${lib.makeBinPath ([ libnotify ]
++ lib.optionals waylandSupport [ wl-clipboard wtype ]
++ lib.optionals x11Support [ xclip xdotool ])}
'';
nativeBuildInputs = [
autoreconfHook
pkg-config
makeWrapper
];
nativeBuildInputs = [
autoreconfHook
pkg-config
makeWrapper
];
buildInputs = [
cairo
glib
libnotify
rofi-unwrapped
wl-clipboard
xclip
xsel
];
buildInputs = [
cairo
glib
libnotify
rofi-unwrapped
]
++ lib.optionals waylandSupport [ wl-clipboard wtype ]
++ lib.optionals x11Support [ xclip ];
meta = with lib; {
description = "Emoji selector plugin for Rofi";
homepage = "https://github.com/Mange/rofi-emoji";
license = licenses.mit;
maintainers = with maintainers; [ cole-h ];
platforms = platforms.linux;
};
}
meta = with lib; {
description = "Emoji selector plugin for Rofi (built against ${rofi-unwrapped.pname})";
homepage = "https://github.com/Mange/rofi-emoji";
license = licenses.mit;
maintainers = with maintainers; [ cole-h Mange ];
platforms = platforms.linux;
};
}
)

View File

@ -0,0 +1,18 @@
generic: {
v4 = generic {
version = "4.0.0";
hash = "sha256-864Mohxfc3EchBKtSNifxy8g8T8YBUQ/H7+8Ti6TiFo=";
patches = [
# Look for plugin-related files in $out/lib/rofi
./0001-Patch-plugindir-to-output.patch
];
};
v3 = generic {
version = "3.4.1";
hash = "sha256-ZHhgYytPB14zj2MS8kChRD+LTqXzHRrz7YIikuQD6i0=";
patches = [
# Look for plugin-related files in $out/lib/rofi
./0001-Patch-plugindir-to-output.patch
];
};
}

View File

@ -32469,7 +32469,12 @@ with pkgs;
rofi-calc = callPackage ../applications/science/math/rofi-calc { };
rofi-emoji = callPackage ../applications/misc/rofi-emoji { };
rofi-emoji = (callPackage ../applications/misc/rofi-emoji { }).v3;
rofi-emoji-wayland = (
callPackage ../applications/misc/rofi-emoji {
rofi-unwrapped = rofi-wayland-unwrapped;
}
).v4;
rofi-file-browser = callPackage ../applications/misc/rofi-file-browser { };