{ lib , stdenv , fetchFromGitLab , rustPlatform , desktop-file-utils , appstream-glib , meson , ninja , pkg-config , reuse , m4 , wrapGAppsHook4 , glib , gtk4 , gst_all_1 , libadwaita , dbus }: stdenv.mkDerivation rec { pname = "amberol"; version = "unstable-2023-01-12"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "World"; repo = pname; rev = "0623386c813d0d68564002324958cef7217cec7f"; hash = "sha256-nVL4ydTg4ncDCA9J9qWv+RPDC0Txr/qpo5XxIUiV0zQ="; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; hash = "sha256-E0ivUWD3jP/T1GOJ11grDwcF+m92I+W2a2HhZX1bCso="; }; postPatch = '' patchShebangs build-aux ''; nativeBuildInputs = [ appstream-glib desktop-file-utils meson ninja pkg-config reuse m4 wrapGAppsHook4 ] ++ (with rustPlatform; [ cargoSetupHook rust.cargo rust.rustc ]); buildInputs = [ glib gtk4 libadwaita gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-ugly gst_all_1.gst-libav dbus ]; meta = with lib; { homepage = "https://gitlab.gnome.org/World/amberol"; description = "A small and simple sound and music player"; maintainers = with maintainers; [ linsui ]; license = licenses.gpl3Plus; platforms = platforms.linux; }; }