55 lines
1.8 KiB
Nix
55 lines
1.8 KiB
Nix
{
|
|
stdenv,
|
|
lib,
|
|
fetchFromGitLab,
|
|
glib,
|
|
}:
|
|
# We package this manually because upstream stopped updating the package to
|
|
# extensions.gnome.org. See:
|
|
# https://gitlab.com/ente76/guillotine/-/issues/17
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
pname = "gnome-shell-extension-guillotine";
|
|
version = "24";
|
|
|
|
src = fetchFromGitLab {
|
|
owner = "ente76";
|
|
repo = "guillotine";
|
|
rev = "v${finalAttrs.version}";
|
|
hash = "sha256-eNhK3h9luPGXHR3lPkfu/mUN9+ixma64rbCk0cjF4Fc=";
|
|
};
|
|
|
|
nativeBuildInputs = [ glib ];
|
|
|
|
passthru = {
|
|
extensionUuid = "guillotine@fopdoodle.net";
|
|
extensionPortalSlug = "guillotine";
|
|
};
|
|
|
|
buildPhase = ''
|
|
runHook preBuild
|
|
rm schemas/gschemas.compiled
|
|
glib-compile-schemas schemas
|
|
runHook postBuild
|
|
'';
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
mkdir -p $out/share/gnome-shell/extensions/guillotine@fopdoodle.net
|
|
cp -R schemas "$out/share/gnome-shell/extensions/guillotine@fopdoodle.net"
|
|
cp default.json $out/share/gnome-shell/extensions/guillotine@fopdoodle.net
|
|
cp extension.js "$out/share/gnome-shell/extensions/guillotine@fopdoodle.net"
|
|
cp guillotine-symbolic.svg "$out/share/gnome-shell/extensions/guillotine@fopdoodle.net"
|
|
cp LICENSE "$out/share/gnome-shell/extensions/guillotine@fopdoodle.net"
|
|
cp metadata.json "$out/share/gnome-shell/extensions/guillotine@fopdoodle.net"
|
|
cp README.md "$out/share/gnome-shell/extensions/guillotine@fopdoodle.net"
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = {
|
|
description = "A gnome extension designed for efficiently carrying out executions of commands from a customizable menu";
|
|
homepage = "https://gitlab.com/ente76/guillotine/";
|
|
license = lib.licenses.gpl3Plus;
|
|
maintainers = with lib.maintainers; [ husky ];
|
|
platforms = lib.platforms.linux;
|
|
};
|
|
})
|