aboutsummaryrefslogtreecommitdiff
path: root/tests/home-services.scm
blob: e13733cabd9fd18e674de8d43c4c690cd6fb9172 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix 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 General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (test-home-services)
  #:use-module (gnu services)
  #:use-module (gnu home services)
  #:use-module (guix diagnostics)
  #:use-module (srfi srfi-1)
  #:use-module (srfi srfi-64)
  #:use-module (ice-9 match))

(test-begin "home-services")

(test-assert "fold-home-service-types"
  (match (fold-home-service-types cons '())
    (() #f)
    (lst (and (every service-type? lst)
              (every (lambda (type)
                       (let ((location (service-type-location type)))
                         (string-contains (location-file location)
                                          "gnu/home")))
                     lst)))))

(test-eq "lookup-service-types"
  home-files-service-type
  (and (null? (lookup-home-service-types 'does-not-exist-at-all))
       (match (lookup-home-service-types 'home-files)
         ((one) one)
         (x x))))

(test-end)
?id=279349209e44aaae6ca2aba328fe2a4d2da99f12'>gnu: rust-1.59: Fix building for riscv64-linux....* gnu/packages/rust.scm (rust-1.59)[arguments]: When building for riscv64-linux add a phase to support building with llvm < 14. Efraim Flashner 2022-08-30gnu: rust-bootstrap: Explicitly use OpenSSL@1.1....* gnu/packages/rust.scm (rust-bootstrap)[inputs]: Change from OPENSSL to OPENSSL-1.1. Marius Bakke 2022-08-30Merge branch 'master' into stagingMarius Bakke 2022-08-30gnu: rust: Don't ask to run tests when cross-compiling....* gnu/packages/rust.scm (rust-1.57)[arguments]{#:tests?}: When cross-compiling, set to #false. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Maxime Devos 2022-08-04gnu: rust: Use rust-1.60.0...* gnu/packages/rust.scm (rust-1.58, rust-1.59, rust-1.60, rust): Add rust-1.58, rust-1.59, and rust-1.60, and update rust to be based on rust-1.60 instead of rust-1.57. Signed-off-by: Marius Bakke <marius@gnu.org> Jim Newsome 2022-08-04gnu: rust: decouple rust-1.57 and "rust"...* gnu/packages/rust.scm (rust-1.57, rust): decouple the definition of rust-1.57, which happens to be the current latest, from the definition of rust, which is always the latest. The latter re-enables tests and extra components, which should always be done only on the final public rust package, not specifically rust-1.57. Signed-off-by: Marius Bakke <marius@gnu.org> Jim Newsome 2022-07-10gnu: rust-1.55: Fix building on riscv64-linux....* gnu/packages/rust.scm (rust-1.55)[source]: Adjust snippet to fix riscv64 support in jemallocator crate. Efraim Flashner 2022-07-10gnu: rust-bootstrap: Add support for riscv64-linux....* gnu/packages/rust.scm (%mrustc-source): Add patch. (rust-bootstrap)[native-inputs]: On riscv64-linux add gcc@9:lib. [supported-systems]: Add riscv64-linux. Adjust comment. * gnu/packages/patches/mrustc-riscv64-support.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Efraim Flashner 2022-07-05gnu: rust: Add correct triplet for riscv64-linux....* gnu/packages/rust.scm (nix-system->gnu-triplet-for-rust): Add entry for riscv64-linux. Efraim Flashner 2022-07-05gnu: rust: Bootstrap with rust-1.54.0....* gnu/packages/rust.scm (rust-1.39): Rename to rust-bootstrap. Update to 1.54.0. [source]: Update snippet to new version. Replace mrustc patch for 1.39.0 with patch for 1.54.0. [inputs]: Remove libssh2. Replace llvm-9 with llvm. Add gcc-9. [arguments]: Adjust custom 'setup-mrustc-sources to also create file with rust version. Adjust custom 'patch-makefiles phase to changes in mrustc's build steps. Adjust custom 'build phase to follow mrustc's build steps for rust-1.54. (rust-1.40): Replace post-bootstrapped rust-1.40 with 1.55. [arguments]: Add custom 'set-linker-locale-to-utf8 phase. Adjust custom 'build phase. Remove custom 'neuter-tidy phase. [inputs]: Replace llvm-9 with llvm. (rust-1.41, rust-1.42, rust-1.43, rust-1.44, rust-1.45, rust-1.46, rust-1.47, rust-1.48, rust-1.49, rust-1.50, rust-1.51, rust-1.52, rust-1.53): Remove variables. * gnu/packages/patches/rust-1.39.0-src.patch: Remove file. * gnu/packages/patches/rust-1.54.0-src.patch: Add file. * gnu/local.mk (dist_patch_DATA): Register changes. Efraim Flashner 2022-05-09gnu: mrustc: Update to 0.10....And enable rust for aarch64-linux! * gnu/packages/rust.scm (%mrustc-commit): Update hash. (%mrustc-source): Update to 0.10. (rust-1.39)[arguments]: Move and adapt the substitute* that prevent fetching sources. Patch /bin/sh in run_rustc/rustc_proxy.sh. [supported-systems]: Add aarch64-linux. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Pierre Langlois 2022-02-01gnu: LLVM: Switch to 13 as the default....* gnu/packages/llvm.scm (llvm, clang-runtime, clang, clang-toolchain): Use version 13. * gnu/packages/gnuzilla.scm (mozjs-78)[native-inputs]: Change from LLVM to LLVM-9. * gnu/packages/rust.scm (rust-1.39, rust-1.40)[inputs]: Likewise. * gnu/packages/debug.scm (c-reduce)[inputs]: Stick with CLANG-9 and/or LLVM-9. * gnu/packages/diffoscope.scm (diffoscope)[inputs]: Likewise. * gnu/packages/linux.scm (bcc, bpftrace)[inputs]: Likewise. * gnu/packages/llvm.scm (libclc, libomp)[native-inputs]: Likewise. * gnu/packages/games.scm (hedgewars)[native-inputs]: Likewise. * gnu/packages/graphics.scm (openshadinglanguage)[native-inputs]: Likewise. * gnu/packages/opencl.scm (pocl)[inputs]: Likewise. Marius Bakke 2022-01-22gnu: rust-analyzer: Make it work out of the box....* gnu/packages/rust.scm (rust-src): New variable. * gnu/packages/rust-apps.scm (rust-analyzer): [native-inputs]: Add rust-src. [arguments]: <#:phases>: Add wrap-program phase. Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr> Z572 via Guix-patches via 2022-01-10gnu: rust: Do not generate doc....The share/doc directory weights 527 MiB and bundles fonts. * gnu/packages/rust.scm (rust-1.57)[phases]{enable-docs}: Delete phase. Maxim Cournoyer 2022-01-10gnu: rust: Use rust-1.57.0....* gnu/packages/rust.scm (rust-1.54): Make it a private variable. Move definition to... (rust-1.57): ... here. (rust-1.55, rust-1.56): Make private. * gnu/packages/shells.scm (nushell)[rust]: Remove argument. Maxim Cournoyer 2022-01-10gnu: rust-1.39: Update mrustc to commit c70665....This brings us closer to a i686 native bootstrap. * gnu/packages/rust.scm (%mrustc-commit): Update to latest commit, c70665. Maxim Cournoyer 2022-01-08gnu: rust-1.40: Fix spelling....* gnu/packages/rust.scm (rust-1.40)[synopsis]: Fix spelling of "programming". Vagrant Cascadian 2021-12-27gnu: Add rust-1.57....* gnu/packages/rust.scm (rust-1.57): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> (unmatched parenthesis 2021-12-27gnu: Add rust-1.56....* gnu/packages/rust.scm (rust-1.56): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> (unmatched parenthesis 2021-12-27gnu: Add rust-1.55....* gnu/packages/rust.scm (rust-1.55): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> (unmatched parenthesis 2021-11-27gnu: rust: Add 'supported-systems' field....* gnu/packages/rust.scm (rust-1.39)[supported-systems]: New field. (rust-1.40)[supported-systems]: Remove. Ludovic Courtès 2021-11-11gnu: Build all Rust packages using the latest rustc....The older Rusts are made private variables; they shouldn't be used by users as they are not tested and are only built at stage 1, which makes them unsuitable to compile Rust applications. * gnu/packages/crates-io.scm (rust-cargo-0.53)[arguments]: Remove #:rust argument. (rust-cxx-1, rust-cxx-build-1, rust-cxx-gen-0.7): Likewise. * gnu/packages/crates-io.scm (rust-cxx-gen-0.7, rust-cxxbridge-macro-1, rust-postgres-0.19): Likewise. (rust-rust-decimal-1, rust-sized-chunks-0.6, rust-socket2-0.4): Likewise. (rust-tokio-postgres-0.7, rust-im-rc-15): Likewise. * gnu/packages/gnome.scm (librsvg): Likewise. * gnu/packages/gnuzilla.scm (mozjs-78): Likewise. * gnu/packages/rust-apps.scm (hyperfine, tectonic rust-analyzer, rust-cargo-c): Likewise. * gnu/packages/shells.scm (nushell): Likewise. * gnu/packages/syndication.scm (newsboat): Likewise. * gnu/packages/rust.scm: (rust-1.39, rust-1.40, rust-1.41, rust-1.42) (rust-1.43, rust-1.44, rust-1.45, rust-1.46, rust-1.47, rust-1.48, rust-1.49) (rust-1.50, rust-1.51, rust-1.52, rust-1.53, rust-1.54): Make variables private. Maxim Cournoyer 2021-11-11gnu: rust: Add rust 1.54 and move all non-bootstrapping logic to it....* gnu/packages/rust.scm (rust-1.44): Do not replace LLVM version, for simplicity. It used to be required at this point because LLVM 7 was no longer supported for rust-1.44, but we're now using LLVM 9. (rust-1.46): Move all additional phases, doc output to rust-1.54. (rust-1.53, rust-1.54): New variables. (rust-1.54): Adjust snippet field. (rust): Set default Rust to the latest version, 1.54.0. [native-inputs]: Use the latest GDB. Maxim Cournoyer 2021-11-11gnu: rust: Bootstrap rust from 1.39.0 and optimize build time....Only stage 1 (rather than stage 2) rustc and cargo are built and the installation phase rewritten to not invoke the build tool, which helps to shorten the build time to about 10 minutes per Rust on a fast machine. The total build time should take less than 4h30, down from the current 8 hours on a Ryzen 3900X CPU. * gnu/packages/patches/rust-reproducible-builds.patch: Delete file. * gnu/packages/patches/rustc-1.39.0-src.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it, and un-register rust-reproducible-builds.patch. * gnu/packages/rust.scm (%mrustc-commit): New variable. (%mrustc-source): Update to latest commit. (rust-1.29): Morph into... (rust-1.39): ... this. [source]: Adjust the snippet, patches and patch-flags fields. [inputs]: Replace llvm-7 by llvm (9). [make-flags]: Add the RUSTC_VERSION, MRUSTC_TARGET_VER and OUTDIR_SUF make variables. Remove the RUSTCSRC make variable. [phases]{copy-mrustc-and-patch}: Rename to... {setup-mrustc-sources}: ... this. A symbolic link is created inside the mrustc directory, pointing to the Rust 1.39.0 sources. {patch-makefiles}: Adjust directory. Patch date and git definitions. Edit out the RUSTC_SRC_DL prerequisite. Adjust the patching of a shebang. {patch-cargo-checksums}: Adjust. {configure-cargo-home}: New phase. {configure}: Create and add a 'cc' shim to PATH. {build}: Do not invoke make in parallel mode inside the run_rustc directory. (rust-1.30): Morph into... (rust-1.40): ... this, integrating the changes introduced between 1.30 and 1.40. [modules]: Properly import (guix build cargo-utils). [phases]{add-cc-shim-to-path}: New phase. {configure}: Increase the codegen-units value to 256. {build}: Only build stage 1 rustc and cargo, and group the commands into one invocation. {install}: Manually install the stage 1 build artifacts. {patch-cargo-checksums}: Remove the ad-hoc use-modules, no longer needed. [source]: Adjust. [arguments]: Set validate-runpath? to #f. [phases]{patch-cargo-checksums}: Remove phase. {configure}: Repatriate the jemalloc configuration changes from 1.40. [native-inputs]: Replace the rust-1.29 inputs by rust-1.39. Use regular jemalloc and llvm versions. (rust-1.41)[phases]: Add the patch-cargo-checksums phase. (rust-1.31, rust-1.32, rust-1.33, rust-1.34, rust-1.35, rust-1.36, rust-1.37) (rust-1.38, rust-1.39, rust-1.40): Delete variables. (rust-1.46)[phases]{install}: Group build, test and install commands. (rust-1.47)[phases]{build}: Override to adjust for the relocation of the standard library source directory. Maxim Cournoyer 2021-11-11gnu: rust: Update to 1.50....* gnu/packages/rust.scm (rust): Change to 1.50. Jakub Kądziołka 2021-07-24gnu: Use 'search-input-file' when looking for executables....* gnu/packages/admin.scm (isc-dhcp): Use 'search-input-file' when looking for executables. * gnu/packages/audio.scm (ableton-link): Likewise. * gnu/packages/benchmark.scm (fio): Likewise. * gnu/packages/bioinformatics.scm (roary): Likewise. (ngless): Likewise. * gnu/packages/boost.scm (boost-for-irods): Likewise. * gnu/packages/bootloaders.scm (grub): Likewise. (grub-efi): Likewise. * gnu/packages/chemistry.scm (inchi): Likewise. * gnu/packages/dictionaries.scm (ding): Likewise. * gnu/packages/dlang.scm (ldc): Likewise. * gnu/packages/education.scm (childsplay): Likewise. * gnu/packages/emacs-xyz.scm (emacs-hyperbole): Likewise. (emacs-haskell-mode): Likewise. (emacs-auctex): Likewise. (emacs-ggtags): Likewise. (emacs-graphviz-dot-mode): Likewise. (emacs-flycheck-grammalecte): Likewise. (emacs-counsel-notmuch): Likewise. (emacspeak): Likewise. (emacs-exwm): Likewise. (emacs-exwm-x): Likewise. (emacs-treemacs): Likewise. (emacs-telega): Likewise. (emacs-exiftool): Likewise. * gnu/packages/emulators.scm (higan): Likewise. * gnu/packages/engineering.scm (freehdl): Likewise. (librepcb): Likewise. * gnu/packages/entr.scm (entr): Likewise. * gnu/packages/file-systems.scm (libeatmydata): Likewise. (xfstests): Likewise. (mergerfs): Likewise. (mergerfs-tools): Likewise. * gnu/packages/finance.scm (monero-gui): Likewise. * gnu/packages/flashing-tools.scm (flashrom): Likewise. * gnu/packages/fontutils.scm (fontforge): Likewise. * gnu/packages/game-development.scm (python2-renpy): Likewise. * gnu/packages/games.scm (opensurge): Likewise. (xboard): Likewise. (hyperrogue): Likewise. (flare-game): Likewise. (chessx): Likewise. * gnu/packages/geo.scm (grass): Likewise. * gnu/packages/glib.scm (glib): Likewise. * gnu/packages/gnome.scm (mm-common): Likewise. (network-manager-openvpn): Likewise. (network-manager-vpnc): Likewise. (network-manager-openconnect): Likewise. (apostrophe): Likewise. * gnu/packages/gnupg.scm (pius): Likewise. (jetring): Likewise. * gnu/packages/gnuzilla.scm (icedove): Likewise. * gnu/packages/golang.scm (go-1.4): Likewise. * gnu/packages/graphviz.scm (xdot): Likewise. * gnu/packages/guile-xyz.scm (jupyter-guile-kernel): Likewise. * gnu/packages/haskell-xyz.scm (ghc-hindent): Likewise. * gnu/packages/ibus.scm (ibus): Likewise. * gnu/packages/image.scm (phockup): Likewise. * gnu/packages/irc.scm (quassel): Likewise. * gnu/packages/java.scm (drip): Likewise. (ant-bootstrap): Likewise. (tla2tools): Likewise. * gnu/packages/julia.scm (julia): Likewise. * gnu/packages/less.scm (lesspipe): Likewise. * gnu/packages/libreoffice.scm (libreoffice): Likewise. * gnu/packages/linux.scm (fuse): Likewise. (lm-sensors): Likewise. (bluez): Likewise. (fakeroot): Likewise. (inputattach): Likewise. * gnu/packages/lisp-xyz.scm (sbcl-cl-diskspace): Likewise. * gnu/packages/lisp.scm (lisp-repl-core-dumper): Likewise. * gnu/packages/lua.scm (fennel): Likewise. * gnu/packages/lxde.scm (spacefm): Likewise. * gnu/packages/mail.scm (public-inbox): Likewise. * gnu/packages/maths.scm (hdf-java): Likewise. (maxima): Likewise. (frama-c): Likewise. * gnu/packages/messaging.scm (libgadu): Likewise. * gnu/packages/music.scm (denemo): Likewise. (curseradio): Likewise. * gnu/packages/netpbm.scm (netpbm): Likewise. * gnu/packages/networking.scm (blueman): Likewise. (squid): Likewise. (aircrack-ng): Likewise. * gnu/packages/node.scm (node): Likewise. (node-llparse-frontend-bootstrap): Likewise. (node-llparse-bootstrap): Likewise. (llhttp-bootstrap): Likewise. (node-lts): Likewise. * gnu/packages/ocaml.scm (ocaml-4.11): Likewise. (opam): Likewise. (ocaml-graph): Likewise. * gnu/packages/orpheus.scm (orpheus): Likewise. * gnu/packages/password-utils.scm (password-store): Likewise. * gnu/packages/python.scm (pypy3): Likewise. * gnu/packages/qt.scm (qt5ct): Likewise. * gnu/packages/radio.scm (libosmo-dsp): Likewise. * gnu/packages/ruby.scm (ruby-pandoc-ruby): Likewise. * gnu/packages/rust.scm (rust-1.30): Likewise. * gnu/packages/screen.scm (byobu): Likewise. * gnu/packages/statistics.scm (r-with-tests): Likewise. * gnu/packages/suckless.scm (surf): Likewise. * gnu/packages/syndication.scm (gfeeds): Likewise. * gnu/packages/telephony.scm (mumble): Likewise. * gnu/packages/terminals.scm (alacritty): Likewise. * gnu/packages/tex.scm (texlive-bin): Likewise. * gnu/packages/uml.scm (plantuml): Likewise. * gnu/packages/version-control.scm (python-git-multimail): Likewise. (gitolite): Likewise. (hg-commitsigs): Likewise. (git-when-merged): Likewise. (git-imerge): Likewise. (gita): Likewise. * gnu/packages/video.scm (you-get): Likewise. * gnu/packages/vim.scm (eovim): Likewise. * gnu/packages/virtualization.scm (qemu): Likewise. (virt-manager): Likewise. (criu): Likewise. * gnu/packages/vpn.scm (strongswan): Likewise. (xl2tpd): Likewise. * gnu/packages/wm.scm (i3lock-fancy): Likewise. * gnu/packages/wxwidgets.scm (python-wxpython): Likewise. (python2-wxpython): Likewise. * gnu/packages/xdisorg.scm (autorandr): Likewise. * gnu/packages/xorg.scm (hackneyed-x11-cursors): Likewise. (v86d): Likewise. (mkfontdir): Likewise. (xpra): Likewise. Ludovic Courtès 2021-07-24gnu: Use 'search-input-file' when looking for *.so and *.a....* gnu/packages/bioinformatics.scm (sailfish)[arguments]: Use 'search-input-file' when looking for *.a and *.so. * gnu/packages/emulators.scm (dolphin-emu): Likewise. * gnu/packages/engineering.scm (lepton-eda): Likewise. (pcb): Likewise. * gnu/packages/golang.scm (go-1.4): Likewise. (go-1.14): Likewise. * gnu/packages/haskell.scm (ghc-7): Likewise. * gnu/packages/irods.scm (irods): Likewise. * gnu/packages/language.scm (python2-tegaki-pygtk): Likewise. * gnu/packages/lisp-xyz.scm (sbcl-lzlib): Likewise. (sbcl-cl-gobject-introspection): Likewise. (sbcl-cl-ana): Likewise. (sbcl-cl-libuv): Likewise. (sbcl-cl-async): Likewise. (sbcl-mcclim): Likewise. (sbcl-zstd): Likewise. (sbcl-cl-opengl): Likewise. (sbcl-lev): Likewise. (sbcl-cl-glfw3): Likewise. * gnu/packages/machine-learning.scm (tensorflow): Likewise. * gnu/packages/messaging.scm (utox): Likewise. * gnu/packages/mpi.scm (java-openmpi): Likewise. * gnu/packages/music.scm (jack-select): Likewise. * gnu/packages/pascal.scm (fpc): Likewise. * gnu/packages/python-crypto.scm (python-libnacl): Likewise. * gnu/packages/python-xyz.scm (python-cairocffi): Likewise. (python-pyev): Likewise. (python-pytidylib): Likewise. * gnu/packages/radio.scm (unixcw): Likewise. * gnu/packages/rust.scm (rust-1.32): Likewise. * gnu/packages/security-token.scm (opensc): Likewise. (python-pyscard): Likewise. * gnu/packages/selinux.scm (python-setools): Likewise. * gnu/packages/spice.scm (libcacard): Likewise. * gnu/packages/telephony.scm (libtgvoip): Likewise. Ludovic Courtès 2021-07-18Merge branch 'master' into core-updatesLudovic Courtès 2021-07-08mailmap: Update entries for Matthew James Kraai....* .mailmap: Change name for Matthew James Kraai. * gnu/packages/lisp-xyz.scm, gnu/packages/python-xyz.scm, gnu/packages/rust.scm: Likewise. Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr> Matthew James Kraai