{ buildGoModule, fetchFromGitHub, gobject-introspection, gst_all_1, lib, libadwaita, libcanberra-gtk3, pkg-config, sound-theme-freedesktop, libspelling, gtksourceview5, wrapGAppsHook4, }: buildGoModule rec { pname = "dissent"; version = "0.0.35"; src = fetchFromGitHub { owner = "diamondburned"; repo = "dissent"; tag = "v${version}"; hash = "sha256-cmp+oAUV+Oehs/kz6DRW57NgegBWbFVT/7xfY7CbcZM="; }; nativeBuildInputs = [ gobject-introspection pkg-config wrapGAppsHook4 ]; buildInputs = [ # Optional according to upstream but required for sound and video gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good gst_all_1.gst-plugins-ugly gst_all_1.gstreamer libadwaita libcanberra-gtk3 sound-theme-freedesktop # gotk4-spelling fails to build with libspelling >= 0.3.0 # https://github.com/diamondburned/gotk4-spelling/issues/1 libspelling gtksourceview5 ]; postInstall = '' substituteInPlace nix/so.libdb.dissent.service \ --replace-warn "/usr/bin/dissent" "$out/bin/dissent" install -D -m 444 -t $out/share/applications nix/so.libdb.dissent.desktop install -D -m 444 -t $out/share/icons/hicolor/scalable/apps internal/icons/hicolor/scalable/apps/so.libdb.dissent.svg install -D -m 444 -t $out/share/icons/hicolor/symbolic/apps internal/icons/symbolic/apps/so.libdb.dissent-symbolic.svg install -D -m 444 -t $out/share/metainfo so.libdb.dissent.metainfo.xml install -D -m 444 -t $out/share/dbus-1/services nix/so.libdb.dissent.service ''; vendorHash = "sha256-AhzM0wu2wwwG/sDY+r2wgmotK4zA5u6vzq4KoPMLkL0="; meta = { description = "Third-party Discord client designed for a smooth, native experience (formerly gtkcord4)"; homepage = "https://github.com/diamondburned/dissent"; license = with lib.licenses; [ gpl3Plus cc0 ]; mainProgram = "dissent"; maintainers = with lib.maintainers; [ hmenke urandom aleksana ]; }; }