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