Commit Graph

154 Commits

Author SHA1 Message Date
Leo Famulari 74288230ea
Merge branch 'master' into core-updates 2017-01-06 17:14:41 -05:00
Ludovic Courtès 9410a5aa91
hydra: Add "powerpc-linux-gnu" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"powerpc-linux-gnu".
2017-01-05 00:00:59 +01:00
Ludovic Courtès a3a2774501
hydra: Remove 'qemu-image' job.
As per the discussion at
<https://lists.gnu.org/archive/html/guix-devel/2016-12/msg01098.html>.

* build-aux/hydra/gnu-system.scm (demo-os): Remove.
(qemu-jobs): Remove 'qemu-image' job.
* build-aux/hydra/demo-os.scm: Remove.
2016-12-31 01:44:04 +01:00
Ludovic Courtès a69bc7071e
hydra: Fix wrong-num-args error when computing the cross jobs.
Fixes a regression introduced in
dea91108cf.

* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](either): Add
third parameter and honor it.
2016-12-08 00:28:48 +01:00
Ludovic Courtès 530b8bda1f
hydra: Adjust to make-bootstrap.scm change.
This is a followup to commit f13f60cb26.

* build-aux/hydra/gnu-system.scm (%core-packages): Call
'%glibc-bootstrap-tarball' since it's now a thunk, not a package.
2016-12-08 00:28:48 +01:00
Ludovic Courtès 0a050ebc35
hydra: Use '%final-inputs' from base.scm, not commencement.scm.
* build-aux/hydra/gnu-system.scm (package->job): Use the '%final-inputs'
procedure from (gnu packages base).
2016-12-08 00:28:47 +01:00
Ludovic Courtès dea91108cf
hydra: Add "i686-w64-mingw32" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "i686-w64-mingw32".
(hydra-jobs)[cross-jobs?](pointless?): New procedure.
Use it.
2016-12-07 10:23:18 +01:00
Ludovic Courtès 6ef6246cfc
hydra: Add "arm-linux-gnueabihf" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"arm-linux-gnueabihf".
2016-10-20 15:43:59 +02:00
Ludovic Courtès ab23fb83c2
hydra: Fix the construction of system test jobs.
* build-aux/hydra/gnu-system.scm (system-test-jobs)[test->thunk]: New
procedure.
[->job]: Use it.
2016-06-21 15:59:06 +02:00
Ludovic Courtès 4c9243b688
hydra: 'evaluate' now validates job alists.
* build-aux/hydra/evaluate.scm (assert-valid-job): New procedure.
<top level>: Use it.
2016-06-21 15:59:06 +02:00
Ludovic Courtès 5c310940ed
hydra: Set the guile-for-build for the test jobs.
* build-aux/hydra/gnu-system.scm (system-test-jobs): Call
'set-guile-for-build'.
2016-06-21 00:20:50 +02:00
Ludovic Courtès e702e26a38
hydra: Add jobs for the system tests.
* build-aux/hydra/gnu-system.scm (%guixsd-supported-systems): New
variable.
(qemu-jobs): Use it.
(system-test-jobs): New procedure.
(hydra-jobs): Use it.
2016-06-20 23:50:46 +02:00
Ludovic Courtès 89cbec89a5 hydra: Add 'hydra-jobs.scm' target to compute the Hydra jobs.
* build-aux/hydra/evaluate.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2016-04-13 19:20:03 +02:00
Ludovic Courtès 9c3bb4c54d hydra: Really completely disable grafting.
This is a followup to 49c4fd2a.

* build-aux/hydra/gnu-system.scm (package->alist): Parameterize %graft?.
(qemu-jobs)[->job]: Likewise.
(tarball-jobs)[->job]: Likewise.
2016-04-13 19:20:03 +02:00
Ludovic Courtès 622b2304ce doc: We now need 1 GiB for the installation USB image.
* doc/guix.texi (Building the Installation Image): Change image size to 1G.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Likewise.
2016-03-24 23:31:56 +01:00
Ludovic Courtès 49c4fd2aab hydra: Completely disable grafting.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Parameterize '%graft?'.
Build package replacements when they are available.
2016-03-03 00:18:30 +01:00
Ludovic Courtès f8187bde7f hydra: Improve readability.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Use 'filter-map' instead
of directly 'fold-packages'.
2016-03-03 00:18:30 +01:00
Alex Kost 171a0a13a4 Rename 'dmd' to 'shepherd' in comments and strings.
* build-aux/hydra/demo-os.scm (operating-system)[issue]: Point to
  shepherd instead of dmd.
* ROADMAP: Likewise.
* gnu/build/install.scm (directives): Adjust comment.
2016-01-29 20:21:54 +03:00
Ludovic Courtès af46761302 hydra: Honor the 'max-silent-time' package property.
Suggested by Mark H Weaver <mhw@netris.org>.

* build-aux/hydra/gnu-system.scm (package->alist): Add
'max-silent-time' pair.
2016-01-19 22:12:11 +01:00
Ludovic Courtès 7a2eed3aac hydra: Add missing phase and inputs for 'make dist' job.
* build-aux/hydra/guix.scm (tarball-package): Inherit from 'guix-devel'
rather than 'guix'.  Pass #:phases to 'dist-package'.
2016-01-13 17:43:21 +01:00
Ludovic Courtès a6785b96ff hydra: Add Graphviz and help2man as inputs to the Guix job set.
* build-aux/hydra/guix.scm (tarball-package): Add GRAPHVIZ and HELP2MAN
  to 'native-inputs' of GUIX.
2015-10-14 21:39:05 +02:00
Ludovic Courtès c80f1559eb hydra: Update demo OS to new service interface.
* build-aux/hydra/demo-os.scm: Import (gnu services dbus); remove
  arguments to 'dbus-service'.
2015-10-13 00:06:11 +02:00
Ludovic Courtès afd3d9316c Use "normalized codesets" everywhere.
In other words, change "xx_YY.UTF-8" to "xx_YY.utf8".

* guix/profiles.scm (ca-certificate-bundle): Use "en_US.utf8" instead of
  "en_US.UTF-8".
* guix/packages.scm (patch-and-repack): Likewise.
* guix/build/gnu-build-system.scm (install-locale): Likewise.
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Likewise.
* gnu/packages/python.scm (python-ipython): Likewise.
* gnu/packages/gawk.scm (gawk): Likewise.
* build-aux/hydra/demo-os.scm: Likewise.
* gnu/packages/guile.scm (guile-ncurses)[arguments]: Remove
  'change-locale' phase.
2015-10-04 00:10:03 +02:00
Mark H Weaver eb55e28c84 hydra: Remove cross-builds from armhf-linux to mips64el-linux-gnuabi64.
* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs]: Modify
  'from-32-to-64?' to include 'armhf-linux' in the set of 32-bit systems.
2015-09-09 16:35:03 -04:00
Mark H Weaver 629f4d2e6e gnu: gcc-5.1, gcc-toolchain-5.1, libstdc++-doc-5.1: Rename to *-5.
This reflects the new version numbering scheme for GCC 5 and up.
See <https://gcc.gnu.org/develop.html>.

* gnu/packages/gcc.scm (gcc-5.1): Rename to ...
  (gcc-5): ... this.
  (libstdc++-doc-5.1): Rename to ...
  (libstdc++-doc-5): ... this, and use gcc-5.
* gnu/packages/commencement.scm (gcc-toolchain-5.1): Rename to ...
  (gcc-toolchain-5): ... this, and use gcc-5.
* build-aux/hydra/gnu-system.scm (%core-packages): Use gcc-5.
2015-07-19 23:20:39 -04:00
Mark H Weaver 2abf678682 Merge branch 'master' into core-updates 2015-06-18 01:32:37 -04:00
Mark H Weaver c362a40a58 hydra: Fix the demo OS.
* build-aux/hydra/demo-os.scm: Don't try to import (gnu services dbus), which
  no longer exists.  Use 'use-service-modules' and 'use-package-modules'.  Use
  "en_US.UTF-8" as system locale.
2015-06-18 01:32:20 -04:00
Ludovic Courtès a2ee6cbea2 hydra: Remove GCC 4.7 from the core set, and add 4.9 and 5.1.
* build-aux/hydra/gnu-system.scm (%core-packages): Remove GCC-4.7.  Add
  GCC-4.9 and GCC-5.1.
2015-06-16 15:41:17 +02:00
Mark H Weaver ae0bcc1e9d hydra: Support per-package absolute build timeouts.
* build-aux/hydra/gnu-system.scm (package->alist): Use the 'timeout' value in
  the package 'properties' alist, if present.
2015-05-29 14:33:32 -04:00
Ludovic Courtès 897e5d9960 hydra: Increase USB image size.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Increase disk image size
  to 860 MiB, for x86_64.
2015-05-15 22:55:14 +02:00
Ludovic Courtès b9212a5455 Merge branch 'core-updates' 2015-05-02 22:42:53 +02:00
Ludovic Courtès a413bc8bd3 hydra: Update Guix job set.
* build-aux/hydra/guix.scm (tarball-package): Remove 'nix-checkout'
  parameter.  Remove 'arguments', 'native-inputs', and 'location'
  fields.  Adjust caller accordingly.
  (hydra-jobs): Remove 'nix-checkout'.
2015-05-02 22:16:06 +02:00
Ludovic Courtès abcbda48c2 packages: Add '%hydra-supported-systems'.
* build-aux/hydra/gnu-system.scm (%hydra-supported-systems): Remove.
* guix/packages.scm (%hydra-supported-systems): New variable.
2015-05-01 16:05:40 +02:00
Mark H Weaver 95203be9ef hydra: Add %hydra-supported-systems variable and use it.
* build-aux/hydra/gnu-system.scm (%hydra-supported-systems): New variable.
  (hydra-jobs): Use %hydra-supported-systems instead of %supported-systems.
2015-04-22 17:25:28 -04:00
Ludovic Courtès bbceb0ef8a packages: Add 'supported-package?'.
* guix/packages.scm (supported-package?): New procedure.
* tests/packages.scm ("supported-package?"): New test.
* build-aux/hydra/gnu-system.scm (package->job): Use it instead of
  'package-transitive-supported-systems'.
2015-04-19 23:34:53 +02:00
Mark H Weaver 933204e5b1 Merge branch 'master' into core-updates
Conflicts:
	gnu-system.am
	gnu/packages/gstreamer.scm
2015-04-17 09:54:11 -04:00
Ludovic Courtès e1600f6996 hydra: Increase size of USB image.
* build-aux/hydra/gnu-system.scm (qemu-jobs) <usb-image>: Increase from
  800 MiB to 850 MiB.
2015-04-16 10:05:36 +02:00
Ludovic Courtès b607593533 hydra: Add jobs for the self-contained tarball.
* build-aux/hydra/gnu-system.scm (tarball-jobs): New procedure.
  (hydra-jobs): Use it.
2015-04-14 23:26:41 +02:00
Ludovic Courtès e87f0591f3 monads: Move '%store-monad' and related procedures where they belong.
This turns (guix monads) into a generic module for monads, and moves the
store monad and related monadic procedures in their corresponding
module.

* guix/monads.scm (store-return, store-bind, %store-monad, store-lift,
  text-file, interned-file, package-file, package->derivation,
  package->cross-derivation, origin->derivation, imported-modules,
  compiled, modules, built-derivations, run-with-store): Move to...
* guix/store.scm (store-return, store-bind, %store-monad, store-lift,
  text-file, interned-file): ... here.
  (%guile-for-build): New variable.
  (run-with-store): Moved from monads.scm.  Remove default value for
  #:guile-for-build.
* guix/packages.scm (default-guile): Export.
  (set-guile-for-build): New procedure.
  (package-file, package->derivation, package->cross-derivation,
  origin->derivation): Moved from monads.scm.
* guix/derivations.scm (%guile-for-build): Remove.
  (imported-modules): Rename to...
  (%imported-modules): ... this.
  (compiled-modules): Rename to...
  (%compiled-modules): ... this.
  (built-derivations, imported-modules, compiled-modules): New
  procedures.
* gnu/services/avahi.scm, gnu/services/base.scm, gnu/services/dbus.scm,
  gnu/services/dmd.scm, gnu/services/networking.scm,
  gnu/services/ssh.scm, gnu/services/xorg.scm, gnu/system/install.scm,
  gnu/system/linux-initrd.scm, gnu/system/shadow.scm, guix/download.scm,
  guix/gexp.scm, guix/git-download.scm, guix/profiles.scm,
  guix/svn-download.scm, tests/monads.scm: Adjust imports accordingly.
* guix/monad-repl.scm (default-guile-derivation): New procedure.
  (store-monad-language, run-in-store): Use it.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Add explicit
  'set-guile-for-build' call.
* guix/scripts/archive.scm (derivation-from-expression): Likewise.
* guix/scripts/build.scm (options/resolve-packages): Likewise.
* guix/scripts/environment.scm (guix-environment): Likewise.
* guix/scripts/system.scm (guix-system): Likewise.
* doc/guix.texi (The Store Monad): Adjust module names accordingly.
2015-01-14 13:34:52 +01:00
Ludovic Courtès 9cd0dfaa46 system: Change "en_US.UTF-8" to "en_US.utf8".
* build-aux/hydra/demo-os.scm (locale): Change to "en_US.utf8".
* gnu/system/install.scm (installation-os)[locale]: Ditto.
2014-11-29 11:37:53 +01:00
Ludovic Courtès 9c960731d6 hydra: Build only non-grafted variants of the packages.
* build-aux/hydra/gnu-system.scm (package->alist): Pass #:graft? #f.
  (package-cross-job): Adjust last argument of 'package->alist' to
  accept #:graft?.  This fixes the problem reported in commit a480307.
2014-11-21 16:33:53 +01:00
Ludovic Courtès a480307449 Revert "hydra: Build only non-grafted variants of the packages."
This reverts commit 9de1defe79.

Passing #:graft? was not possible because of the use of 'cut' on call
sites.
2014-11-13 17:46:57 +01:00
Ludovic Courtès 9de1defe79 hydra: Build only non-grafted variants of the packages.
* build-aux/hydra/gnu-system.scm (package->alist): Pass #:graft? #f to
  PACKAGE-DERIVATION.
2014-11-13 14:21:09 +01:00
Ludovic Courtès 91781e0268 hydra: Make USB installation image bigger.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Require 800 MiB for the
  USB disk image.
2014-11-12 13:52:09 +01:00
Ludovic Courtès 7c3c0374de packages: Add 'package-transitive-supported-systems'.
* guix/packages.scm (package-transitive-supported-systems): New procedure.
* tests/packages.scm ("package-transitive-supported-systems"): New test.
* build-aux/hydra/gnu-system.scm (package->job): Use it.
2014-10-17 23:23:21 +02:00
Ludovic Courtès 4e097f8606 hydra: Honor 'package-supported-systems'.
* guix/packages.scm (%supported-systems): New variable.
  (<package>)[platforms]: Rename to...
  [supported-systems]: ... this.  Change default to %SUPPORTED-SYSTEMS.
* build-aux/hydra/gnu-system.scm (job-name, package->job): New
  procedures, formerly in 'hydra-jobs'.  Honor 'package-supported-systems'.
  (hydra-jobs): Use them.
2014-10-06 19:34:27 +02:00
Mark H Weaver 9e9cb0c7ba hydra: Adjust to (gnu packages commencement) split from (gnu packages base).
* build-aux/hydra/gnu-system.scm: Import (gnu packages commencement).
2014-08-28 13:57:08 -04:00
Ludovic Courtès a69576ea85 system: Add '%devtmpfs-file-system' for udev, and '%base-file-systems'.
Suggested by Adam Pribyl <pribyl@lowlevel.cz>.

* gnu/services/base.scm (udev-service)[requirement]: Add
  'file-system-/dev'.
* gnu/system/file-systems.scm (%devtmpfs-file-system,
  %base-file-systems): New variables.
* gnu/system/install.scm (installation-services)[file-systems]: Use
  %base-file-systems.
* build-aux/hydra/demo-os.scm (file-systems): Likewise.
* doc/guix.texi (System Installation): Show %BASE-FILE-SYSTEMS in the
  example.
  (Using the Configuration System): Likewise.
  (File Systems): Document %base-file-systems, %devtmpfs-file-system,
  %binary-format-file-system, and %fuse-control-file-system.
2014-07-22 16:59:10 +02:00
Ludovic Courtès 927097effd services: Add Tor service.
* gnu/services/networking.scm (tor-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
* build-aux/hydra/demo-os.scm: Use it.  Add TOR and TORSOCKS to
  'packages'.
2014-07-12 23:17:54 +02:00
Ludovic Courtès a94546ecc4 gnu: linux-libre: Add i686 and x86_64 full-blown configs.
Thanks to Jason Self <jself@gnu.org> for the kernel configs.

* gnu/packages/linux.scm (kernel-config): New procedure.
  (linux-libre)[build-phase]: Copy it to .config.  Reduce the list of
  things appended to .config.
  [native-inputs]: Add "kconfig" input.
* gnu/packages/linux-libre-i686.conf,
  gnu/packages/linux-libre-x86_64.conf: New files, from
  <http://jxself.org/x86-32.txt> and <http://jxself.org/x86-64.txt>.
* Makefile.am (KCONFIGS): New variable.
  (nobase_dist_guilemodule_DATA): Add it.
2014-07-10 00:35:27 +02:00
Ludovic Courtès b76a384715 system: Use the default 'groups' field.
* gnu/system/install.scm (installation-os): Remove 'groups' field.
* build-aux/hydra/demo-os.scm: Likewise.
2014-06-22 22:28:24 +02:00
Ludovic Courtès 72507e23b5 system: Remove useless 'members' field of 'user-group'.
* gnu/system/shadow.scm (<user-group>)[members]: Remove field.
* gnu/system/install.scm (installation-os)[users]: Remove 'members'
  fields.  Use 'supplementary-groups' for 'guest'.
* build-aux/hydra/demo-os.scm (users): Likewise.
* gnu/services/base.scm (guix-service): Remove 'members' field.
2014-06-22 21:48:35 +02:00
Ludovic Courtès 6f436c54d6 system: Define '%base-packages' and use it.
* gnu/system.scm (<operating-system>)[packages]: Change default value to
  %BASE-PACKAGES.
  (%base-packages): New variable.
* gnu/system/install.scm (installation-os): Use it when defining the
  'packages' field.
* doc/guix.texi (Using the Configuration System): Use %BASE-PACKAGES in
  example.  Remove now unneeded module imports.  Explain this.
2014-06-04 18:15:50 +02:00
Ludovic Courtès a549ab4bcf hydra: Add Avahi to the demo OS.
* build-aux/hydra/demo-os.scm: Use 'avahi-service' and 'dbus-service'.
  Add AVAHI to 'packages'.
2014-06-03 11:49:28 +02:00
Ludovic Courtès 9e69b09857 hydra: Make USB installation image smaller.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Reduce size of 'usb-image'
  to 630 MiB.
2014-06-01 23:50:39 +02:00
Ludovic Courtès 10d86d54f0 hydra: Build the installation image.
* build-aux/hydra/gnu-system.scm (demo-os): New procedure.
  (qemu-jobs): Build for both x86_64-linux and i686-linux.  Add
  'usb-image' job that builds INSTALLATION-OS.
2014-05-31 22:15:06 +02:00
Ludovic Courtès 548d4c1395 system: Add 'issue' field.
* gnu/system.scm (<operating-system>)[issue]: New field.
  (%default-issue): New variable.
  (etc-directory): Add #:issue parameter and honor it.
  (operating-system-etc-directory): Adjust call accordingly.
* build-aux/hydra/demo-os.scm: Add 'issue' field.
2014-05-31 22:01:05 +02:00
Ludovic Courtès 411fc81d63 hydra: Don't cross-build from MIPS to MIPS.
* build-aux/hydra/gnu-system.scm (hydra-jobs)[same?, either]: New
  procedure.  Use it in 'remove' call.
2014-05-29 23:32:47 +02:00
Ludovic Courtès 0ba10e086f hydra: Build for mips64el-linux.
* build-aux/hydra/gnu-system.scm (hydra-jobs)[systems]: Add
  mips64el-linux.
2014-05-28 23:33:58 +02:00
Ludovic Courtès c938494598 Add (gnu) module.
* gnu.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* build-aux/hydra/demo-os.scm: Use (gnu) and strip import list
  accordingly.
* doc/guix.texi (Using the Configuration System): Adjust example
  accordingly.
2014-05-22 23:24:13 +02:00
Ludovic Courtès c5df183956 Add (gnu system file-systems).
This fixes a circular dependency between (gnu system) and (gnu system
linux-initrd), where the latter could end up being compiled before
'file-system-type' was defined as a macro.

* gnu/system.scm (<file-system>, %fuse-control-file-system,
  %binary-format-file-system): Move to...
* gnu/system/file-systems.scm: ... here.  New file.
* build-aux/hydra/demo-os.scm, gnu/system/linux-initrd.scm,
  gnu/system/vm.scm: Use it.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-05-20 23:37:11 +02:00
Ludovic Courtès d5b429abda system: Add 'grub-configuration' record.
* gnu/system/grub.scm (<grub-configuration>): New record type.
  (grub-configuration-file): Add 'config' parameter; remove
  #:default-entry and #:timeout.  Honor CONFIG.
* gnu/system.scm (<operating-system>): Remove 'bootloader-entries'
  field; remove default value for 'bootloader' field.
  (operating-system-grub.cfg): Pass the 'bootloader' field to
  'grub-configuration-file'.
* build-aux/hydra/demo-os.scm (bootloader): New field.
2014-05-18 22:27:23 +02:00
Ludovic Courtès d216323f0a hydra: Add dummy root file system declaration.
* build-aux/hydra/demo-os.scm (file-systems): Add "/" file system.
2014-05-16 21:57:11 +02:00
Ludovic Courtès c336a66fe8 build: Remove fusectl from the default file systems in the demo OS.
* build-aux/hydra/demo-os.scm (file-systems): Comment out
  %FUSE-CONTROL-FILE-SYSTEM, since fuse.ko is missing by default in the
  freestanding VM image.
2014-05-15 22:47:53 +02:00
Ludovic Courtès 2717a89a84 system: Provide declarations for the 'fusectl' and 'binfmt_misc' file systems.
* gnu/system.scm (%fuse-control-file-system,
  %binary-format-file-system): New variables.
* build-aux/hydra/demo-os.scm (file-systems): New field.
2014-05-14 23:17:03 +02:00
Ludovic Courtès ab6a279abb system: Make accounts and groups at activation time.
* gnu/services/base.scm (guix-build-accounts): Remove #:gid parameter;
  add #:group.  Remove 'password' and 'gid' fields in 'user-account'
  form, and add 'group'.
  (guix-service): Remove #:build-user-gid parameter.  Remove 'id' field
  in 'user-group' form.
* gnu/system.scm (etc-directory): Remove #:groups and #:accounts.  No
  longer produce files "passwd", "shadow", and "group".  Adjust caller
  accordingly.
  (%root-account): New variable.
  (operating-system-accounts): Add 'users' variable.  Add %ROOT-ACCOUNT
  only of 'operating-system-users' doesn't already contain a root
  account.
  (user-group->gexp, user-account->gexp): New procedures.
  (operating-system-boot-script): Add calls to 'setenv' and
  'activate-users+groups' in gexp.
* gnu/system/linux.scm (base-pam-services): Add PAM services for
  "user{add,del,mode}" and "group{add,del,mod}".
* gnu/system/shadow.scm (<user-account>)[gid]: Rename to...
  [group]: ... this.
  [supplementary-groups]: New field.
  [uid, password]: Default to #f.
  (<user-group>)[id]: Default to #f.
  (group-file, passwd-file): Remove.
* gnu/system/vm.scm (operating-system-default-contents)[user-directories]:
  Remove.  Add "/home" to the directives.
* guix/build/activation.scm (add-group, add-user,
  activate-users+groups): New procedures.
2014-05-11 22:41:58 +02:00
Ludovic Courtès 696893801c system: Add 'sudo' to the setuid programs, and handle /etc/sudoers.
* gnu/system.scm (<operating-system>)[groups]: Change default to just
  the 'root' group.
  [sudoers]: New field.
  (etc-directory): Add #:sudoers parameter.  Add 'sudoers' to the
  file union.
  (operating-system-etc-directory): Pass #:sudoers to 'etc-directory'.
  (%setuid-programs): Add 'sudo'.
  (%sudoers-specification): New variable.
* gnu/system/linux.scm (base-pam-services): Add 'sudo'.
* build-aux/hydra/demo-os.scm: Add 'groups' field; add 'guest' to the
  'wheel' group.
2014-05-01 22:31:36 +02:00
Ludovic Courtès 09e028f45f system: Add support for setuid binaries.
* gnu/system.scm (<operating-system>)[pam-services, setuid-programs]:
  New fields.
  (etc-directory)[bashrc]: Prepend /run/setuid-programs to $PATH.
  (operating-system-etc-directory): Honor
  'operating-system-pam-services'.
  (%setuid-programs): New variable.
  (operating-system-boot-script): Add (guix build utils) to the set of
  imported modules.  Call 'activate-setuid-programs' in boot script.
* gnu/system/linux.scm (base-pam-services): New procedure.
* guix/build/activation.scm (%setuid-directory): New variable.
  (activate-setuid-programs): New procedure.
* build-aux/hydra/demo-os.scm: Add 'pam-services' field.
2014-04-30 23:16:23 +02:00
Ludovic Courtès 616d9e1d2c hydra: Specify the image size of the QEMU image.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Specify
  #:disk-image-size.
2014-04-11 19:08:25 +02:00
Ludovic Courtès e5c88dd739 hydra: Make demo OS smaller.
* build-aux/hydra/demo-os.scm: Replace Emacs with Zile.  Enable
  auto-login as "guest".  This is the configuration used for the Guix
  0.6 VM image.
2014-04-09 20:54:10 +02:00
Ludovic Courtès 0ec6237b2e hydra: qemu-jobs: Return a derivation file name, not a derivation.
* build-aux/hydra/gnu-system.scm (qemu-jobs)[->alist]: Return the
  derivation file name, not the derivation.
2014-04-06 21:18:13 +02:00
Ludovic Courtès 1b282ea849 hydra: Change 'qemu-jobs' to return name/thunk pairs.
* build-aux/hydra/gnu-system.scm (qemu-jobs)[->job]: Change the cdr to a
  thunk.
2014-04-05 22:57:06 +02:00
Ludovic Courtès 731b996255 hydra: Add 'qemu-image' job.
* build-aux/hydra/demo-os.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
* build-aux/hydra/gnu-system.scm (qemu-jobs): New procedure.
  (hydra-jobs): Use it.
* guix/scripts/system.scm (read-operating-system): Export.
2014-04-05 22:40:16 +02:00
Ludovic Courtès 1971737f2b hydra: Hard-code target systems.
* build-aux/hydra/gnu-system.scm (hydra-jobs)[systems]: Define locally,
  independently of ARGUMENTS.  This matches the new Hydra convention,
  where using a 'system' input is deprecated.
2014-03-25 18:57:07 +01:00
Ludovic Courtès d452b595f9 hydra: Fix typo in core package list.
* build-aux/hydra/gnu-system.scm: Use (gnu packages gcc).
  (%core-packages): Remove nonexistent 'gcc'; add GCC-4.8 and GCC-4.7.
2014-03-25 13:57:51 +01:00
Ludovic Courtès e795890212 hydra: Remove cross-builds from i686-linux to mips64el-linux-gnuabi64.
* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs]: Define
  'from-32-to-64?'.  Filter out %CROSS-TARGETS that match.
2014-03-25 13:55:56 +01:00
Ludovic Courtès 707c8b2ca7 hydra: Build GCC and glibc, not their '-final' variant.
* build-aux/hydra/gnu-system.scm (%core-packages): Replace GCC-FINAL and
  GLIBC-FINAL with GCC and GLIBC.
2014-03-25 13:40:27 +01:00
Ludovic Courtès 829ecd002e Merge branch 'master' into core-updates
Conflicts:
	gnu/packages/libwebsockets.scm
2014-02-27 23:49:30 +01:00
Ludovic Courtès 65f7c35d02 hydra: Set the default absolute build timeout to 20h.
* build-aux/hydra/gnu-system.scm (package->alist): Add 'timeout' item.
2014-02-27 22:24:02 +01:00
Ludovic Courtès 200a97e64f Merge branch 'master' into core-updates 2014-01-25 17:07:21 +01:00
Ludovic Courtès a8bcd6eb6f hydra: Add debugging for the Guix job set.
* build-aux/hydra/guix.scm: Set '%load-verbosely'.
2014-01-18 14:41:58 +01:00
Ludovic Courtès 1731596792 hydra: Add GCC, Binutils, and libc to the core package set.
* build-aux/hydra/gnu-system.scm (%core-packages): Add GCC-FINAL,
  GLIBC-FINAL, and BINUTILS.
2014-01-11 11:47:38 +01:00
Ludovic Courtès dfb74e50b7 hydra: Add zlib, gzip, and xz to the core package set.
* build-aux/hydra/gnu-system.scm (%core-packages): Add zlib, gzip, and xz.
2013-12-10 13:56:26 +01:00
Ludovic Courtès a2b154d7cb hydra: Adjust to gettext package rename.
* build-aux/hydra/gnu-system.scm (%core-packages): Change 'gettext' to
  'gnu-gettext'.
2013-11-20 23:55:38 +01:00
Ludovic Courtès 72d9148fbf hydra: Pass the directory name of the Nix checkout.
* build-aux/hydra/guix.scm (hydra-jobs): Extract the 'file-name' item
  from NIX-CHECKOUT, and pass that to 'tarball-package'.
2013-09-18 23:07:45 +02:00
Ludovic Courtès 1210c32ecc hydra: Fix typo.
* build-aux/hydra/guix.scm (tarball-package): Unquote 'nix-checkout'.
2013-09-18 20:58:49 +02:00
Ludovic Courtès 97d010b7f8 hydra: Add missing import.
* build-aux/hydra/gnu-system.scm, build-aux/hydra/guix.scm: Use (guix
  derivations).
2013-09-18 20:49:47 +02:00
Ludovic Courtès 3301f17970 hydra: Return the .drv file names, not the <derivation> objects.
* build-aux/hydra/gnu-system.scm (package->alist): Call
  'derivation-file-name' on the result of 'package-derivation'.
* build-aux/hydra/guix.scm (package->alist): Likewise.
2013-09-18 19:37:50 +02:00
Ludovic Courtès 37c0ce3d27 hydra: Point the Git submodule to our local copy.
* build-aux/hydra/guix.scm (tarball-package): Add 'nix-checkout'
  parameter.  Replace 'patch-bootstrap-script' phase by
  'set-nix-module'.
  (hydra-jobs): Get the 'nix' value from ARGUMENTS, and pass it to
  'tarball-package'.
2013-09-18 19:00:13 +02:00
Ludovic Courtès 6bf25b7b05 hydra: Support a 'subset' argument.
* build-aux/hydra/gnu-system.scm (%core-packages): New variable.
  (%packages-to-cross-build): Make an alias for %CORE-PACKAGES.
  (hydra-jobs): Check for the 'subset' argument, and honor it for values
  "all" and "core".
2013-09-08 12:10:25 +02:00
Ludovic Courtès 0280ef2203 hydra: Add Graphviz as an input to the "tarball" job.
* build-aux/hydra/guix.scm (tarball-package): Add GRAPHVIZ to
  `native-inputs'.
2013-09-03 22:21:48 +02:00
Ludovic Courtès 7eed1d0438 hydra: Add Git as an input to the "tarball" job.
* build-aux/hydra/guix.scm (tarball-package): Add `native-inputs' field.
2013-09-03 22:07:21 +02:00
Ludovic Courtès ef4eca529b hydra: Comment out all Git invocations in `bootstrap'.
* build-aux/hydra/guix.scm (tarball-package): Comment out all `git'
  invocations.
2013-08-25 20:37:59 +02:00
Ludovic Courtès d29aa3b5a3 hydra: Add missing import.
* build-aux/hydra/guix.scm: Use (srfi srfi-26).
2013-08-25 18:58:15 +02:00
Ludovic Courtès 6ad507ae54 hydra: Return a symbol/thunk pair.
* build-aux/hydra/guix.scm (hydra-jobs): Return a symbol/thunk pair.
2013-08-25 16:48:10 +02:00
Ludovic Courtès f29f066439 hydra: Extract the actual file name from the Guix checkout.
* build-aux/hydra/guix.scm (hydra-jobs): Extract the `file-name' part of
  CHECKOUT.
2013-08-24 18:24:17 +02:00
Ludovic Courtès 59e6ae6cf1 hydra: Add job to run "make distcheck" on Guix.
* build-aux/hydra/guix.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2013-08-24 17:30:32 +02:00
Ludovic Courtès 4ec09bb410 hydra: Fix typo.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Use `cons', not `append'.
2013-07-16 15:27:15 +02:00
Ludovic Courtès 77bed84246 hydra: Build for all the specified systems.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Pick all the `system'
  keys in ARGUMENTS.
  [cross-jobs]: Turn into a procedure, with a `system' parameter.
  Build packages for all of SYSTEMS and %CROSS-TARGETS.
2013-07-16 13:42:34 +02:00
Ludovic Courtès 195e81aa52 hydra: Distinguish between jobs for different system types.
* build-aux/hydra/gnu-system.scm (package-job, package-cross-job):
  Append `.SYSTEM' to the job name.
2013-07-16 09:59:25 +02:00