79 lines
1.7 KiB
Nix
79 lines
1.7 KiB
Nix
{
|
|
lib,
|
|
python3Packages,
|
|
wrapGAppsHook4,
|
|
gtk4,
|
|
libadwaita,
|
|
gdk-pixbuf,
|
|
gobject-introspection,
|
|
hicolor-icon-theme,
|
|
desktop-file-utils,
|
|
}:
|
|
|
|
python3Packages.buildPythonApplication (finalAttrs: {
|
|
pname = "nirimod";
|
|
version = "0.1.0";
|
|
|
|
pyproject = true;
|
|
|
|
src = lib.cleanSource ./.;
|
|
# For nixpkgs: replace with fetchFromGitHub pointing to a release tag:
|
|
# src = fetchFromGitHub {
|
|
# owner = "srinivasr";
|
|
# repo = "nirimod";
|
|
# tag = "v${finalAttrs.version}";
|
|
# hash = "sha256-...";
|
|
# };
|
|
|
|
nativeBuildInputs = [
|
|
wrapGAppsHook4
|
|
gobject-introspection
|
|
desktop-file-utils
|
|
];
|
|
|
|
build-system = with python3Packages; [
|
|
hatchling
|
|
];
|
|
|
|
buildInputs = [
|
|
gtk4
|
|
libadwaita
|
|
gdk-pixbuf
|
|
hicolor-icon-theme
|
|
];
|
|
|
|
dependencies = with python3Packages; [
|
|
pygobject3
|
|
];
|
|
|
|
postInstall = ''
|
|
install -Dm644 data/nirimod.svg $out/share/icons/hicolor/scalable/apps/nirimod.svg
|
|
|
|
mkdir -p $out/share/applications
|
|
cat > $out/share/applications/io.github.nirimod.desktop << EOF
|
|
[Desktop Entry]
|
|
Version=1.0
|
|
Name=NiriMod
|
|
GenericName=Compositor Settings
|
|
Comment=GUI Configuration Manager for the Niri Wayland Compositor
|
|
Exec=nirimod
|
|
Icon=nirimod
|
|
Terminal=false
|
|
Type=Application
|
|
Categories=Utility;Settings;DesktopSettings;
|
|
Keywords=compositor;windowmanager;wayland;niri;settings;config;
|
|
StartupNotify=true
|
|
StartupWMClass=nirimod
|
|
EOF
|
|
'';
|
|
|
|
meta = {
|
|
description = "A polished GTK4/libadwaita GUI configurator for the niri Wayland compositor";
|
|
homepage = "https://github.com/srinivasr/nirimod";
|
|
license = lib.licenses.mit;
|
|
maintainers = [ ];
|
|
mainProgram = "nirimod";
|
|
platforms = lib.platforms.linux;
|
|
};
|
|
})
|