Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
3.1 kB · 160 lines
Nix
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161{ lib, stdenv, fetchurl, replaceVars, nixosTests,
docbook_xml_dtd_45, docbook_xsl, gettext, libxml2, libxslt, pkg-config, xmlto, meson, ninja,
acl, appstream, breezy, binutils, bzip2, coreutils, cpio, curl, debugedit, elfutils, flatpak, gitMinimal, glib, glibcLocales, gnumake, gnupg, gnutar, json-glib, libcap, libyaml, ostree, patch, rpm, unzip, attr,}:
stdenv.mkDerivation (finalAttrs: { pname = "flatpak-builder"; version = "1.4.4";
outputs = [ "out" "doc" "man" "installedTests" ];
# fetchFromGitHub fetches an archive which does not contain the full source (https://github.com/flatpak/flatpak-builder/issues/558) src = fetchurl { url = "https://github.com/flatpak/flatpak-builder/releases/download/${finalAttrs.version}/flatpak-builder-${finalAttrs.version}.tar.xz"; hash = "sha256-3CcVk5S6qiy1I/Uvh0Ry/1DRYZgyMyZMoqIuhQdB7Ho="; };
patches = [ # patch taken from gtk_doc ./respect-xml-catalog-files-var.patch
# Hardcode paths (replaceVars ./fix-paths.patch { brz = "${breezy}/bin/brz"; cp = "${coreutils}/bin/cp"; patch = "${patch}/bin/patch"; tar = "${gnutar}/bin/tar"; unzip = "${unzip}/bin/unzip"; rpm2cpio = "${rpm}/bin/rpm2cpio"; cpio = "${cpio}/bin/cpio"; git = "${gitMinimal}/bin/git"; rofilesfuse = "${ostree}/bin/rofiles-fuse"; strip = "${binutils}/bin/strip"; eustrip = "${elfutils}/bin/eu-strip"; euelfcompress = "${elfutils}/bin/eu-elfcompress"; })
(replaceVars ./fix-test-paths.patch { inherit glibcLocales; }) ./fix-test-prefix.patch ];
nativeBuildInputs = [ meson ninja docbook_xml_dtd_45 docbook_xsl gettext libxml2 libxslt pkg-config xmlto ];
buildInputs = [ acl appstream bzip2 curl debugedit elfutils flatpak glib json-glib libcap libxml2 libyaml ostree ];
mesonFlags = [ "-Dinstalled_tests=true" "-Dinstalled_test_prefix=${placeholder "installedTests"}" ];
# Some scripts used by tests need to use shebangs that are available in Flatpak runtimes. dontPatchShebangs = true;
enableParallelBuilding = true;
# Installed tests postFixup = let installed_testdir = "${placeholder "installedTests"}/libexec/installed-tests/flatpak-builder"; in '' for file in ${installed_testdir}/{test-builder.sh,test-builder-python.sh,test-builder-deprecated.sh}; do patchShebangs $file done '';
passthru = { installedTestsDependencies = [ gnupg ostree gnumake attr libxml2 appstream ];
tests = { installedTests = nixosTests.installed-tests.flatpak-builder; }; };
meta = with lib; { description = "Tool to build flatpaks from source"; mainProgram = "flatpak-builder"; homepage = "https://github.com/flatpak/flatpak-builder"; license = licenses.lgpl21Plus; maintainers = with maintainers; [ arthsmn ]; platforms = platforms.linux; };})