nixos-config/pkgs/flatsync/default.nix

51 lines
1.4 KiB
Nix

{ stdenv, lib, fetchFromGitLab, rustPlatform, cargo, rustc, meson, ninja
, pkg-config, glib, gobject-introspection, libadwaita, wrapGAppsHook4, openssl
, appstream-glib, desktop-file-utils, blueprint-compiler, flatpak }:
stdenv.mkDerivation (finalAttrs: {
pname = "flatsync";
version = "unstable-2024-08-16";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "Cogitri";
repo = "flatsync";
rev = "4ae868217b00d8c7fc9450cdf41eda8d8303508f";
hash = "sha256-ATFJv9XtNuIYrz7gbVt1yFM10wNAbOa/cUeDVjSGrGY=";
};
strictDeps = true;
cargoDeps = rustPlatform.fetchCargoTarball {
name = "${finalAttrs.pname}-${finalAttrs.version}-deps";
inherit (finalAttrs) src;
hash = "sha256-qC/kj0eCrSjFmyDwrqtameYRTajnY8HoQaOxME4zWJI=";
};
nativeBuildInputs = [
appstream-glib
blueprint-compiler
cargo
desktop-file-utils
gobject-introspection
meson
ninja
pkg-config
rustPlatform.cargoSetupHook
rustPlatform.bindgenHook
rustc
wrapGAppsHook4
];
buildInputs = [ glib flatpak libadwaita openssl ];
meta = with lib; {
homepage = "https://gitlab.gnome.org/Cogitri/flatsync";
# It has no license yet so technically it's unfree.
license = licenses.unfree;
description = "Synchronize your Flatpaks across multiple machines";
platforms = platforms.linux;
maintainers = with maintainers; [ foo-dogsquared ];
mainProgram = "flatsync";
};
})