summaryrefslogtreecommitdiff
path: root/guix/build
Commit message (Collapse)AuthorAge
* build: qt-utils: Don't wrap .X-real files.Brendan Tildesley2021-11-11
| | | | | | | * guix/build/qt-utils.scm (find-files-to-wrap): Exclude already wrapped programs. This is forbidden in wrap-program now due to a738a663a99. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* Merge remote-tracking branch 'origin/master' into core-updates-frozenEfraim Flashner2021-10-31
|\
| * syscalls: Gracefully handle failure to load libc's libutil.Ludovic Courtès2021-10-26
| | | | | | | | | | | | | | | | | | | | | | | | In particular, libutil is not found when running code on a statically-linked Guile. Reported by mahmooz on #guix. * guix/build/syscalls.scm (syscall->procedure): Add #:library parameter and honor it. (openpty, login-tty): Use 'syscall->procedure' instead of calling 'dynamic-link' directly.
| * syscalls: Add 'openpty' and 'login-tty'.Ludovic Courtès2021-10-26
| | | | | | | | | | * guix/build/syscalls.scm (openpty, login-pty): New procedures. * tests/syscalls.scm ("openpty", "openpty + login-tty"): New tests.
* | Merge remote-tracking branch 'signed/master' into core-updatesMathieu Othacehe2021-10-18
|\|
| * build-system/go: Fix building on host's secondary architecture.Efraim Flashner2021-10-18
| | | | | | | | | | | | | | | | | | | | | | Before when building for i686-linux on x86_64-linux GOARCH would be set to amd64, not 386. * guix/build-system/go.scm (go-build): Set goarch and goos to #f when not cross-compiling. * guix/build/go-build-system.scm (setup-go-environment): Set GOARCH according to the calculated goarch or using GOHOSTARCH and GOOS according to the calculated goos or using GOHOSTOS.
| * maint: Factorize po xref translation.Julien Lepiller2021-10-17
| | | | | | | | | | | | | | | | | | | | | | | | | | This ensures we use the same method in "make" as in "guix/self.scm". * Makefile.am: Build guix/build/po.scm. * build-aux/convert-xref.scm: New file. * doc/local.mk (xref_command): Use it. * guix/self.scm (translate-cross-references): Move it... * guix/build/po.scm: Parse comments and flags separately to find fuzzy flags. (translate-cross-references): ...here. (parse-tree->assoc): Ignore fuzzy entries.
| * build-system/minetest: Install config.txt and _config.txt.Vivien Kraus2021-10-16
| | | | | | | | | | | | | | * guix/build/minetest-build-system.scm (mod-install-plan): Add "config.txt" and "_config.txt" to the list of installed files. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
| * build-system/minetest: Gather whole failing test output.Vivien Kraus2021-10-16
| | | | | | | | | | | | | | * guix/build/minetest-build-system.scm (check): Gather the whole output when a test fails. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
| * download: Print URL of the Disarchive spec being read.Ludovic Courtès2021-10-14
| | | | | | | | | | * guix/build/download.scm (disarchive-fetch/any): Show URI of the Disarchive spec.
| * download: Add missing autoload.Ludovic Courtès2021-10-14
| | | | | | | | | | | | | | This is a followup to 6d02a994f911a75e3a223a22c05c2939cdfed2b5, which left '%verify-swh-certificate?' unbound. * guix/build/download.scm: Autoload for '%verify-swh-certificate'.
* | Merge remote-tracking branch 'origin/master' into core-updates-frozen.Mathieu Othacehe2021-10-12
|\|
| * Revert the #51061 patch series for now.Tobias Geerinckx-Rice2021-10-08
| | | | | | | | | | | | | | This reverts commits f63c79bf7674df012517f8e9148f94c611e35f32 ..f86f7e24b39928247729020df0134e2e1c4cde62 for more chillax reviewing. See <https://issues.guix.gnu.org/51061#32>.
| * build-system/haskell: Explain failure.Lars-Dominik Braun2021-10-08
| | | | | | | | | | | | | | Provide human-readable failure message and explain how to fix it. * guix/build/haskell-build-system.scm (register): Raise error if source file does not exist.
| * build-system/haskell: Accept line breaks in config files.Lars-Dominik Braun2021-10-08
| | | | | | | | | | | | | | | | Long id’s will break to the next line. * guix/build/haskell-build-system.scm (grep): Remove. (register): Modify regular expression to account for newlines between key and value, fail if package id is empty.
| * build-system/haskell: Do not rely on compiler name.Lars-Dominik Braun2021-10-08
| | | | | | | | | | | | | | | | | | | | We’ve been relying on the compiler name matching its package subdir. Since we effectively only support GHC we can hard-code this and avoid issues with “ghc-next”. * guix/build/haskell-build-system.scm (make-ghc-package-database): Use GHC_PACKAGE_PATH. (register): Hard-code ghc prefix.
| * guix: haskell-build-system: Always pass -package-db option.John Kehayias2021-10-08
| | | | | | | | | | | | * guix/build/haskell-build-system.scm (run-setuphs): Pass -package-db option. Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
| * build-system: Add 'rebar3-build-system'.Hartmut Goebel2021-10-07
| | | | | | | | | | * guix/build-system/rebar3.scm, guix/build/rebar3-build-system.scm: New files. * Makefile.am (MODULES): Add them.
| * download: Honor #:verify-certificate? for SWH downloads.Ludovic Courtès2021-10-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the SWH + Disarchive fallback could fail with: Trying to use Disarchive to assemble /gnu/store/…-ucsim-0.6-pre68.tar.gz... Assembling the directory ucsim-0.6-pre68 Downloading /gnu/store/…-ucsim-0.6-pre68.tar.gz from Software Heritage... X.509 certificate of 'archive.softwareheritage.org' could not be verified: signer-not-found invalid Could not resolve directory reference This will no longer be the case since 'guix perform-download' passes #:verify-certificate? #f. * guix/build/download.scm (disarchive-fetch/any): Parameterize '%verify-swh-certificate?'.
| * build-system: linux-module: Don't explicitly return #t from phases.Tobias Geerinckx-Rice2021-10-01
| | | | | | | | * guix/build-system/linux-module.scm (configure): Remove explicit #t return value.
| * build-system: linux-module: Build and install in parallel.Tobias Geerinckx-Rice2021-10-01
| | | | | | | | | | | | | | | | * guix/build-system/linux-module.scm (linux-module-build) (guix/build-system/linux-module.scm): Accept the PARALLEL-BUILD? keyword and pass it on to the builder. * guix/build/linux-module-build-system.scm (build, install): Capture and honour it.
| * build-system: linux-module: Normalise the ‘M’ source-directory.Tobias Geerinckx-Rice2021-09-30
| | | | | | | | | | | | | | | | | | | | | | | | | | "make modules_install" with an "M=" file name ending in "/." breaks at least rtl8812au-aircrack-ng-linux-module. In general, passing a more human-generated-looking value seems prudent as these are more likely to be tested upstream. * guix/build/linux-module-build-system.scm (build, install): Call CANONICALIZE-PATH on SOURCE-DIRECTORY instead of STRING-APPEND. Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>. as apteryx on #guix
| * Update copyright assignments for Liliana Marie Prikler.Liliana Marie Prikler2021-09-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/guix.texi: Update copyright name for Liliana Marie Prikler. * gnu/packages/build-tools.scm: Update copyright name and email for Liliana Marie Prikler. * gnu/packages/convmv.scm: Likewise. * gnu/packages/emacs-xyz.scm: Likewise. * gnu/packages/emacs.scm: Likewise. * gnu/packages/esolangs.scm: Likewise. * gnu/packages/game-development.scm: Likewise. * gnu/packages/games.scm: Likewise. * gnu/packages/gnome-xyz.scm: Likewise. * gnu/packages/gnome.scm: Likewise. * gnu/packages/gstreamer.scm: Likewise. * gnu/packages/guile-xyz.scm: Likewise. * gnu/packages/minetest.scm: Likewise. * gnu/packages/music.scm: Likewise. * gnu/packages/patches/minetest-add-MINETEST_MOD_PATH.patch: Likewise. * gnu/packages/patches/ppsspp-disable-upgrade-and-gold.patch: Likewise. * gnu/packages/patches/webkitgtk-bind-all-fonts.patch: Likewise. * gnu/packages/python-xyz.scm: Likewise. * gnu/packages/unicode.scm: Likewise. * gnu/packages/xorg.scm: Likewise. * gnu/services/sound.scm: Likewise. * guix/build-system/renpy.scm: Likewise. * guix/build/emacs-utils.scm: Likewise. * guix/build/renpy-build-system.scm: Likewise.
| * syscalls: Deduplicate device number conversion.Tobias Geerinckx-Rice2021-09-23
| | | | | | | | | | | | | | | | | | | | | | * guix/cpio.scm (device-number, device->major+minor): Move to, and subsequently import from, … * guix/build/syscalls.scm (device-number, device-number->major+minor): …here. Note the slight name change. (mounts): Replace 16-bit open code with a DEVICE-NUMBER call. * gnu/build/linux-boot.scm (device-number): Remove duplicate 16-bit implementation in favour of the one above. (resume-if-hibernated): Reuse DEVICE-NUMBER->MAJOR+MINOR.
| * download: Fall back to web.archive.org as a very last resort.Ludovic Courtès2021-09-22
| | | | | | | | | | | | | | | | Suggested by Florian Pelz <pelzflorian@pelzflorian.de>. * guix/build/download.scm (internet-archive-uri): New procedure. (url-fetch): Append it to the list of URIs after CONTENT-ADDRESSED-URIS.
* | build: glib-or-gtk-build-system: Add gtk 4.0 support.Mathieu Othacehe2021-10-02
| | | | | | | | | | * guix/build/glib-or-gtk-build-system.scm (gtk-module-directories): Add gtk 4.0 support.
* | union: Do not warn about "ld.so.cache" collisions.Ludovic Courtès2021-09-25
| | | | | | | | | | | | This is a followup to f85efa86e7690d9181946351631e02b1c20958c9. * guix/build/union.scm (%harmless-collisions): Add "ld.so.cache".
* | Merge branch 'master' into core-updates-frozenMarius Bakke2021-09-17
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gnu/packages/bioinformatics.scm gnu/packages/chez.scm gnu/packages/docbook.scm gnu/packages/ebook.scm gnu/packages/gnome.scm gnu/packages/linux.scm gnu/packages/networking.scm gnu/packages/python-web.scm gnu/packages/python-xyz.scm gnu/packages/tex.scm gnu/packages/version-control.scm gnu/packages/xml.scm guix/build-system/dune.scm guix/build-system/go.scm guix/build-system/linux-module.scm guix/packages.scm
| * build-system: linux-module: Support source-directory.Liliana Marie Prikler2021-09-14
| | | | | | | | | | | | | | | | | | | | As with guile-build-system, the module to be build need not necessarily live at the root of the build tree. * guix/build/linux-module-build-system.scm (build, install): Add source-directory argument and append it to "M" variable when invoking make. * guix/build-system/linux-module.scm (linux-module-build): Add source-directory argument.
| * download: Disarchive mirrors can be URL-returning procedures.Ludovic Courtès2021-09-14
| | | | | | | | | | | | | | | | | | | | As discussed at <https://issues.guix.gnu.org/47336#16>. * guix/build/download.scm (url-fetch)[disarchive-uris]: Accept MIRROR as a procedure. * guix/download.scm (%disarchive-mirrors): Add comment. This change can only be made once a 'guix perform-download' that understands procedures is widely deployed.
| * build/go: Support cross compiling.Efraim Flashner2021-09-13
| | | | | | | | | | | | | | | | | | | | * guix/build-system/go.scm (go-target): New procedure. (go-build): Add goarch, goos keywords. Adjust bag depending if doing a native or cross compile. (go-cross-build): New procedure. * guix/build/go-build-system.scm (setup-go-environment): Accept goarch, goos keywords. Set go environment variables based on target architecture. * doc/guix.texi (Build Systems): Mention new go-build-system keywords.
| * guix: dune-build-system: Put dune into a reproducible release mode.pukkamustard2021-09-08
| | | | | | | | | | | | | | | | | | * guix/build/dune-build-system.scm (build,check): Replace the profile parameter with the appropriate release flags. * guix/build-system/dune.scm: Remove the profile parameter. * doc/guix.texi: Remove paragraph on profile parameter. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
* | Merge branch 'master' into core-updates-frozenLudovic Courtès2021-09-07
|\|
| * guix: dune-build-system: Add a profile parameter.pukkamustard2021-08-20
| | | | | | | | | | | | | | | | | | * guix/build-system/dune.scm: Add a profile parameter. * guix/build/dune-build-system.scm (build): Use it. * doc/guix.texi: Document it. * gnu/packages/ocaml.scm: Remove profile being set from build flags. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
| * build-system: Add 'minetest-mod-build-system'.Maxime Devos2021-08-20
| | | | | | | | | | | | | | | | | | * guix/build-system/minetest.scm: New module. * guix/build/minetest-build-system.scm: Likewise. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document 'minetest-mod-build-system'. Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
* | Merge branch 'master' into core-updates-frozenMarius Bakke2021-07-29
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gnu/packages/bioinformatics.scm gnu/packages/cmake.scm gnu/packages/curl.scm gnu/packages/emacs-xyz.scm gnu/packages/gpodder.scm gnu/packages/music.scm gnu/packages/patches/glibc-bootstrap-system.patch gnu/packages/python-xyz.scm gnu/packages/shells.scm gnu/packages/statistics.scm
| * build: Update uglifyjs for minify-build-system.Charles2021-07-19
| | | | | | | | | | | | | | * guix/build-system/minify.scm (default-uglify-js): Update uglifyjs package used. * guix/build/minify-build-system.scm (minify): Use updated uglifyjs command name. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
* | build: utils: Trim leading slash from search-input-file input.Mathieu Othacehe2021-07-25
| | | | | | | | | | | | | | | | | | | | | | Make sure that both: (search-input-file inputs "/bin/sh") and (search-input-file inputs "bin/sh") are supported. * guix/build/utils (search-input-file): Trim leading slash character from FILE.
* | gnu: TeX Live: Use IniTeX to build a couple of packagesThiago Jung Bauermann2021-07-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The package texlive-latex-base in TeX Live 2021 will depend on texlive-latex-l3kernel and texlive-latex-l3packages. Therefore we need to remove their build dependency on texlive-latex-base to avoid a circular dependency. l3kernel and l3packages don’t need LaTeX during build, just IniTeX. So to make them use it, modify texlive-build-system to allow disabling the #:texlive-latex-base and #:tex-format parameters, and also add a #:tex-engine parameter. We also need to add texlive-docstrip as a native input, which was previously provided by texlive-latex-base. * gnu/packages/tex.scm (texlive-latex-l3kernel, texlive-latex-l3packages)[arguments]: Add ‘#:tex-engine’, ‘#:tex-format’ and ‘#:texlive-latex-base’ parameters. [native-inputs]: Add ‘texlive-docstrip’. * guix/build-system/texlive.scm (lower)[build-inputs]: Don’t add ‘texlive-latex-base’ if its keyword parameter is false. (texlive-build): Add ‘tex-engine’ keyword parameter. [builder]: If a ‘tex-engine’ parameter was passed, use it. Otherwise, use ‘tex-format’ as the engine. * guix/build/texlive-build-system.scm (compile-with-latex): Add ‘engine’ parameter. If the ‘format’ parameter is false, add “-ini” option to the command line. (build): Add ‘tex-engine’ parameter. Pass it down to ‘compile-with-latex’. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* | Merge branch 'master' into core-updatesLudovic Courtès2021-07-18
|\|
| * build: pack: Mute error output when checking if tar supports --sort.Maxim Cournoyer2021-07-18
| | | | | | | | | | * guix/build/pack.scm (tar-base-options) [tar-supports-sort?]: Redirect error output to void.
| * Revert "syscalls: 'terminal-dimension' ignores EPERM."Tobias Geerinckx-Rice2021-07-07
| | | | | | | | | | This reverts commit 17a102332a253f0e3b1f511fa7bda2094264a77c. See <https://github.com/koverstreet/bcachefs/pull/277>.
| * build: qt-utils: Wrappers set 'QTWEBENGINEPROCESS_PATH' if needed.Maxim Cournoyer2021-07-02
| | | | | | | | | | | | | | | | | | | | | | | | This reinstate commit the reverted fed28a9632ba69225151757e44a5d70e9b0652a2, now rebased on top of conflicting changes. * guix/build/qt-utils.scm: Remove extraneous newlines. (variables-for-wrapping): Add comments. Define a file type entry for each variable definition, and use it to determine if we should look for directories versus plain files. <QTWEBENGINEPROCESS_PATH>: New environment variable. (wrap-all-qt-programs): Remove trailing #t.
| * build: qt-utils: Refactor the code to filter XDG_DATA_DIRS.Ludovic Courtès2021-07-02
| | | | | | | | | | | | | | | | | | | | This partially reinstate the reverted c5fd1b0bd362f8b8578a76a26a65ba5d00d48992. * guix/build/qt-utils.scm (variables-for-wrapping)[collect-sub-dirs]: Add 'selectors' parameter and honor it. Change caller to handle selectors. Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
| * guix: qt-utils: Don't include useless inputs in wrapped variables.Jakub Kądziołka2021-07-02
| | | | | | | | | | | | | | | | | | | | | | | | | | Include only those inputs into XDG_DATA_DIRS having some subdirectory of /share which is typically used by Qt. * guix/build/qt-utils.scm (variables-for-wrapping): Take the output directory as an argument for special handling. Check for subdirectories of /share used by Qt before including inputs in XDG_DATA_DIRS. (wrap-qt-program*): Pass the output directory to variables-for-wrapping. Co-authored-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
| * build-system: qt: Exclude useless inputs from wrapped variables.Jakub Kądziołka2021-07-02
| | | | | | | | | | | | | | | | | | | | | | * guix/build-system/qt.scm (qt-build)[qt-wrap-excluded-inputs]: New argument. * guix/build/qt-utils.scm (%qt-wrap-excluded-inputs): New variable. (wrap-qt-program*)[qt-wrap-excluded-inputs]: New argument. Filter excluded inputs. (wrap-qt-program)[qt-wrap-excluded-inputs]: New argument. (wrap-all-qt-programs)[qt-wrap-excluded-inputs]: New argument. Co-authored-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
| * guix: qt-utils: Wrapped executables honor user's envvars.Hartmut Goebel2021-07-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to this change, wrappers did set the specified environment variables to a fixed value, overwriting any user settings. This inhibited propagating e.g. XDG_DATA_DIRS from a profile to the application. Now user environment variables are prefixed (if the variable defines some "binary" search path, e.g. QT_PLUGIN_PATH) or suffixed (if the variable defines some config or data search path, e.g. XDG_DATA_DIRS). The code could also allow to overwrite, anyhow currently no variable is defined like this. * guix/build/qt-utils.scm (variables-for-wrapping): For each env-var to be wrapped, specify whether it should prefix, suffix or overwrite the user's variable.
| * guix: qt-build-system, qt-utils: Unify wrapping of qt-programs.Hartmut Goebel2021-07-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unify (guix qt-build-system wrap-all-programs) and (guix qt-utils wrap-qt-program), so both behave the same. The functions now reside in qt-utils to make them easily available for packages not using the qt-build-system. * guix/build/qt-build-system.scm (variables-for-wrapping, wrap-all-programs): Move from here ... * guix/build/qt-utils.scm (variables-for-wrapping, wrap-all-qt-programs): ... to here. Base the later on (wrap-qt-program*): New function, carved out from old wrap-all-programs. (wrap-qt-program): Base on wrap-qt-program*, change arguments in an incompatible way. * gnu/packages/bittorrent.scm (qbittorrent)[arguments]<phases>{wrap-qt}: Adjust to new interface of wrap-qt-program. * gnu/packages/finance.scm (electron-cash): Likewise. * gnu/packages/geo.scm (qgis): Likewise. * gnu/packages/password-utils.scm (qtpass): Likewise. * gnu/packages/video.scm (openshot): Likewise. * gnu/packages/web-browsers.scm (kristall): Likewise.
| * Revert "build-system/qt: Wrappers only include relevant directories to ↵Maxim Cournoyer2021-07-02
| | | | | | | | | | | | | | XDG_DATA_DIRS." This reverts commit c5fd1b0bd362f8b8578a76a26a65ba5d00d48992. It will need to be refactored on top of 2214b7b78d34a0e4d574b743dbeb8457356f6cff.
| * Revert "build-system/qt: Wrappers set 'QTWEBENGINEPROCESS_PATH' if needed."Maxim Cournoyer2021-07-02
| | | | | | | | | | This reverts commit 06eb21856f9535ab62d0becc92b4146e0620654e. It will need to be refactored to fit on top of 2214b7b78d34a0e4d574b743dbeb8457356f6cff.