diff options
author | worldofpeace <worldofpeace@protonmail.ch> | 2019-08-18 04:23:54 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-18 04:23:54 -0400 |
commit | 4f3e9ca93a91626256d1b1edae005288704c8225 (patch) | |
tree | 008483a086c325a4af8e8c2cebf1a1ce7b6ffb92 | |
parent | 8ed485c67b1c98f69e9162b8ff2cdec99a158de8 (diff) | |
parent | ce0511e302eda34ac1fb35d741829d5ea91d3588 (diff) |
Merge pull request #65291 from worldofpeace/xdg-updates
Flatpak updates
22 files changed, 606 insertions, 89 deletions
diff --git a/nixos/modules/services/desktops/flatpak.nix b/nixos/modules/services/desktops/flatpak.nix index 1492d855aa034..7fb0024f37dc7 100644 --- a/nixos/modules/services/desktops/flatpak.nix +++ b/nixos/modules/services/desktops/flatpak.nix @@ -38,5 +38,16 @@ in { "$HOME/.local/share/flatpak/exports" "/var/lib/flatpak/exports" ]; + + # It has been possible since https://github.com/flatpak/flatpak/releases/tag/1.3.2 + # to build a SELinux policy module. + + users.users.flatpak = { + description = "Flatpak system helper"; + group = "flatpak"; + isSystemUser = true; + }; + + users.groups.flatpak = { }; }; } diff --git a/pkgs/development/libraries/flatpak/bubblewrap-paths.patch b/pkgs/development/libraries/flatpak/bubblewrap-paths.patch index 79257fd6be50a..407811736f83b 100644 --- a/pkgs/development/libraries/flatpak/bubblewrap-paths.patch +++ b/pkgs/development/libraries/flatpak/bubblewrap-paths.patch @@ -1,8 +1,8 @@ diff --git a/icon-validator/validate-icon.c b/icon-validator/validate-icon.c -index 6e23d9f2..8c621ec4 100644 +index 9e885070..d02eeb8c 100644 --- a/icon-validator/validate-icon.c +++ b/icon-validator/validate-icon.c -@@ -149,8 +149,8 @@ rerun_in_sandbox (const char *arg_width, +@@ -156,8 +156,8 @@ rerun_in_sandbox (const char *arg_width, "--unshare-ipc", "--unshare-net", "--unshare-pid", diff --git a/pkgs/development/libraries/flatpak/default.nix b/pkgs/development/libraries/flatpak/default.nix index 4c4949b37be89..d29be4cb93047 100644 --- a/pkgs/development/libraries/flatpak/default.nix +++ b/pkgs/development/libraries/flatpak/default.nix @@ -1,18 +1,18 @@ { stdenv, fetchurl, autoreconfHook, docbook_xml_dtd_412, docbook_xml_dtd_42, docbook_xml_dtd_43, docbook_xsl, which, libxml2 , gobject-introspection, gtk-doc, intltool, libxslt, pkgconfig, xmlto, appstream-glib, substituteAll, glibcLocales, yacc, xdg-dbus-proxy, p11-kit -, bubblewrap, bzip2, dbus, glib, gpgme, json-glib, libarchive, libcap, libseccomp, coreutils, gettext, hicolor-icon-theme +, bubblewrap, bzip2, dbus, glib, gpgme, json-glib, libarchive, libcap, libseccomp, coreutils, gettext, hicolor-icon-theme, fuse , libsoup, lzma, ostree, polkit, python3, systemd, xorg, valgrind, glib-networking, wrapGAppsHook, gnome3, gsettings-desktop-schemas, librsvg }: stdenv.mkDerivation rec { pname = "flatpak"; - version = "1.2.4"; + version = "1.4.2"; # TODO: split out lib once we figure out what to do with triggerdir outputs = [ "out" "man" "doc" "installedTests" ]; src = fetchurl { url = "https://github.com/flatpak/flatpak/releases/download/${version}/${pname}-${version}.tar.xz"; - sha256 = "1qf3ys84fzv11z6f6li59rxjdjbyrv7cyi9539k73r9i9pckjr8v"; + sha256 = "08nmpp26mgv0vp3mlwk97rnp0j7i108h4hr9nllja19sjxnrlygj"; }; patches = [ @@ -43,7 +43,7 @@ stdenv.mkDerivation rec { buildInputs = [ bubblewrap bzip2 dbus gnome3.dconf glib gpgme json-glib libarchive libcap libseccomp - libsoup lzma ostree polkit python3 systemd xorg.libXau + libsoup lzma ostree polkit python3 systemd xorg.libXau fuse gsettings-desktop-schemas glib-networking librsvg # for flatpak-validate-icon ]; diff --git a/pkgs/development/libraries/flatpak/fix-paths.patch b/pkgs/development/libraries/flatpak/fix-paths.patch index 49fcaa2b3f9b8..746b4382864be 100644 --- a/pkgs/development/libraries/flatpak/fix-paths.patch +++ b/pkgs/development/libraries/flatpak/fix-paths.patch @@ -1,6 +1,8 @@ +diff --git a/session-helper/flatpak-session-helper.c b/session-helper/flatpak-session-helper.c +index 5dd7629e..ddc71a4c 100644 --- a/session-helper/flatpak-session-helper.c +++ b/session-helper/flatpak-session-helper.c -@@ -624,7 +624,7 @@ +@@ -693,7 +693,7 @@ start_p11_kit_server (const char *flatpak_dir) g_auto(GStrv) stdout_lines = NULL; int i; char *p11_argv[] = { @@ -9,7 +11,7 @@ /* We explicitly request --sh here, because we then fail on earlier versions that doesn't support * this flag. This is good, because those earlier versions did not properly daemonize and caused * the spawn_sync to hang forever, waiting for the pipe to close. -@@ -770,7 +770,7 @@ +@@ -836,7 +836,7 @@ main (int argc, exit (1); } diff --git a/pkgs/development/libraries/flatpak/fix-test-paths.patch b/pkgs/development/libraries/flatpak/fix-test-paths.patch index f987899e3bcb8..85b222152d0a1 100644 --- a/pkgs/development/libraries/flatpak/fix-test-paths.patch +++ b/pkgs/development/libraries/flatpak/fix-test-paths.patch @@ -1,6 +1,8 @@ +diff --git a/tests/libtest.sh b/tests/libtest.sh +index 46bcefb3..0134425e 100644 --- a/tests/libtest.sh +++ b/tests/libtest.sh -@@ -328,7 +328,7 @@ +@@ -352,7 +352,7 @@ if [ -z "${FLATPAK_BWRAP:-}" ]; then # running installed-tests: assume we know what we're doing _flatpak_bwrap_works=true elif ! "$FLATPAK_BWRAP" --unshare-ipc --unshare-net --unshare-pid \ @@ -9,7 +11,7 @@ _flatpak_bwrap_works=false else _flatpak_bwrap_works=true -@@ -309,12 +309,12 @@ +@@ -426,12 +426,12 @@ dbus-daemon --fork --config-file=session.conf --print-address=3 --print-pid=4 \ export DBUS_SESSION_BUS_ADDRESS="$(cat dbus-session-bus-address)" DBUS_SESSION_BUS_PID="$(cat dbus-session-bus-pid)" @@ -24,9 +26,11 @@ gpg-connect-agent --homedir "${FL_GPG_HOMEDIR}" killagent /bye || true fusermount -u $XDG_RUNTIME_DIR/doc || : if test -n "${TEST_SKIP_CLEANUP:-}"; then +diff --git a/tests/make-test-app.sh b/tests/make-test-app.sh +index 0a0a28f1..16fd51fe 100755 --- a/tests/make-test-app.sh +++ b/tests/make-test-app.sh -@@ -114,13 +114,13 @@ msgid "Hello world" +@@ -129,13 +129,13 @@ msgid "Hello world" msgstr "Hallo Welt" EOF mkdir -p ${DIR}/files/de/share/de/LC_MESSAGES @@ -42,9 +46,11 @@ flatpak build-finish ${DIR} mkdir -p repos +diff --git a/tests/make-test-runtime.sh b/tests/make-test-runtime.sh +index 57899b75..9236996f 100755 --- a/tests/make-test-runtime.sh +++ b/tests/make-test-runtime.sh -@@ -26,6 +26,7 @@ +@@ -28,6 +28,7 @@ EOF PATH="$PATH:/usr/sbin:/sbin" # Add bash and dependencies @@ -52,7 +58,7 @@ mkdir -p ${DIR}/usr/bin mkdir -p ${DIR}/usr/lib ln -s ../lib ${DIR}/usr/lib64 -@@ -35,48 +36,27 @@ +@@ -37,48 +38,23 @@ if test -f /sbin/ldconfig.real; then else cp `which ldconfig` ${DIR}/usr/bin fi @@ -105,21 +111,20 @@ -# We copy the C.UTF8 locale and call it en_US. Its a bit of a lie, but -# the real en_US locale is often not available, because its in the -# local archive. +-mkdir -p ${DIR}/usr/lib/locale/ +-cp -r /usr/lib/locale/C.* ${DIR}/usr/lib/locale/en_US +mv ${DIR}/nix/store ${DIR}/usr/store # files outside /usr are not permitted, we will have to replace /nix/store with /usr/store +chmod -R u+w ${DIR} # nix store has read-only directories which would cause problems during clean-up, files need to be writable for sed +find ${DIR} -type f -print0 | xargs -0 sed -i 's~/nix/store/~/usr/store/~g' # replace hardcoded paths +find ${DIR} -type l | xargs -I '{}' sh -c 'tg="$(readlink "$1")"; newtg="${tg#/nix/store/}"; if [ "$tg" != "$newtg" ]; then ln -fs "/usr/store/$newtg" "$1"; fi' -- '{}' # replace symlink targets -+ -+# We copy the whole locale archive because we do not have C.UTF8 locale - mkdir -p ${DIR}/usr/lib/locale/ --cp -r /usr/lib/locale/C.* ${DIR}/usr/lib/locale/en_US -+cp @glibcLocales@/lib/locale/locale-archive ${DIR}/usr/lib/locale/locale-archive if [ x$COLLECTION_ID != x ]; then collection_args=--collection-id=${COLLECTION_ID} +diff --git a/tests/testlibrary.c b/tests/testlibrary.c +index f2773dc8..3af9026f 100644 --- a/tests/testlibrary.c +++ b/tests/testlibrary.c -@@ -584,7 +584,7 @@ +@@ -1053,7 +1053,7 @@ check_bwrap_support (void) { gint exit_code = 0; char *argv[] = { (char *) bwrap, "--unshare-ipc", "--unshare-net", @@ -128,6 +133,8 @@ g_autofree char *argv_str = g_strjoinv (" ", argv); g_test_message ("Spawning %s", argv_str); g_spawn_sync (NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, NULL, &exit_code, &error); +diff --git a/triggers/gtk-icon-cache.trigger b/triggers/gtk-icon-cache.trigger +index 711cfab2..10c220ec 100755 --- a/triggers/gtk-icon-cache.trigger +++ b/triggers/gtk-icon-cache.trigger @@ -1,7 +1,7 @@ diff --git a/pkgs/development/libraries/flatpak/respect-xml-catalog-files-var.patch b/pkgs/development/libraries/flatpak/respect-xml-catalog-files-var.patch index 0e259aebd8a5e..4cee60be2d07d 100644 --- a/pkgs/development/libraries/flatpak/respect-xml-catalog-files-var.patch +++ b/pkgs/development/libraries/flatpak/respect-xml-catalog-files-var.patch @@ -1,6 +1,8 @@ +diff --git a/acinclude.m4 b/acinclude.m4 +index 92ec3985..b3fccf1d 100644 --- a/acinclude.m4 +++ b/acinclude.m4 -@@ -40,8 +40,8 @@ +@@ -40,8 +40,8 @@ AC_DEFUN([JH_CHECK_XML_CATALOG], [ AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog]) diff --git a/pkgs/development/libraries/flatpak/unset-env-vars.patch b/pkgs/development/libraries/flatpak/unset-env-vars.patch index 798e388b23c27..63ce0d12fe075 100644 --- a/pkgs/development/libraries/flatpak/unset-env-vars.patch +++ b/pkgs/development/libraries/flatpak/unset-env-vars.patch @@ -1,6 +1,8 @@ +diff --git a/common/flatpak-run.c b/common/flatpak-run.c +index 8d52d3a5..81700183 100644 --- a/common/flatpak-run.c +++ b/common/flatpak-run.c -@@ -1192,6 +1192,7 @@ static const ExportData default_exports[] = { +@@ -1232,6 +1232,7 @@ static const ExportData default_exports[] = { {"PERLLIB", NULL}, {"PERL5LIB", NULL}, {"XCURSOR_PATH", NULL}, diff --git a/pkgs/development/libraries/flatpak/use-flatpak-from-path.patch b/pkgs/development/libraries/flatpak/use-flatpak-from-path.patch index 408198bda5cbe..01363ffb7b349 100644 --- a/pkgs/development/libraries/flatpak/use-flatpak-from-path.patch +++ b/pkgs/development/libraries/flatpak/use-flatpak-from-path.patch @@ -1,6 +1,8 @@ +diff --git a/common/flatpak-dir.c b/common/flatpak-dir.c +index 8f9dc66c..d3ab6e5f 100644 --- a/common/flatpak-dir.c +++ b/common/flatpak-dir.c -@@ -5758,7 +5758,7 @@ export_desktop_file (const char *app, +@@ -6701,7 +6701,7 @@ export_desktop_file (const char *app, new_exec = g_string_new (""); g_string_append_printf (new_exec, @@ -9,7 +11,7 @@ escaped_branch, escaped_arch); -@@ -6935,8 +6935,8 @@ flatpak_dir_deploy (FlatpakDir *self, +@@ -7891,8 +7891,8 @@ flatpak_dir_deploy (FlatpakDir *self, error)) return FALSE; @@ -21,28 +23,28 @@ G_FILE_CREATE_REPLACE_DESTINATION, NULL, cancellable, error)) return FALSE; diff --git a/tests/test-bundle.sh b/tests/test-bundle.sh -index 6937b041..01f8add7 100755 +index dff17f33..a9857adc 100755 --- a/tests/test-bundle.sh +++ b/tests/test-bundle.sh @@ -59,7 +59,7 @@ assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/master/active/files assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/master/active/export assert_has_file $FL_DIR/exports/share/applications/org.test.Hello.desktop # Ensure Exec key is rewritten --assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=.*/flatpak run --branch=master --arch=$ARCH --command=hello.sh org.test.Hello$" -+assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=flatpak run --branch=master --arch=$ARCH --command=hello.sh org.test.Hello$" +-assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=.*/flatpak run --branch=master --arch=$ARCH --command=hello\.sh org\.test\.Hello$" ++assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=flatpak run --branch=master --arch=$ARCH --command=hello\.sh org\.test\.Hello$" assert_has_file $FL_DIR/exports/share/icons/hicolor/64x64/apps/org.test.Hello.png assert_has_file $FL_DIR/exports/share/icons/HighContrast/64x64/apps/org.test.Hello.png diff --git a/tests/test-run.sh b/tests/test-run.sh -index 9d83d82e..234e4ec6 100755 +index 233df9ad..76e0b23b 100644 --- a/tests/test-run.sh +++ b/tests/test-run.sh -@@ -42,7 +42,7 @@ assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/master/active/files - assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/master/active/export +@@ -45,7 +45,7 @@ assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/stable/active/files + assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/stable/active/export assert_has_file $FL_DIR/exports/share/applications/org.test.Hello.desktop # Ensure Exec key is rewritten --assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=.*/flatpak run --branch=master --arch=$ARCH --command=hello.sh org.test.Hello$" -+assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=flatpak run --branch=master --arch=$ARCH --command=hello.sh org.test.Hello$" +-assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=.*/flatpak run --branch=stable --arch=$ARCH --command=hello\.sh org\.test\.Hello$" ++assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=flatpak run --branch=stable --arch=$ARCH --command=hello\.sh org\.test\.Hello$" assert_has_file $FL_DIR/exports/share/icons/hicolor/64x64/apps/org.test.Hello.png assert_not_has_file $FL_DIR/exports/share/icons/hicolor/64x64/apps/dont-export.png assert_has_file $FL_DIR/exports/share/icons/HighContrast/64x64/apps/org.test.Hello.png diff --git a/pkgs/development/libraries/flatpak/validate-icon-pixbuf.patch b/pkgs/development/libraries/flatpak/validate-icon-pixbuf.patch index 5b8cc2d0383f2..086114e11c30d 100644 --- a/pkgs/development/libraries/flatpak/validate-icon-pixbuf.patch +++ b/pkgs/development/libraries/flatpak/validate-icon-pixbuf.patch @@ -1,8 +1,8 @@ diff --git a/icon-validator/validate-icon.c b/icon-validator/validate-icon.c -index 6e23d9f2..f0659a78 100644 +index 9e885070..44fea035 100644 --- a/icon-validator/validate-icon.c +++ b/icon-validator/validate-icon.c -@@ -193,6 +193,8 @@ rerun_in_sandbox (const char *arg_width, +@@ -200,6 +200,8 @@ rerun_in_sandbox (const char *arg_width, add_args (args, "--setenv", "G_MESSAGES_DEBUG", g_getenv ("G_MESSAGES_DEBUG"), NULL); if (g_getenv ("G_MESSAGES_PREFIXED")) add_args (args, "--setenv", "G_MESSAGES_PREFIXED", g_getenv ("G_MESSAGES_PREFIXED"), NULL); diff --git a/pkgs/development/libraries/libmodulemd/1.nix b/pkgs/development/libraries/libmodulemd/1.nix new file mode 100644 index 0000000000000..174296375e08c --- /dev/null +++ b/pkgs/development/libraries/libmodulemd/1.nix @@ -0,0 +1,21 @@ +{ libmodulemd, fetchurl }: + +libmodulemd.overrideAttrs(old: rec { + name = "libmodulemd-${version}"; + version = "1.8.15"; + + # Removes py output since there's no overrides here + outputs = [ "out" "devdoc" ]; + + patches = [ + # Checks for glib docs in glib's prefix + # but they're installed to another + ./dont-check-docs.patch + ]; + + src = fetchurl { + url = "https://github.com/fedora-modularity/libmodulemd/releases/download/${name}/modulemd-${version}.tar.xz"; + sha256 = "0gz8p3qzji3cx0r57sy3gn4dhigg4k7pcxj3lmjcjn13vxh5rm7z"; + }; + +}) diff --git a/pkgs/development/libraries/libmodulemd/default.nix b/pkgs/development/libraries/libmodulemd/default.nix new file mode 100644 index 0000000000000..ba77c7806b53b --- /dev/null +++ b/pkgs/development/libraries/libmodulemd/default.nix @@ -0,0 +1,59 @@ +{ stdenv +, fetchFromGitHub +, pkgconfig +, meson +, ninja +, gobject-introspection +, python3 +, libyaml +, gtk-doc +, docbook_xsl +, docbook_xml_dtd_412 +, glib +}: + +stdenv.mkDerivation rec { + pname = "libmodulemd"; + version = "2.6.0"; + + outputs = [ "out" "devdoc" "py" ]; + + src = fetchFromGitHub { + owner = "fedora-modularity"; + repo = pname; + rev = "${pname}-${version}"; + sha256 = "0gizfmzs6jrzb29lwcimm5dq3027935xbzwgkbvbp67zcmjd3y5i"; + }; + + patches = [ + ./pygobject-dir.patch + ]; + + nativeBuildInputs = [ + pkgconfig + meson + ninja + gtk-doc + docbook_xsl + docbook_xml_dtd_412 + gobject-introspection + ]; + + buildInputs = [ + libyaml + glib + ]; + + mesonFlags = [ + "-Ddeveloper_build=false" + "-Dpygobject_override_dir=${placeholder "py"}/${python3.sitePackages}/gi/overrides" + ]; + + meta = with stdenv.lib; { + description = "C Library for manipulating module metadata files"; + homepage = "https://github.com/fedora-modularity/libmodulemd"; + license = licenses.mit; + maintainers = with maintainers; [ ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/development/libraries/libmodulemd/dont-check-docs.patch b/pkgs/development/libraries/libmodulemd/dont-check-docs.patch new file mode 100644 index 0000000000000..38ad5683692b1 --- /dev/null +++ b/pkgs/development/libraries/libmodulemd/dont-check-docs.patch @@ -0,0 +1,29 @@ +diff --git a/meson.build b/meson.build +index 155c9e7..9125372 100644 +--- a/meson.build ++++ b/meson.build +@@ -60,15 +60,15 @@ sh = find_program('sh') + sed = find_program('sed') + test = find_program('test') + +-ret = run_command ([test, '-e', join_paths(glib_docpath, 'glib/index.html')]) +-if ret.returncode() != 0 +- error('Missing documentation for GLib.') +-endif +- +-ret = run_command ([test, '-e', join_paths(glib_docpath, 'gobject/index.html')]) +-if ret.returncode() != 0 +- error('Missing documentation for GObject.') +-endif ++# ret = run_command ([test, '-e', join_paths(glib_docpath, 'glib/index.html')]) ++# if ret.returncode() != 0 ++# error('Missing documentation for GLib.') ++# endif ++ ++# ret = run_command ([test, '-e', join_paths(glib_docpath, 'gobject/index.html')]) ++# if ret.returncode() != 0 ++# error('Missing documentation for GObject.') ++# endif + + python_name = get_option('python_name') + diff --git a/pkgs/development/libraries/libmodulemd/pygobject-dir.patch b/pkgs/development/libraries/libmodulemd/pygobject-dir.patch new file mode 100644 index 0000000000000..a367872eec650 --- /dev/null +++ b/pkgs/development/libraries/libmodulemd/pygobject-dir.patch @@ -0,0 +1,45 @@ +diff --git a/bindings/python/meson.build b/bindings/python/meson.build +index 4358b79..61fd5a5 100644 +--- a/bindings/python/meson.build ++++ b/bindings/python/meson.build +@@ -1,3 +1,5 @@ ++pygobject_override_dir = get_option('pygobject_override_dir') ++ + get_overridedir = ''' + import os + import sysconfig +@@ -21,7 +23,7 @@ print(overridedir) + ''' + + # Python 3 +-if (get_option('with_py3_overrides')) ++if (get_option('with_py3_overrides')) and pygobject_override_dir == '' + ret = run_command([python3, '-c', get_overridedir]) + + if ret.returncode() != 0 +@@ -34,7 +36,7 @@ if (get_option('with_py3_overrides')) + endif + + # Python 2 +-if (get_option('with_py2_overrides')) ++if (get_option('with_py2_overrides')) and pygobject_override_dir == '' + ret2 = run_command([python2, '-c', get_overridedir]) + + if ret2.returncode() != 0 +@@ -45,3 +47,7 @@ if (get_option('with_py2_overrides')) + + install_data('gi/overrides/Modulemd.py', install_dir: pygobject2_override_dir) + endif ++ ++if pygobject_override_dir != '' ++ install_data('gi/overrides/Modulemd.py', install_dir: pygobject_override_dir) ++endif +diff --git a/meson_options.txt b/meson_options.txt +index 147419f..9071a04 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -18,3 +18,4 @@ option('skip_introspection', type : 'boolean', value : false) + option('python_name', type : 'string') + option('with_py2_overrides', type : 'boolean', value : false) + option('with_py3_overrides', type : 'boolean', value : true) ++option('pygobject_override_dir', type : 'string', value : '', description: 'Path to pygobject overrides directory') diff --git a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix index b8cf86999e0b7..9b0316023710f 100644 --- a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix @@ -1,18 +1,39 @@ -{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libxml2, xdg-desktop-portal, gtk3, glib, wrapGAppsHook, gsettings-desktop-schemas }: +{ stdenv +, fetchFromGitHub +, autoreconfHook +, pkgconfig +, libxml2 +, xdg-desktop-portal +, gtk3 +, glib +, wrapGAppsHook +, gsettings-desktop-schemas +}: stdenv.mkDerivation rec { pname = "xdg-desktop-portal-gtk"; - version = "1.2.0"; + version = "1.4.0"; src = fetchFromGitHub { owner = "flatpak"; repo = pname; rev = version; - sha256 = "1vgnsahljzrjcdjzv1dxhp2rf709pnf8595an82llnylwa8rdp1j"; + sha256 = "1zryfg6232vz1pmv0zqcxvl4clnbb15kjf55b24cimkcnidklbap"; }; - nativeBuildInputs = [ autoreconfHook pkgconfig libxml2 xdg-desktop-portal wrapGAppsHook ]; - buildInputs = [ glib gtk3 gsettings-desktop-schemas ]; + nativeBuildInputs = [ + autoreconfHook + libxml2 + pkgconfig + wrapGAppsHook + xdg-desktop-portal + ]; + + buildInputs = [ + glib + gsettings-desktop-schemas + gtk3 + ]; meta = with stdenv.lib; { description = "Desktop integration portals for sandboxed apps"; diff --git a/pkgs/development/libraries/xdg-desktop-portal/default.nix b/pkgs/development/libraries/xdg-desktop-portal/default.nix index 3f02946c77040..4be7bd1474cf0 100644 --- a/pkgs/development/libraries/xdg-desktop-portal/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal/default.nix @@ -1,8 +1,8 @@ -{ stdenv, fetchFromGitHub, substituteAll, autoreconfHook, pkgconfig, libxml2, glib, pipewire, fontconfig, flatpak, gsettings-desktop-schemas, acl, dbus, fuse, geoclue2, wrapGAppsHook }: +{ stdenv, fetchFromGitHub, substituteAll, autoreconfHook, pkgconfig, libxml2, glib, pipewire, fontconfig, flatpak, gsettings-desktop-schemas, acl, dbus, fuse, geoclue2, json-glib, wrapGAppsHook }: stdenv.mkDerivation rec { pname = "xdg-desktop-portal"; - version = "1.2.0"; + version = "1.4.2"; outputs = [ "out" "installedTests" ]; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { owner = "flatpak"; repo = pname; rev = version; - sha256 = "1gjyif4gly0mkdx6ir6wc4vhfh1raah9jq03q28i88hr7phjdy71"; + sha256 = "1rs3kmpczkr6nm08kb9njnl7n3rmhh0ral0xav6f0y70pyh8whx6"; }; patches = [ @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { ]; nativeBuildInputs = [ autoreconfHook pkgconfig libxml2 wrapGAppsHook ]; - buildInputs = [ glib pipewire fontconfig flatpak acl dbus geoclue2 fuse gsettings-desktop-schemas ]; + buildInputs = [ glib pipewire fontconfig flatpak acl dbus geoclue2 fuse gsettings-desktop-schemas json-glib ]; doCheck = true; # XXX: investigate! diff --git a/pkgs/development/libraries/xdg-desktop-portal/respect-path-env-var.patch b/pkgs/development/libraries/xdg-desktop-portal/respect-path-env-var.patch index f884899ecd19f..d970f5636ae44 100644 --- a/pkgs/development/libraries/xdg-desktop-portal/respect-path-env-var.patch +++ b/pkgs/development/libraries/xdg-desktop-portal/respect-path-env-var.patch @@ -1,10 +1,12 @@ ---- a/src/xdg-desktop-portal.c -+++ b/src/xdg-desktop-portal.c -@@ -177,38 +177,50 @@ - static void - load_installed_portals (void) +diff --git a/src/portal-impl.c b/src/portal-impl.c +index 4fd48ff..346da7c 100644 +--- a/src/portal-impl.c ++++ b/src/portal-impl.c +@@ -116,38 +116,50 @@ sort_impl_by_name (gconstpointer a, + void + load_installed_portals (gboolean opt_verbose) { -- const char *portal_dir = PKGDATADIR "/portals"; +- const char *portal_dir = DATADIR "/xdg-desktop-portal/portals"; - g_autoptr(GFile) dir = g_file_new_for_path (portal_dir); - g_autoptr(GFileEnumerator) enumerator = NULL; @@ -14,7 +16,7 @@ + const char *portal_dir = g_getenv ("XDG_DESKTOP_PORTAL_PATH"); + + if (portal_dir == NULL) -+ portal_dir = PKGDATADIR "/portals"; ++ portal_dir = DATADIR "/portals"; - if (enumerator == NULL) - return; @@ -56,7 +58,7 @@ - path = g_file_get_path (child); + name = g_file_info_get_name (info); -- if (!register_portal (path, &error)) +- if (!register_portal (path, opt_verbose, &error)) - { - g_warning ("Error loading %s: %s", path, error->message); - continue; @@ -66,7 +68,7 @@ + child = g_file_enumerator_get_child (enumerator, info); + path = g_file_get_path (child); + -+ if (!register_portal (path, &error)) ++ if (!register_portal (path, opt_verbose, &error)) + { + g_warning ("Error loading %s: %s", path, error->message); + continue; diff --git a/pkgs/tools/misc/ostree/01-Drop-ostree-trivial-httpd-CLI-move-to-tests-director.patch b/pkgs/tools/misc/ostree/01-Drop-ostree-trivial-httpd-CLI-move-to-tests-director.patch new file mode 100644 index 0000000000000..9c334436162b5 --- /dev/null +++ b/pkgs/tools/misc/ostree/01-Drop-ostree-trivial-httpd-CLI-move-to-tests-director.patch @@ -0,0 +1,271 @@ +From a9a62d7c7adf6fc0237c7d04937b538a4cea87ad Mon Sep 17 00:00:00 2001 +From: Colin Walters <walters@verbum.org> +Date: Tue, 19 Jun 2018 09:34:18 -0400 +Subject: [PATCH] Drop "ostree trivial-httpd" CLI, move to tests directory + +See https://github.com/ostreedev/ostree/issues/1593 + +Basically this makes it easier for people packaging, as the trivial-httpd +is only for tests, and this way the binary will live with the tests. + +Also at this point nothing should depend on `ostree trivial-httpd`. +--- + Makefile-man.am | 6 -- + Makefile-ostree.am | 7 --- + Makefile-tests.am | 7 +++ + configure.ac | 10 --- + man/ostree-trivial-httpd.xml | 118 ----------------------------------- + src/ostree/main.c | 5 -- + tests/libtest.sh | 13 ++-- + 7 files changed, 12 insertions(+), 154 deletions(-) + delete mode 100644 man/ostree-trivial-httpd.xml + +diff --git a/Makefile-man.am b/Makefile-man.am +index 8ccbba8c..d204aa3e 100644 +--- a/Makefile-man.am ++++ b/Makefile-man.am +@@ -34,12 +34,6 @@ ostree-init.1 ostree-log.1 ostree-ls.1 ostree-prune.1 ostree-pull-local.1 \ + ostree-pull.1 ostree-refs.1 ostree-remote.1 ostree-reset.1 \ + ostree-rev-parse.1 ostree-show.1 ostree-summary.1 \ + ostree-static-delta.1 +-if BUILDOPT_TRIVIAL_HTTPD +-man1_files += ostree-trivial-httpd.1 +-else +-# We still want to distribute the source, even if we are not building it +-EXTRA_DIST += man/ostree-trivial-httpd.xml +-endif + + if BUILDOPT_FUSE + man1_files += rofiles-fuse.1 +diff --git a/Makefile-ostree.am b/Makefile-ostree.am +index 8d352e38..1471b3e5 100644 +--- a/Makefile-ostree.am ++++ b/Makefile-ostree.am +@@ -133,13 +133,6 @@ ostree_SOURCES += src/ostree/ot-builtin-pull.c + endif + + if USE_LIBSOUP +-# Eventually once we stop things from using this, we should support disabling this +-ostree_SOURCES += src/ostree/ot-builtin-trivial-httpd.c +-pkglibexec_PROGRAMS += ostree-trivial-httpd +-ostree_trivial_httpd_SOURCES = src/ostree/ostree-trivial-httpd.c +-ostree_trivial_httpd_CFLAGS = $(ostree_bin_shared_cflags) $(OT_INTERNAL_SOUP_CFLAGS) +-ostree_trivial_httpd_LDADD = $(ostree_bin_shared_ldadd) $(OT_INTERNAL_SOUP_LIBS) +- + if !USE_CURL + # This is necessary for the cookie jar bits + ostree_CFLAGS += $(OT_INTERNAL_SOUP_CFLAGS) +diff --git a/Makefile-tests.am b/Makefile-tests.am +index 2c0916f6..b11fde89 100644 +--- a/Makefile-tests.am ++++ b/Makefile-tests.am +@@ -248,6 +248,13 @@ _installed_or_uninstalled_test_programs = tests/test-varint tests/test-ot-unix-u + tests/test-gpg-verify-result tests/test-checksum tests/test-lzma tests/test-rollsum \ + tests/test-basic-c tests/test-sysroot-c tests/test-pull-c tests/test-repo tests/test-include-ostree-h + ++if USE_LIBSOUP ++test_extra_programs += ostree-trivial-httpd ++ostree_trivial_httpd_SOURCES = src/ostree/ostree-trivial-httpd.c ++ostree_trivial_httpd_CFLAGS = $(common_tests_cflags) $(OT_INTERNAL_SOUP_CFLAGS) ++ostree_trivial_httpd_LDADD = $(common_tests_ldadd) $(OT_INTERNAL_SOUP_LIBS) ++endif ++ + if USE_AVAHI + test_programs += tests/test-repo-finder-avahi + endif +diff --git a/configure.ac b/configure.ac +index e6e145db..1e36e6a0 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -187,15 +187,6 @@ if test x$with_soup != xno; then OSTREE_FEATURES="$OSTREE_FEATURES libsoup"; fi + AM_CONDITIONAL(USE_LIBSOUP, test x$with_soup != xno) + AM_CONDITIONAL(HAVE_LIBSOUP_CLIENT_CERTS, test x$have_libsoup_client_certs = xyes) + +-AC_ARG_ENABLE(trivial-httpd-cmdline, +- [AS_HELP_STRING([--enable-trivial-httpd-cmdline], +- [Continue to support "ostree trivial-httpd" [default=no]])],, +- enable_trivial_httpd_cmdline=no) +-AM_CONDITIONAL(BUILDOPT_TRIVIAL_HTTPD, test x$enable_trivial_httpd_cmdline = xyes) +-AM_COND_IF(BUILDOPT_TRIVIAL_HTTPD, +- [AC_DEFINE([BUILDOPT_ENABLE_TRIVIAL_HTTPD_CMDLINE], 1, [Define if we are enabling ostree trivial-httpd entrypoint])] +-) +- + AS_IF([test x$with_curl = xyes && test x$with_soup = xno], [ + AC_MSG_WARN([Curl enabled, but libsoup is not; libsoup is needed for tests (make check, etc.)]) + ]) +@@ -602,7 +593,6 @@ echo " + Rust (internal oxidation): $rust_debug_release + rofiles-fuse: $enable_rofiles_fuse + HTTP backend: $fetcher_backend +- \"ostree trivial-httpd\": $enable_trivial_httpd_cmdline + SELinux: $with_selinux + cryptographic checksums: $with_crypto + systemd: $have_libsystemd +diff --git a/man/ostree-trivial-httpd.xml b/man/ostree-trivial-httpd.xml +deleted file mode 100644 +index d03c12be..00000000 +--- a/man/ostree-trivial-httpd.xml ++++ /dev/null +@@ -1,118 +0,0 @@ +-<?xml version='1.0'?> <!--*-nxml-*--> +-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" +- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> +- +-<!-- +-Copyright 2011,2013 Colin Walters <walters@verbum.org> +- +-SPDX-License-Identifier: LGPL-2.0+ +- +-This library is free software; you can redistribute it and/or +-modify it under the terms of the GNU Lesser General Public +-License as published by the Free Software Foundation; either +-version 2 of the License, or (at your option) any later version. +- +-This library is distributed in the hope that it will be useful, +-but WITHOUT ANY WARRANTY; without even the implied warranty of +-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-Lesser General Public License for more details. +- +-You should have received a copy of the GNU Lesser General Public +-License along with this library; if not, write to the +-Free Software Foundation, Inc., 59 Temple Place - Suite 330, +-Boston, MA 02111-1307, USA. +---> +- +-<refentry id="ostree"> +- +- <refentryinfo> +- <title>ostree trivial-httpd</title> +- <productname>OSTree</productname> +- +- <authorgroup> +- <author> +- <contrib>Developer</contrib> +- <firstname>Colin</firstname> +- <surname>Walters</surname> +- <email>walters@verbum.org</email> +- </author> +- </authorgroup> +- </refentryinfo> +- +- <refmeta> +- <refentrytitle>ostree trivial-httpd</refentrytitle> +- <manvolnum>1</manvolnum> +- </refmeta> +- +- <refnamediv> +- <refname>ostree-trivial-httpd</refname> +- <refpurpose>Simple webserver</refpurpose> +- </refnamediv> +- +- <refsynopsisdiv> +- <cmdsynopsis> +- <command>ostree trivial-httpd</command> <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="opt">DIR</arg> +- </cmdsynopsis> +- </refsynopsisdiv> +- +-<!-- Don't entirely understand this command. Needs details, better content--> +- <refsect1> +- <title>Description</title> +- +- <para> +- This runs a simple webserver and keeps it running until killed. If DIR is not specified, it defaults to the current directory. +- </para> +- </refsect1> +- +- <refsect1> +- <title>Options</title> +- +- <variablelist> +- <varlistentry> +- <term><option>--daemonize</option>,<option>-d</option></term> +- +- <listitem><para> +- Fork into background when ready. +- </para></listitem> +- </varlistentry> +- +- <varlistentry> +- <term><option>--autoexit</option></term> +- +- <listitem><para> +- Automatically exit when directory is deleted. +- </para></listitem> +- </varlistentry> +- +- <varlistentry> +- <term><option>--port-file</option>,<option>-p</option>="PATH"</term> +- +- <listitem><para> +- Write port number to PATH (- for standard output). +- </para></listitem> +- </varlistentry> +- +- <varlistentry> +- <term><option>--port</option>,<option>-P</option></term> +- +- <listitem><para> +- Use the specified TCP port to listen on. +- </para></listitem> +- </varlistentry> +- +- <varlistentry> +- <term><option>--force-range-requests</option></term> +- +- <listitem><para> +- Force range requests by only serving half of files. +- </para></listitem> +- </varlistentry> +- </variablelist> +- </refsect1> +- +-<!-- NEED EXAMPLE OUTPUT HERE!--> +- <refsect1> +- <title>Example</title> +- <para><command>$ ostree trivial-httpd</command></para> +- </refsect1> +-</refentry> +diff --git a/src/ostree/main.c b/src/ostree/main.c +index c5b45012..6478a62b 100644 +--- a/src/ostree/main.c ++++ b/src/ostree/main.c +@@ -116,11 +116,6 @@ static OstreeCommand commands[] = { + { "summary", OSTREE_BUILTIN_FLAG_NONE, + ostree_builtin_summary, + "Manage summary metadata" }, +-#if defined(HAVE_LIBSOUP) && defined(BUILDOPT_ENABLE_TRIVIAL_HTTPD_CMDLINE) +- { "trivial-httpd", OSTREE_BUILTIN_FLAG_NONE, +- ostree_builtin_trivial_httpd, +- NULL }, +-#endif + { NULL } + }; + +diff --git a/tests/libtest.sh b/tests/libtest.sh +index e0022512..b07dc962 100755 +--- a/tests/libtest.sh ++++ b/tests/libtest.sh +@@ -149,15 +149,12 @@ fi + if test -n "${OSTREE_UNINSTALLED:-}"; then + OSTREE_HTTPD=${OSTREE_UNINSTALLED}/ostree-trivial-httpd + else +- # trivial-httpd is now in $libexecdir by default, which we don't +- # know at this point. Fortunately, libtest.sh is also in +- # $libexecdir, so make an educated guess. If it's not found, assume +- # it's still runnable as "ostree trivial-httpd". +- if [ -x "${test_srcdir}/../../libostree/ostree-trivial-httpd" ]; then +- OSTREE_HTTPD="${CMD_PREFIX} ${test_srcdir}/../../libostree/ostree-trivial-httpd" +- else +- OSTREE_HTTPD="${CMD_PREFIX} ostree trivial-httpd" ++ # trivial-httpd is now the test directory. ++ OSTREE_HTTPD="${G_TEST_BUILDDIR}/ostree-trivial-httpd" ++ if ! [ -x "${OSTREE_HTTPD}" ]; then ++ fatal "Failed to find ${OSTREE_HTTPD}" + fi ++ OSTREE_HTTPD="${CMD_PREFIX} ${OSTREE_HTTPD}" + fi + + files_are_hardlinked() { +-- +2.22.0 + diff --git a/pkgs/tools/misc/ostree/default.nix b/pkgs/tools/misc/ostree/default.nix index 0054e38ed2da6..9f423cf6a4da0 100644 --- a/pkgs/tools/misc/ostree/default.nix +++ b/pkgs/tools/misc/ostree/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "ostree"; - version = "2019.1"; + version = "2019.2"; outputs = [ "out" "dev" "man" "installedTests" ]; src = fetchurl { url = "https://github.com/ostreedev/ostree/releases/download/v${version}/libostree-${version}.tar.xz"; - sha256 = "08y7nsxl305dnlfak4kyj88lld848y4kg6bvjqngcxaqqvkk9xqm"; + sha256 = "0nbbrz3p4ms6vpl272q6fimqvizryw2a8mnfqcn69xf03sz5204y"; }; patches = [ @@ -22,10 +22,7 @@ stdenv.mkDerivation rec { ./disable-test-gpg-verify-result.patch # Tests access the helper using relative path # https://github.com/ostreedev/ostree/issues/1593 - (fetchpatch { - url = https://github.com/ostreedev/ostree/pull/1633.patch; - sha256 = "07xiw1dr7j4yw3w92qhw37f9crlglibflcqj2kf0v5gfrl9i6g4j"; - }) + ./01-Drop-ostree-trivial-httpd-CLI-move-to-tests-director.patch ]; nativeBuildInputs = [ diff --git a/pkgs/tools/misc/ostree/disable-test-gpg-verify-result.patch b/pkgs/tools/misc/ostree/disable-test-gpg-verify-result.patch index d3ef7e08357ab..8da2fb82dd0ee 100644 --- a/pkgs/tools/misc/ostree/disable-test-gpg-verify-result.patch +++ b/pkgs/tools/misc/ostree/disable-test-gpg-verify-result.patch @@ -1,12 +1,12 @@ -diff -aur --no-dereference a/Makefile-tests.am b/Makefile-tests.am ---- a/Makefile-tests.am 1970-01-01 01:00:01.000000000 +0100 -+++ b/Makefile-tests.am 2018-09-17 00:24:11.977841113 +0200 -@@ -243,7 +243,7 @@ +diff --git a/Makefile-tests.am b/Makefile-tests.am +index b11fde89..82937a67 100644 +--- a/Makefile-tests.am ++++ b/Makefile-tests.am +@@ -245,7 +245,6 @@ endif _installed_or_uninstalled_test_programs = tests/test-varint tests/test-ot-unix-utils tests/test-bsdiff tests/test-mutable-tree \ tests/test-keyfile-utils tests/test-ot-opt-utils tests/test-ot-tool-util \ - tests/test-gpg-verify-result tests/test-checksum tests/test-lzma tests/test-rollsum \ -+ tests/test-checksum tests/test-lzma tests/test-rollsum \ tests/test-basic-c tests/test-sysroot-c tests/test-pull-c tests/test-repo tests/test-include-ostree-h - if USE_AVAHI + if USE_LIBSOUP diff --git a/pkgs/tools/misc/ostree/fix-1592.patch b/pkgs/tools/misc/ostree/fix-1592.patch index f26a924c0d833..1eccd74bfa7de 100644 --- a/pkgs/tools/misc/ostree/fix-1592.patch +++ b/pkgs/tools/misc/ostree/fix-1592.patch @@ -1,6 +1,7 @@ -diff -aur --no-dereference a/tests/pull-test.sh b/tests/pull-test.sh ---- a/tests/pull-test.sh 1970-01-01 01:00:01.000000000 +0100 -+++ b/tests/pull-test.sh 2018-09-16 23:55:44.214593856 +0200 +diff --git a/tests/pull-test.sh b/tests/pull-test.sh +index a8bc49a9..4a08ebb5 100644 +--- a/tests/pull-test.sh ++++ b/tests/pull-test.sh @@ -275,7 +275,7 @@ if ${CMD_PREFIX} ostree --repo=mirrorrepo-local pull-local otherrepo 2>err.txt; then fatal "pull with mixed refs succeeded?" @@ -19,23 +20,62 @@ diff -aur --no-dereference a/tests/pull-test.sh b/tests/pull-test.sh echo "ok pull-local nonexistent branch" cd ${test_tmpdir} -@@ -587,5 +587,5 @@ +@@ -593,5 +593,5 @@ if ${CMD_PREFIX} ostree --repo=repo pull origin main 2>err.txt; then fatal "pull of invalid ref succeeded" fi -assert_file_has_content_literal err.txt 'error: Fetching checksum for ref ((empty), main): Invalid rev lots of html here lots of html here lots of html here lots of' +assert_file_has_content_literal err.txt 'Fetching checksum for ref ((empty), main): Invalid rev lots of html here lots of html here lots of html here lots of' echo "ok pull got HTML for a ref" -diff -aur --no-dereference a/tests/test-fsck-collections.sh b/tests/test-fsck-collections.sh ---- a/tests/test-fsck-collections.sh 1970-01-01 01:00:01.000000000 +0100 -+++ b/tests/test-fsck-collections.sh 2018-09-17 02:22:48.922502037 +0200 +diff --git a/tests/test-config.sh b/tests/test-config.sh +index 7e913d32..69d1675d 100755 +--- a/tests/test-config.sh ++++ b/tests/test-config.sh +@@ -46,7 +46,7 @@ + if ${CMD_PREFIX} ostree config --repo=repo get --group=core lock-timeout-secs extra 2>err.txt; then + assert_not_reached "ostree config get should error out if too many arguments are given" + fi +-assert_file_has_content err.txt "error: Too many arguments given" ++assert_file_has_content err.txt "Too many arguments given" + echo "ok config get" + + ${CMD_PREFIX} ostree config --repo=repo set core.mode bare-user-only +@@ -63,7 +63,7 @@ + if ${CMD_PREFIX} ostree config --repo=repo set --group=core lock-timeout-secs 120 extra 2>err.txt; then + assert_not_reached "ostree config set should error out if too many arguments are given" + fi +-assert_file_has_content err.txt "error: Too many arguments given" ++assert_file_has_content err.txt "Too many arguments given" + echo "ok config set" + + # Check that "ostree config unset" works +@@ -78,7 +78,7 @@ + fi + # Check for any character where quotation marks would be as they appear differently in the Fedora and Debian + # test suites (“” and '' respectively). See: https://github.com/ostreedev/ostree/pull/1839 +-assert_file_has_content err.txt "error: Key file does not have key .lock-timeout-secs. in group .core." ++assert_file_has_content err.txt "Key file does not have key .lock-timeout-secs. in group .core." + + # Check that it's idempotent + ${CMD_PREFIX} ostree config --repo=repo unset core.lock-timeout-secs +@@ -95,5 +95,5 @@ + if ${CMD_PREFIX} ostree config --repo=repo unset core.lock-timeout-secs extra 2>err.txt; then + assert_not_reached "ostree config unset should error out if too many arguments are given" + fi +-assert_file_has_content err.txt "error: Too many arguments given" ++assert_file_has_content err.txt "Too many arguments given" + echo "ok config unset" +diff --git a/tests/test-fsck-collections.sh b/tests/test-fsck-collections.sh +index dc6bcfeb..4a5eef55 100755 +--- a/tests/test-fsck-collections.sh ++++ b/tests/test-fsck-collections.sh @@ -100,7 +100,7 @@ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-bindings > fsck 2> fsck-error; then assert_not_reached "fsck unexpectedly succeeded after adding unbound ref!" fi -assert_file_has_content fsck-error "Commit has no requested ref ‘new-ref’ in ref binding metadata (‘ref1’)" +assert_file_has_content fsck-error "Commit has no requested ref .new-ref. in ref binding metadata (.ref1.)" - assert_file_has_content fsck "^Validating refs...$" + assert_file_has_content fsck "^Validating refs\.\.\.$" echo "ok 3 fsck detects missing ref bindings" @@ -113,7 +113,7 @@ @@ -44,26 +84,26 @@ diff -aur --no-dereference a/tests/test-fsck-collections.sh b/tests/test-fsck-co fi -assert_file_has_content fsck-error "Commit has no requested ref ‘new-ref’ in ref binding metadata (‘ref1’)" +assert_file_has_content fsck-error "Commit has no requested ref .new-ref. in ref binding metadata (.ref1.)" - assert_file_has_content fsck "^Validating refs...$" - assert_file_has_content fsck "^Validating refs in collections...$" + assert_file_has_content fsck "^Validating refs\.\.\.$" + assert_file_has_content fsck "^Validating refs in collections\.\.\.$" @@ -127,7 +127,7 @@ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-bindings > fsck 2> fsck-error; then assert_not_reached "fsck unexpectedly succeeded after adding unbound ref!" fi --assert_file_has_content fsck-error "Commit has collection ID ‘org.example.Collection’ in collection binding metadata, while the remote it came from has collection ID ‘org.example.Collection2’" -+assert_file_has_content fsck-error "Commit has collection ID .org.example.Collection. in collection binding metadata, while the remote it came from has collection ID .org.example.Collection2." - assert_file_has_content fsck "^Validating refs...$" - assert_file_has_content fsck "^Validating refs in collections...$" +-assert_file_has_content fsck-error "Commit has collection ID ‘org\.example\.Collection’ in collection binding metadata, while the remote it came from has collection ID ‘org\.example\.Collection2’" ++assert_file_has_content fsck-error "Commit has collection ID .org\.example\.Collection. in collection binding metadata, while the remote it came from has collection ID .org\.example\.Collection2." + assert_file_has_content fsck "^Validating refs\.\.\.$" + assert_file_has_content fsck "^Validating refs in collections\.\.\.$" @@ -147,7 +147,7 @@ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-back-refs > fsck 2> fsck-error; then assert_not_reached "fsck unexpectedly succeeded after adding unbound ref!" fi --assert_file_has_content fsck-error "Collection–ref (org.example.Collection, ref1) in bindings for commit .* does not exist" -+assert_file_has_content fsck-error 'Collection.ref (org.example.Collection, ref1) in bindings for commit .* does not exist' - assert_file_has_content fsck "^Validating refs...$" - assert_file_has_content fsck "^Validating refs in collections...$" +-assert_file_has_content fsck-error "Collection–ref (org\.example\.Collection, ref1) in bindings for commit .* does not exist" ++assert_file_has_content fsck-error 'Collection.ref (org\.example\.Collection, ref1) in bindings for commit .* does not exist' + assert_file_has_content fsck "^Validating refs\.\.\.$" + assert_file_has_content fsck "^Validating refs in collections\.\.\.$" @@ -186,7 +186,7 @@ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-bindings > fsck 2> fsck-error; then @@ -71,7 +111,7 @@ diff -aur --no-dereference a/tests/test-fsck-collections.sh b/tests/test-fsck-co fi -assert_file_has_content fsck-error "Commit has no requested ref ‘new-ref’ in ref binding metadata (‘ref3’, ‘ref4’)" +assert_file_has_content fsck-error "Commit has no requested ref .new-ref. in ref binding metadata (.ref3., .ref4.)" - assert_file_has_content fsck "^Validating refs...$" + assert_file_has_content fsck "^Validating refs\.\.\.$" echo "ok 9 fsck detects missing ref bindings" @@ -205,7 +205,7 @@ @@ -80,12 +120,13 @@ diff -aur --no-dereference a/tests/test-fsck-collections.sh b/tests/test-fsck-co fi -assert_file_has_content fsck-error "Ref ‘ref3’ in bindings for commit .* does not exist" +assert_file_has_content fsck-error 'Ref .ref3. in bindings for commit .* does not exist' - assert_file_has_content fsck "^Validating refs...$" + assert_file_has_content fsck "^Validating refs\.\.\.$" echo "ok 11 fsck ignores unreferenced ref bindings" -diff -aur --no-dereference a/tests/test-remote-add.sh b/tests/test-remote-add.sh ---- a/tests/test-remote-add.sh 1970-01-01 01:00:01.000000000 +0100 -+++ b/tests/test-remote-add.sh 2018-09-17 00:14:16.486788225 +0200 +diff --git a/tests/test-remote-add.sh b/tests/test-remote-add.sh +index bb7eae89..62a3bcd7 100755 +--- a/tests/test-remote-add.sh ++++ b/tests/test-remote-add.sh @@ -83,7 +83,7 @@ if $OSTREE remote delete nosuchremote 2>err.txt; then assert_not_reached "Deleting remote unexpectedly succeeded" diff --git a/pkgs/tools/misc/rpm-ostree/default.nix b/pkgs/tools/misc/rpm-ostree/default.nix index 0680f360209c9..409e65dff7739 100644 --- a/pkgs/tools/misc/rpm-ostree/default.nix +++ b/pkgs/tools/misc/rpm-ostree/default.nix @@ -1,15 +1,15 @@ { stdenv, fetchurl, ostree, rpm, which, autoconf, automake, libtool, pkgconfig, cargo, rustc, gobject-introspection, gtk-doc, libxml2, libxslt, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_43, gperf, cmake, libcap, glib, systemd, json-glib, libarchive, libsolv, librepo, polkit, - bubblewrap, pcre, check, python }: + bubblewrap, pcre, check, python, json_c, libmodulemd_1, utillinux, sqlite, cppunit }: stdenv.mkDerivation rec { pname = "rpm-ostree"; - version = "2019.2"; + version = "2019.5"; src = fetchurl { url = "https://github.com/projectatomic/${pname}/releases/download/v${version}/${pname}-${version}.tar.xz"; - sha256 = "0sxjlcq15avb0fv6v89z2xrqv095dck4k5s9f0pk6y7sm063n2pk"; + sha256 = "0innbrjj086mslbf55bcvs9a3rv9hg1y2nhzxdjy3nhpqxqlzdnn"; }; patches = [ @@ -28,6 +28,8 @@ stdenv.mkDerivation rec { libcap ostree rpm glib systemd polkit bubblewrap json-glib libarchive libsolv librepo pcre check python + # libdnf + json_c libmodulemd_1 utillinux sqlite cppunit ]; configureFlags = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c2df042eae22e..75ba59e8079ff 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12348,6 +12348,9 @@ in libvdpau = callPackage ../development/libraries/libvdpau { }; + libmodulemd = callPackage ../development/libraries/libmodulemd { }; + libmodulemd_1 = callPackage ../development/libraries/libmodulemd/1.nix { }; + libvdpau-va-gl = callPackage ../development/libraries/libvdpau-va-gl { }; libversion = callPackage ../development/libraries/libversion { }; |