From 43e4e52dfd320b3922108fbdd8d0e6c8e12bccf8 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Tue, 21 Mar 2023 16:33:00 +0000 Subject: gnu: guix-build-coordinator: Update to 0-74.804165f. * gnu/packages/package-management.scm (guix-build-coordinator): Update to 0-74.804165f. --- gnu/packages/package-management.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index d27c8a91ef..42066a1b61 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1363,8 +1363,8 @@ (define-public gwl/next "0k9zkdyyzir3fvlbcfcqy17k28b51i20rpbjwlx2i1mwd2pw9cxc"))))))) (define-public guix-build-coordinator - (let ((commit "7c1eedfba9ef5ccc5651cd5e88662c158e594a2c") - (revision "73")) + (let ((commit "804165f14ccf613b7d76b2bda83fbfd49019f7e4") + (revision "74")) (package (name "guix-build-coordinator") (version (git-version "0" revision commit)) @@ -1375,7 +1375,7 @@ (define-public guix-build-coordinator (commit commit))) (sha256 (base32 - "1prsxj3n8ggv28fqk00yvnbvy0da0lq6m553fs636s8b2yjka8nj")) + "0qga8a7795cig211hya53qjvd2bxcpabpz8izc8zxrmz490wz24j")) (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -1455,7 +1455,7 @@ (define-public guix-build-coordinator guile-gcrypt guix guile-prometheus - guile-fibers-1.1 + guile-fibers-next guile-lib (first (assoc-ref (package-native-inputs guix) "guile")))) (inputs @@ -1479,7 +1479,7 @@ (define-public guix-build-coordinator guile-gnutls) (if (hurd-target?) '() - (list guile-fibers-1.1)))) + (list guile-fibers-next)))) (home-page "https://git.cbaines.net/guix/build-coordinator/") (synopsis "Tool to help build derivations") (description -- cgit v1.2.3 From a08d3cba83d189f11446ea5484f6482b1f473230 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 22 Mar 2023 10:31:15 +0200 Subject: gnu: flatpak: Update to 1.14.4. * gnu/packages/package-management.scm (flatpak): Update to 1.14.4. --- gnu/packages/package-management.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 42066a1b61..abd60da798 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1901,14 +1901,14 @@ (define-public libostree (define-public flatpak (package (name "flatpak") - (version "1.14.3") + (version "1.14.4") (source (origin (method url-fetch) (uri (string-append "https://github.com/flatpak/flatpak/releases/download/" version "/flatpak-" version ".tar.xz")) (sha256 - (base32 "1gpfax92kpchmbr3cp1w0cw5xjdwv11i1g3g9hp8akc9rc64gw2r")) + (base32 "16b7f7n2mms6zgm0lj3fn86ny11xjn8cd3mrk1slwhvwnv8dnd4a")) (patches (search-patches "flatpak-fix-path.patch" "flatpak-unset-gdk-pixbuf-for-sandbox.patch")))) -- cgit v1.2.3 From 66b2fd0d045ecd94ec3b13904f2a09f81d35e6cb Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 22 Mar 2023 10:39:26 +0200 Subject: gnu: flatpak: Honor the #:tests? flag. * gnu/packages/package-management.scm (flatpak)[arguments]: Adjust custom 'check phase to honor the #:tests? flag. --- gnu/packages/package-management.scm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index abd60da798..562d228cf4 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1959,10 +1959,12 @@ (define-public flatpak ;; Many tests fail for unknown reasons, so we just run a few basic ;; tests. (replace 'check - (lambda _ - (setenv "HOME" "/tmp") - (invoke "make" "check" - "TESTS=tests/test-basic.sh tests/test-config.sh testcommon")))))) + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "HOME" "/tmp") + (invoke "make" "check" + "TESTS=tests/test-basic.sh tests/test-config.sh + testcommon"))))))) (native-inputs (list bison dbus ; for dbus-daemon -- cgit v1.2.3 From c26687de41b248d9b530b83eaa58033bd65db5ab Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Fri, 24 Mar 2023 14:27:42 +0000 Subject: gnu: guix-build-coordinator: Update to 0-75.d6ae42f. * gnu/packages/package-management.scm (guix-build-coordinator): Update to 0-75.d6ae42f. --- gnu/packages/package-management.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 562d228cf4..bb7b0a95f3 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1363,8 +1363,8 @@ (define-public gwl/next "0k9zkdyyzir3fvlbcfcqy17k28b51i20rpbjwlx2i1mwd2pw9cxc"))))))) (define-public guix-build-coordinator - (let ((commit "804165f14ccf613b7d76b2bda83fbfd49019f7e4") - (revision "74")) + (let ((commit "d6ae42f19691267d915cd66174436f33debabec0") + (revision "75")) (package (name "guix-build-coordinator") (version (git-version "0" revision commit)) @@ -1375,7 +1375,7 @@ (define-public guix-build-coordinator (commit commit))) (sha256 (base32 - "0qga8a7795cig211hya53qjvd2bxcpabpz8izc8zxrmz490wz24j")) + "0rd1bhlx7a78wd4c0zifwc8b4wm497y0z6dw19r7d47s4l63w35m")) (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) (arguments -- cgit v1.2.3 From 8a1fe39320bc6db61261d82a56d2c6e95e4b9887 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 27 Mar 2023 16:34:49 +0100 Subject: gnu: guix-build-coordinator: Update to 0-76.3c9354e. * gnu/packages/package-management.scm (guix-build-coordinator): Update to 0-76.3c9354e [arguments]: Fix reference to guile-fibers. --- gnu/packages/package-management.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index bb7b0a95f3..b439f9326c 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1363,8 +1363,8 @@ (define-public gwl/next "0k9zkdyyzir3fvlbcfcqy17k28b51i20rpbjwlx2i1mwd2pw9cxc"))))))) (define-public guix-build-coordinator - (let ((commit "d6ae42f19691267d915cd66174436f33debabec0") - (revision "75")) + (let ((commit "3c9354e1c0b0767e0121ecbd03abfe37c895e34b") + (revision "76")) (package (name "guix-build-coordinator") (version (git-version "0" revision commit)) @@ -1375,7 +1375,7 @@ (define-public guix-build-coordinator (commit commit))) (sha256 (base32 - "0rd1bhlx7a78wd4c0zifwc8b4wm497y0z6dw19r7d47s4l63w35m")) + "19gc4ya56inxnjpf1br2sdva0k4jyc1jn5q84qdfpiwn1ryb0jjd")) (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -1414,7 +1414,7 @@ (define-public guix-build-coordinator "guile-gnutls" ,@(if (hurd-target?) '() - '("guile-fibers"))))) + '("guile-fibers-next"))))) (wrap-program file `("PATH" ":" prefix (,bin -- cgit v1.2.3 From 7e5c0dc8746c673a31266394987ec026cd99bb24 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 13 Mar 2023 22:28:36 -0400 Subject: gnu: Add fpm. * gnu/packages/package-management.scm (fpm): New variable. * gnu/packages/patches/fpm-newer-clamp-fix.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/package-management.scm | 86 ++++++++++++++++++++++++++ gnu/packages/patches/fpm-newer-clamp-fix.patch | 33 ++++++++++ 3 files changed, 120 insertions(+) create mode 100644 gnu/packages/patches/fpm-newer-clamp-fix.patch (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/local.mk b/gnu/local.mk index 52be2b1bab..74114a2ba4 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1136,6 +1136,7 @@ dist_patch_DATA = \ %D%/packages/patches/fp16-implicit-double.patch \ %D%/packages/patches/fp16-system-libraries.patch \ %D%/packages/patches/fpc-reproducibility.patch \ + %D%/packages/patches/fpm-newer-clamp-fix.patch \ %D%/packages/patches/freedink-engine-fix-sdl-hints.patch \ %D%/packages/patches/freeimage-unbundle.patch \ %D%/packages/patches/fuse-glibc-2.34.patch \ diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index b439f9326c..537d01e164 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -59,6 +59,7 @@ (define-module (gnu packages package-management) #:use-module (gnu packages crypto) #:use-module (gnu packages curl) #:use-module (gnu packages databases) + #:use-module (gnu packages debian) #:use-module (gnu packages dejagnu) #:use-module (gnu packages dbm) #:use-module (gnu packages docbook) @@ -87,6 +88,7 @@ (define-module (gnu packages package-management) #:use-module (gnu packages nettle) #:use-module (gnu packages networking) #:use-module (gnu packages ninja) + #:use-module (gnu packages node) #:use-module (gnu packages nss) #:use-module (gnu packages patchutils) #:use-module (gnu packages perl) @@ -98,6 +100,7 @@ (define-module (gnu packages package-management) #:use-module (gnu packages python-check) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages ruby) #:use-module (gnu packages serialization) #:use-module (gnu packages sqlite) #:use-module (gnu packages ssh) @@ -117,6 +120,7 @@ (define-module (gnu packages package-management) #:use-module (guix build-system guile) #:use-module (guix build-system meson) #:use-module (guix build-system python) + #:use-module (guix build-system ruby) #:use-module (guix build-system trivial) #:use-module (guix download) #:use-module (guix gexp) @@ -2005,6 +2009,88 @@ (define-public flatpak sandboxed desktop applications on GNU/Linux.") (license license:lgpl2.1+))) +(define-public fpm + (package + (name "fpm") + (version "1.15.1") + (source (origin + (method git-fetch) ;for tests + (uri (git-reference + (url "https://github.com/jordansissel/fpm") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1m2zxf7wyk7psvm611yxs68hnwm0pyqilsmcq3x791hz7rvbg68w")) + (patches (search-patches "fpm-newer-clamp-fix.patch")))) + (build-system ruby-build-system) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-after 'extract-gemspec 'patch-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* '("lib/fpm/util.rb" + "spec/fpm/util_spec.rb" + "spec/fpm/package/rpm_spec.rb") + (("\"/bin/sh\"") + (string-append "\"" (search-input-file inputs "bin/sh") + "\""))))) + (add-after 'extract-gemspec 'relax-requirements + (lambda _ + (substitute* "fpm.gemspec" + (("\"clamp\", \"~> 1.0.0\"") + "\"clamp\", \">= 1.0.0\"")))) + (add-after 'extract-gemspec 'disable-problematic-tests + ;; Disable some tests which are failing (see: + ;; https://github.com/jordansissel/fpm/issues/2000). + (lambda _ + ;; There are 4 'NoMethodError' test failures in the + ;; command_spec suite, for unknown reasons. + (delete-file "spec/fpm/command_spec.rb") + (substitute* "spec/fpm/package_spec.rb" + (("@oldtmp = ENV\\[\"TMP\"]" all) + "skip('fails with guix')")) + (substitute* "spec/fpm/package/cpan_spec.rb" + ;; This test is marked as expected to fail (pending) when + ;; TRAVIS_OS_NAME is set, but passes with Guix; skip it. + (("it \"should unpack tarball containing" all) + (string-append "x" all))) + (substitute* "spec/fpm/package/gem_spec.rb" + ;; This test fails for unknown reason; perhaps a patched + ;; shebang. + (("it 'should not change the shebang'" all) + (string-append "x" all))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + ;; Set TRAVIS_OS_NAME to skip tests known to cause + ;; problems in minimal environments. + (setenv "TRAVIS_OS_NAME" "GNU Guix") + (invoke "rspec"))))))) + (native-inputs + (list dpkg + libarchive + node + perl-app-cpanminus + python + ruby-rspec + squashfs-tools + zstd)) + (inputs + (list bash-minimal + ruby-arr-pm + ruby-backports + ruby-cabin + ruby-clamp + ruby-pleaserun + ruby-rexml + ruby-stud)) + (home-page "https://github.com/jordansissel/fpm/") + (synopsis "Package building and mangling tool") + (description "@command{fpm} is a command to convert directories, RPMs, +Python eggs, Ruby gems, and more to RPMs, debs, Solaris packages and more.") + (license license:expat))) + (define-public akku (package (name "akku") diff --git a/gnu/packages/patches/fpm-newer-clamp-fix.patch b/gnu/packages/patches/fpm-newer-clamp-fix.patch new file mode 100644 index 0000000000..9fbb15ee29 --- /dev/null +++ b/gnu/packages/patches/fpm-newer-clamp-fix.patch @@ -0,0 +1,33 @@ +Retrieved from: https://github.com/jordansissel/fpm/pull/1561.patch + +From 956a218a7b35de08ea35da3b702ffdc716656b68 Mon Sep 17 00:00:00 2001 +From: Jordan Sissel +Date: Mon, 15 Oct 2018 21:05:47 -0700 +Subject: [PATCH] Check if an option has a default value before we try to look + it up. + +This fixes fpm when used with clamp 1.3.0 or above. + +Fixes #1543 +--- + lib/fpm/command.rb | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/lib/fpm/command.rb b/lib/fpm/command.rb +index a204001e1..a99ddb627 100644 +--- a/lib/fpm/command.rb ++++ b/lib/fpm/command.rb +@@ -394,7 +394,12 @@ def execute + set = proc do |object, attribute| + # if the package's attribute is currently nil *or* the flag setting for this + # attribute is non-default, use the value. +- if object.send(attribute).nil? || send(attribute) != send("default_#{attribute}") ++ ++ # Not all options have a default value, so we assume `nil` if there's no default. (#1543) ++ # In clamp >= 1.3.0, options without `:default => ..` will not have any # `default_xyz` ++ # methods generated, so we need to check for the presence of this method first. ++ default = respond_to?("default_#{attribute}") ? send("default_#{attribute}") : nil ++ if object.send(attribute).nil? || send(attribute) != default + logger.info("Setting from flags: #{attribute}=#{send(attribute)}") + object.send("#{attribute}=", send(attribute)) + end -- cgit v1.2.3 From 57c3662ddda134712798b4e642058b7b4fdf6cf2 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 30 Mar 2023 08:23:40 -0400 Subject: gnu: conan: Use gexps and remove input labels. * gnu/packages/package-management.scm (conan) [arguments]: Use gexps. Use search-input-file in patch-paths phase. [native-inputs]: Remove labels. --- gnu/packages/package-management.scm | 220 ++++++++++++++++++------------------ 1 file changed, 110 insertions(+), 110 deletions(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 537d01e164..dd7341fbab 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1150,101 +1150,101 @@ (define-public conan "1jjrinz5wkcxfvwdpldrv4h7vacdyz88cc4af5vi3sdnjra0i0m5")))) (build-system python-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'relax-requirements - (lambda _ - (substitute* "conans/requirements.txt" - (("node-semver==0.6.1") - "node-semver>=0.6.1") - (("Jinja2>=2.9, <3") - "Jinja2>=2.9") - (("PyYAML>=3.11, <6.0") - "PyYAML")))) - (add-after 'unpack 'patch-paths - (lambda* (#:key inputs #:allow-other-keys) - (let ((coreutils (assoc-ref inputs "coreutils"))) - ;; It seems that PATH is manipulated, as printenv is not found - ;; during tests. Patch in its exact location. - (substitute* "conan/tools/env/environment.py" - (("printenv") - (string-append coreutils "/bin/printenv"))) - (substitute* "conans/client/envvars/environment.py" - (("#!/usr/bin/env") - (string-append "#!" coreutils "/bin/env")))))) - (add-before 'check 'set-home - (lambda _ - (setenv "HOME" "/tmp"))) - (replace 'check - (lambda* (#:key tests? outputs #:allow-other-keys) - (define system ,(or (%current-target-system) - (%current-system))) - (when tests? - (setenv "PATH" (string-append (getenv "PATH") ":" - (assoc-ref outputs "out") "/bin")) - (invoke "python" "-m" "pytest" - "-n" "auto" ;parallelize tests - "-m" "not slow and not tool_svn" - ;; Disable problematic tests. - "-k" - (string-append - ;; These tests rely on networking. - "not shallow_clone_remote " - "and not remote_build " - "and not download_retries_errors " - "and not ftp " - "and not build_local_different_folders " - ;; These expect CMake available at fixed versions. - "and not custom_cmake " - "and not default_cmake " - "and not bazel " ;bazel is not packaged - ;; Guix sets PKG_CONFIG_PATH itself, which is not - ;; expected by the following test. - "and not pkg_config_path " - "and not compare " ;caused by newer node-semver? - ;; Guix is not currently a supported package manager. - "and not system_package_tool " - ;; These expect GCC 5 to be available. - "and not test_reuse " - "and not test_install " - ;; The installed configure script trips on the /bin/sh - ;; shebang. We'd have to patch it in the Python code. - "and not test_autotools " - "and not test_use_build_virtualenv " - ;; This test is architecture-dependent. - "and not test_toolchain_linux " - ;; This one fails for unknown reasons (see: - ;; https://github.com/conan-io/conan/issues/9671). - "and not test_build " - ;; These tests expect the 'apt' command to be available. - "and not test_apt_check " - "and not test_apt_install_substitutes " - (if (not (string-prefix? "x86_64" system)) - ;; These tests either assume the machine is - ;; x86_64, or require a cross-compiler to target - ;; it. - (string-append - "and not cpp_package " - "and not exclude_code_analysis " - "and not cmakedeps_multi " - "and not locally_build_linux " - "and not custom_configuration " - "and not package_from_system " - "and not cross_build_command " - "and not test_package " - "and not test_deleted_os " - "and not test_same ") - "") - (if (not (or (string-prefix? "x86_64" system) - (string-prefix? "i686" system))) - ;; These tests either assume the machine is i686, - ;; or require a cross-compiler to target it. - (string-append - "and not vcvars_raises_when_not_found " - "and not conditional_generators " - "and not test_folders " - "and not settings_as_a_dict_conanfile ") - ""))))))))) + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'relax-requirements + (lambda _ + (substitute* "conans/requirements.txt" + (("node-semver==0.6.1") + "node-semver>=0.6.1") + (("Jinja2>=2.9, <3") + "Jinja2>=2.9") + (("PyYAML>=3.11, <6.0") + "PyYAML")))) + (add-after 'unpack 'patch-paths + (lambda* (#:key inputs #:allow-other-keys) + ;; It seems that PATH is manipulated, as printenv is not found + ;; during tests. Patch in its exact location. + (substitute* "conan/tools/env/environment.py" + (("printenv") + (search-input-file inputs "bin/printenv"))) + (substitute* "conans/client/envvars/environment.py" + (("#!/usr/bin/env") + (string-append "#!" (search-input-file inputs "bin/env")))))) + (add-before 'check 'set-home + (lambda _ + (setenv "HOME" "/tmp"))) + (replace 'check + (lambda* (#:key tests? outputs #:allow-other-keys) + (define system #$(or (%current-target-system) + (%current-system))) + (when tests? + (setenv "PATH" (string-append (getenv "PATH") ":" + #$output "/bin")) + (invoke "python" "-m" "pytest" + "-n" "auto" ;parallelize tests + "-m" "not slow and not tool_svn" + ;; Disable problematic tests. + "-k" + (string-append + ;; These tests rely on networking. + "not shallow_clone_remote " + "and not remote_build " + "and not download_retries_errors " + "and not ftp " + "and not build_local_different_folders " + ;; These expect CMake available at fixed versions. + "and not custom_cmake " + "and not default_cmake " + "and not bazel " ;bazel is not packaged + ;; Guix sets PKG_CONFIG_PATH itself, which is not + ;; expected by the following test. + "and not pkg_config_path " + "and not compare " ;caused by newer node-semver? + ;; Guix is not currently a supported package manager. + "and not system_package_tool " + ;; These expect GCC 5 to be available. + "and not test_reuse " + "and not test_install " + ;; The installed configure script trips on the /bin/sh + ;; shebang. We'd have to patch it in the Python code. + "and not test_autotools " + "and not test_use_build_virtualenv " + ;; This test is architecture-dependent. + "and not test_toolchain_linux " + ;; This one fails for unknown reasons (see: + ;; https://github.com/conan-io/conan/issues/9671). + "and not test_build " + ;; These tests expect the 'apt' command to be available. + "and not test_apt_check " + "and not test_apt_install_substitutes " + (if (not (string-prefix? "x86_64" system)) + ;; These tests either assume the machine is + ;; x86_64, or require a cross-compiler to target + ;; it. + (string-append + "and not cpp_package " + "and not exclude_code_analysis " + "and not cmakedeps_multi " + "and not locally_build_linux " + "and not custom_configuration " + "and not package_from_system " + "and not cross_build_command " + "and not test_package " + "and not test_deleted_os " + "and not test_same ") + "") + (if (not (or (string-prefix? "x86_64" system) + (string-prefix? "i686" system))) + ;; These tests either assume the machine is i686, + ;; or require a cross-compiler to target it. + (string-append + "and not vcvars_raises_when_not_found " + "and not conditional_generators " + "and not test_folders " + "and not settings_as_a_dict_conanfile ") + ""))))))))) (propagated-inputs (list python-bottle python-colorama @@ -1264,22 +1264,22 @@ (define system ,(or (%current-target-system) python-tqdm python-urllib3)) (inputs - (list coreutils)) ;for printenv + (list coreutils)) ;for printenv (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("cmake" ,cmake) - ("git" ,git-minimal) - ("meson" ,meson) - ("ninja",ninja) - ("pkg-config" ,pkg-config) - ("python-bottle" ,python-bottle) - ("python-mock" ,python-mock) - ("python-parameterized" ,python-parameterized) - ("python-pytest" ,python-pytest) - ("python-pytest-xdist" ,python-pytest-xdist) - ("python-webtest" ,python-webtest) - ("which" ,which))) + (list autoconf + automake + cmake + git-minimal + meson + ninja + pkg-config + python-bottle + python-mock + python-parameterized + python-pytest + python-pytest-xdist + python-webtest + which)) (home-page "https://conan.io") (synopsis "Decentralized C/C++ package manager") (description "Conan is a package manager for C and C++ developers that -- cgit v1.2.3 From 7ceedc7df7d6f0d1209dee1eaa9c1dfe772ca0dd Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 30 Mar 2023 12:09:05 -0400 Subject: gnu: conan: Update to 2.0.2. * gnu/packages/package-management.scm (conan): Update to 2.0.2. [arguments]: Delete relax-requirements phase. Update patch-paths phase. Add new patch-hard-coded-GCC-references, use-current-cmake-for-tests and configure-tests phases. Update check phase. [native-inputs]: Replace autoconf with autoconf-wrapper. Add libtool. --- gnu/packages/package-management.scm | 99 ++++++++++++++++++------------------- 1 file changed, 48 insertions(+), 51 deletions(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index dd7341fbab..85f1ee0741 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1137,7 +1137,7 @@ (define-public conda (define-public conan (package (name "conan") - (version "1.50.0") + (version "2.0.2") (source (origin (method git-fetch) ;no tests in PyPI archive @@ -1147,31 +1147,50 @@ (define-public conan (file-name (git-file-name name version)) (sha256 (base32 - "1jjrinz5wkcxfvwdpldrv4h7vacdyz88cc4af5vi3sdnjra0i0m5")))) + "1y4qmqnw3s8xv64lgp388qpj9vqharyfqi5s8dxvgsns6cafv7lf")))) (build-system python-build-system) (arguments (list #:phases #~(modify-phases %standard-phases - (add-after 'unpack 'relax-requirements - (lambda _ - (substitute* "conans/requirements.txt" - (("node-semver==0.6.1") - "node-semver>=0.6.1") - (("Jinja2>=2.9, <3") - "Jinja2>=2.9") - (("PyYAML>=3.11, <6.0") - "PyYAML")))) (add-after 'unpack 'patch-paths (lambda* (#:key inputs #:allow-other-keys) ;; It seems that PATH is manipulated, as printenv is not found ;; during tests. Patch in its exact location. (substitute* "conan/tools/env/environment.py" (("printenv") - (search-input-file inputs "bin/printenv"))) - (substitute* "conans/client/envvars/environment.py" - (("#!/usr/bin/env") - (string-append "#!" (search-input-file inputs "bin/env")))))) + (search-input-file inputs "bin/printenv"))))) + (add-after 'unpack 'patch-hard-coded-GCC-references + (lambda _ + ;; The test suite expects GCC 9 to be used (see: + ;; https://github.com/conan-io/conan/issues/13575). Render the + ;; check version agnostic. + (substitute* "conans/test/functional/toolchains/meson/_base.py" + (("__GNUC__9") + "__GNUC__")))) + (add-after 'unpack 'use-current-cmake-for-tests + (lambda _ + (substitute* (find-files "conans/test" "\\.py$") + (("@pytest.mark.tool\\(\"cmake\", \"3.23\")") + "@pytest.mark.tool(\"cmake\")")))) + (add-before 'check 'configure-tests + (lambda _ + (call-with-output-file "conans/test/conftest_user.py" + (lambda (port) + (format port "\ +tools_locations = { + 'apt_get': {'disabled': True}, + 'bazel': {'disabled': True}, + 'cmake': {'default': '3.25', + '3.15': {'disabled': True}, + '3.16': {'disabled': True}, + '3.17': {'disabled': True}, + '3.19': {'disabled': True}, + '3.25': {}}, + 'pkg_config': {'exe': 'pkg-config', + 'default': '0.29', + '0.29': {}}, + 'svn': {'disabled': True}}~%"))))) (add-before 'check 'set-home (lambda _ (setenv "HOME" "/tmp"))) @@ -1180,45 +1199,27 @@ (define-public conan (define system #$(or (%current-target-system) (%current-system))) (when tests? + (setenv "CONFIG_SHELL" (which "sh")) (setenv "PATH" (string-append (getenv "PATH") ":" #$output "/bin")) (invoke "python" "-m" "pytest" - "-n" "auto" ;parallelize tests - "-m" "not slow and not tool_svn" + "-n" (number->string (parallel-job-count)) + "-m" "not slow" ;; Disable problematic tests. "-k" (string-append ;; These tests rely on networking. - "not shallow_clone_remote " - "and not remote_build " - "and not download_retries_errors " + "not download_retries_errors " "and not ftp " - "and not build_local_different_folders " - ;; These expect CMake available at fixed versions. - "and not custom_cmake " - "and not default_cmake " - "and not bazel " ;bazel is not packaged ;; Guix sets PKG_CONFIG_PATH itself, which is not ;; expected by the following test. "and not pkg_config_path " "and not compare " ;caused by newer node-semver? - ;; Guix is not currently a supported package manager. - "and not system_package_tool " - ;; These expect GCC 5 to be available. - "and not test_reuse " - "and not test_install " - ;; The installed configure script trips on the /bin/sh - ;; shebang. We'd have to patch it in the Python code. - "and not test_autotools " - "and not test_use_build_virtualenv " - ;; This test is architecture-dependent. - "and not test_toolchain_linux " - ;; This one fails for unknown reasons (see: - ;; https://github.com/conan-io/conan/issues/9671). - "and not test_build " - ;; These tests expect the 'apt' command to be available. - "and not test_apt_check " - "and not test_apt_install_substitutes " + ;; These tests fail when Autoconf attempt to load a + ;; shared library in the same directory (see: + ;; https://github.com/conan-io/conan/issues/13577). + "and not test_other_client_can_link_autotools " + "and not test_autotools_lib_template " (if (not (string-prefix? "x86_64" system)) ;; These tests either assume the machine is ;; x86_64, or require a cross-compiler to target @@ -1232,18 +1233,13 @@ (define system #$(or (%current-target-system) "and not package_from_system " "and not cross_build_command " "and not test_package " - "and not test_deleted_os " "and not test_same ") "") (if (not (or (string-prefix? "x86_64" system) (string-prefix? "i686" system))) - ;; These tests either assume the machine is i686, - ;; or require a cross-compiler to target it. - (string-append - "and not vcvars_raises_when_not_found " - "and not conditional_generators " - "and not test_folders " - "and not settings_as_a_dict_conanfile ") + ;; This test only works with default arch "x86", + ;; "x86_64", "sparc" or "sparcv9". + "and not settings_as_a_dict_conanfile " ""))))))))) (propagated-inputs (list python-bottle @@ -1266,10 +1262,11 @@ (define system #$(or (%current-target-system) (inputs (list coreutils)) ;for printenv (native-inputs - (list autoconf + (list autoconf-wrapper automake cmake git-minimal + libtool meson ninja pkg-config -- cgit v1.2.3 From b8152d668d16faa464d2819af6f8ed4b2637538b Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 31 Mar 2023 09:48:51 -0400 Subject: gnu: conan: Do not hard-code package versions. * gnu/packages/package-management.scm (conan) [arguments]: Add #:modules argument. Avoid hard-coding package versions in configure-tests phase. --- gnu/packages/package-management.scm | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 85f1ee0741..43b6af1d15 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1151,6 +1151,9 @@ (define-public conan (build-system python-build-system) (arguments (list + #:modules '((guix build python-build-system) + (guix build utils) + (ice-9 format)) #:phases #~(modify-phases %standard-phases (add-after 'unpack 'patch-paths @@ -1175,22 +1178,26 @@ (define-public conan "@pytest.mark.tool(\"cmake\")")))) (add-before 'check 'configure-tests (lambda _ - (call-with-output-file "conans/test/conftest_user.py" - (lambda (port) - (format port "\ + (let* ((cmake-version #$(version-major+minor + (package-version cmake))) + (pkg-config-version #$(version-major+minor + (package-version pkg-config)))) + (call-with-output-file "conans/test/conftest_user.py" + (lambda (port) + (format port "\ tools_locations = { 'apt_get': {'disabled': True}, 'bazel': {'disabled': True}, - 'cmake': {'default': '3.25', + 'cmake': {'default': '~a', '3.15': {'disabled': True}, '3.16': {'disabled': True}, '3.17': {'disabled': True}, '3.19': {'disabled': True}, - '3.25': {}}, + '~:*~a': {}}, 'pkg_config': {'exe': 'pkg-config', - 'default': '0.29', - '0.29': {}}, - 'svn': {'disabled': True}}~%"))))) + 'default': '~a', + '~:*~a': {}}, + 'svn': {'disabled': True}}~%" cmake-version pkg-config-version)))))) (add-before 'check 'set-home (lambda _ (setenv "HOME" "/tmp"))) -- cgit v1.2.3 From 47ea688fd27d0ce0c8ea5481f1f94d0ebc3e37eb Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 31 Mar 2023 10:21:52 -0400 Subject: gnu: conan: Disable more flaky tests. * gnu/packages/package-management.scm (conan) [arguments]: Run test suite verbosely. Skip the test_toolchain and test_list tests. --- gnu/packages/package-management.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 43b6af1d15..29cb481862 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1209,7 +1209,7 @@ (define system #$(or (%current-target-system) (setenv "CONFIG_SHELL" (which "sh")) (setenv "PATH" (string-append (getenv "PATH") ":" #$output "/bin")) - (invoke "python" "-m" "pytest" + (invoke "python" "-m" "pytest" "-vv" "-n" (number->string (parallel-job-count)) "-m" "not slow" ;; Disable problematic tests. @@ -1222,6 +1222,12 @@ (define system #$(or (%current-target-system) ;; expected by the following test. "and not pkg_config_path " "and not compare " ;caused by newer node-semver? + ;; This test hard-codes a compiler version. + "and not test_toolchain " + ;; The 'test_list' tests may fail + ;; non-deterministically (see: + ;; https://github.com/conan-io/conan/issues/13583). + "and not test_list " ;; These tests fail when Autoconf attempt to load a ;; shared library in the same directory (see: ;; https://github.com/conan-io/conan/issues/13577). -- cgit v1.2.3 From b724c2592a4492a75246fb510b9ec54ccf472a37 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Thu, 13 Apr 2023 17:24:19 +0100 Subject: gnu: guix-build-coordinator: Update to 0-77.7f6db4b. * gnu/packages/package-management.scm (guix-build-coordinator): Update to 0-77.7f6db4b. --- gnu/packages/package-management.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu/packages/package-management.scm') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 29cb481862..f9032d60c3 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1377,8 +1377,8 @@ (define-public gwl/next "0k9zkdyyzir3fvlbcfcqy17k28b51i20rpbjwlx2i1mwd2pw9cxc"))))))) (define-public guix-build-coordinator - (let ((commit "3c9354e1c0b0767e0121ecbd03abfe37c895e34b") - (revision "76")) + (let ((commit "7f6db4b55411f79ab5f2639318dc5871c1452f00") + (revision "77")) (package (name "guix-build-coordinator") (version (git-version "0" revision commit)) @@ -1389,7 +1389,7 @@ (define-public guix-build-coordinator (commit commit))) (sha256 (base32 - "19gc4ya56inxnjpf1br2sdva0k4jyc1jn5q84qdfpiwn1ryb0jjd")) + "07pi5yjgagv0xyz9f5cnfz1c06gzx1mpi17h3a1w5h6lp3kwqrv9")) (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) (arguments -- cgit v1.2.3