summary refs log tree commit diff
path: root/build-aux
AgeCommit message (Collapse)Author
2014-10-06hydra: Honor 'package-supported-systems'.Ludovic Courtès
* 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-09-13sync-descriptions: Improve output of proposed descriptions.Ludovic Courtès
* build-aux/sync-descriptions.scm (escape-quotes): New procedure. Use it. Add quotes around the proposed description.
2014-08-28hydra: Adjust to (gnu packages commencement) split from (gnu packages base).Mark H Weaver
* build-aux/hydra/gnu-system.scm: Import (gnu packages commencement).
2014-08-28gnu: Split (gnu packages base), adding (gnu packages commencement).Ludovic Courtès
* gnu/packages/base.scm (gnu-make-boot0, diffutils-boot0, findutils-boot0, %boot0-inputs, nix-system->gnu-triplet, boot-triplet, binutils-boot0, gcc-boot0, perl-boot0, linux-libre-headers-boot0, texinfo-boot0, %boot1-inputs, glibc-final-with-bootstrap-bash, cross-gcc-wrapper, static-bash-for-glibc, glibc-final, gcc-boot0-wrapped, %boot2-inputs, binutils-final, libstdc++, gcc-final, ld-wrapper-boot3, %boot3-inputs, bash-final, %boot4-inputs, guile-final, gnu-make-final, ld-wrapper, coreutils-final, grep-final, %boot5-inputs, %final-inputs, canonical-package, gcc-toolchain, gcc-toolchain-4.8, gcc-toolchain-4.9): Move to... * gnu/packages/commencement.scm: ... here. New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. * build-aux/check-final-inputs-self-contained.scm: Adjust accordingly. * gnu/packages/cross-base.scm: Likewise. * gnu/packages/make-bootstrap.scm: Likewise. * guix/build-system/cmake.scm (cmake-build): Likewise. * guix/build-system/gnu.scm (standard-packages, gnu-build, gnu-cross-build): Likewise. * guix/build-system/perl.scm (perl-build): Likewise. * guix/build-system/python.scm (python-build): Likewise. * guix/build-system/trivial.scm (guile-for-build): Likewise. * guix/download.scm (url-fetch): Likewise. * guix/gexp.scm (default-guile): Likewise. * guix/git-download.scm (git-fetch): Likewise. * guix/monads.scm (run-with-store): Likewise. * guix/packages.scm (default-guile): Likewise. * guix/scripts/package.scm (guix-package): Likewise. * guix/scripts/refresh.scm: Likewise. * guix/svn-download.scm (svn-fetch): Likewise. * tests/builders.scm (%bootstrap-inputs, %bootstrap-search-paths): Likewise. * tests/packages.scm ("GNU Make, bootstrap"): Likewise. * tests/guix-package.sh: Likewise. * gnu/services/base.scm: Use 'canonical-package' instead of xxx-final. * gnu/services/xorg.scm: Likewise. * gnu/system/vm.scm: Likewise. * guix/scripts/pull.scm (guix-pull): Likewise.
2014-07-22system: Add '%devtmpfs-file-system' for udev, and '%base-file-systems'.Ludovic Courtès
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-12services: Add Tor service.Ludovic Courtès
* 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-10gnu: linux-libre: Add i686 and x86_64 full-blown configs.Ludovic Courtès
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-06-22system: Use the default 'groups' field.Ludovic Courtès
* gnu/system/install.scm (installation-os): Remove 'groups' field. * build-aux/hydra/demo-os.scm: Likewise.
2014-06-22system: Remove useless 'members' field of 'user-group'.Ludovic Courtès
* 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-18build: Add 'assert-final-inputs-self-contained' rule.Ludovic Courtès
* build-aux/check-final-inputs-self-contained.scm: New file. * Makefile.am (EXTRA_DIST): Add it. (assert-final-inputs-self-contained): New target. (distcheck-hook): Depend on it.
2014-06-04system: Define '%base-packages' and use it.Ludovic Courtès
* 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-03hydra: Add Avahi to the demo OS.Ludovic Courtès
* build-aux/hydra/demo-os.scm: Use 'avahi-service' and 'dbus-service'. Add AVAHI to 'packages'.
2014-06-03list-packages: Add links to Hydra for mips64el-linux.Ludovic Courtès
* build-aux/list-packages.scm (package->sxml): Add 'url' call for mips64el-linux.
2014-06-01hydra: Make USB installation image smaller.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (qemu-jobs): Reduce size of 'usb-image' to 630 MiB.
2014-05-31hydra: Build the installation image.Ludovic Courtès
* 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-31system: Add 'issue' field.Ludovic Courtès
* 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-29hydra: Don't cross-build from MIPS to MIPS.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (hydra-jobs)[same?, either]: New procedure. Use it in 'remove' call.
2014-05-28hydra: Build for mips64el-linux.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (hydra-jobs)[systems]: Add mips64el-linux.
2014-05-22Add (gnu) module.Ludovic Courtès
* 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-20Add (gnu system file-systems).Ludovic Courtès
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-18system: Add 'grub-configuration' record.Ludovic Courtès
* 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-16hydra: Add dummy root file system declaration.Ludovic Courtès
* build-aux/hydra/demo-os.scm (file-systems): Add "/" file system.
2014-05-15build: Remove fusectl from the default file systems in the demo OS.Ludovic Courtès
* 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-14system: Provide declarations for the 'fusectl' and 'binfmt_misc' file systems.Ludovic Courtès
* 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-11system: Make accounts and groups at activation time.Ludovic Courtès
* 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-01system: Add 'sudo' to the setuid programs, and handle /etc/sudoers.Ludovic Courtès
* 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-04-30system: Add support for setuid binaries.Ludovic Courtès
* 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-11hydra: Specify the image size of the QEMU image.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (qemu-jobs): Specify #:disk-image-size.
2014-04-09hydra: Make demo OS smaller.Ludovic Courtès
* 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-06hydra: qemu-jobs: Return a derivation file name, not a derivation.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (qemu-jobs)[->alist]: Return the derivation file name, not the derivation.
2014-04-05hydra: Change 'qemu-jobs' to return name/thunk pairs.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (qemu-jobs)[->job]: Change the cdr to a thunk.
2014-04-05hydra: Add 'qemu-image' job.Ludovic Courtès
* 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-03-25check-available-binaries: Make sure substitutes are enabled.Ludovic Courtès
* build-aux/check-available-binaries.scm: Add call to 'set-build-options'.
2014-03-25hydra: Hard-code target systems.Ludovic Courtès
* 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-25hydra: Fix typo in core package list.Ludovic Courtès
* 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-25hydra: Remove cross-builds from i686-linux to mips64el-linux-gnuabi64.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs]: Define 'from-32-to-64?'. Filter out %CROSS-TARGETS that match.
2014-03-25hydra: Build GCC and glibc, not their '-final' variant.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (%core-packages): Replace GCC-FINAL and GLIBC-FINAL with GCC and GLIBC.
2014-02-27Merge branch 'master' into core-updatesLudovic Courtès
Conflicts: gnu/packages/libwebsockets.scm
2014-02-27hydra: Set the default absolute build timeout to 20h.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (package->alist): Add 'timeout' item.
2014-01-25Merge branch 'master' into core-updatesLudovic Courtès
2014-01-18hydra: Add debugging for the Guix job set.Ludovic Courtès
* build-aux/hydra/guix.scm: Set '%load-verbosely'.
2014-01-11hydra: Add GCC, Binutils, and libc to the core package set.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (%core-packages): Add GCC-FINAL, GLIBC-FINAL, and BINUTILS.
2013-12-10hydra: Add zlib, gzip, and xz to the core package set.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (%core-packages): Add zlib, gzip, and xz.
2013-11-24list-packages: Make 'snippet-link' more tolerant.Ludovic Courtès
* build-aux/list-packages.scm (package->sxml)[snippet-link]: If 'package-field-location' returns #f, use 'package-location.
2013-11-20hydra: Adjust to gettext package rename.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (%core-packages): Change 'gettext' to 'gnu-gettext'.
2013-11-20Merge branch 'master' into core-updatesLudovic Courtès
Conflicts: guix/packages.scm
2013-11-19list-packages: Produce link to the origin snippet, if any.Ludovic Courtès
* build-aux/list-packages.scm (package->sxml)[patches](snippet-link): New procedure. Use it to produce a link to the 'origin-snippet', if any.
2013-11-16gnu: Switch to GCC 4.8 as the default compiler.Ludovic Courtès
* build-aux/download.scm (file-name->uri): Update URL to /20131110. * gnu-system.am (nodist_bootstrap_x86_64_linux_DATA, nodist_bootstrap_i686_linux_DATA): Change base name to 'guile-2.0.9.tar.xz'. (gnu/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz, gnu/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz): New targets. (gnu/packages/bootstrap/x86_64-linux/guile-2.0.7.tar.xz, gnu/packages/bootstrap/i686-linux/guile-2.0.7.tar.xz): Remove. (gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz): Update hash. * gnu/packages/base.scm (gcc-boot0): Base upon GCC-4.8. Enable C++, and add a few --disable flags. Remove MPFR workaround. (cross-gcc-wrapper): Base upon GCC-4.8. Wrap both 'gcc' and 'g++'. (libstdc++): New variable. (gcc-final): Add it as an input; pass corresponding -I and -L flags. * gnu/packages/bootstrap.scm (%bootstrap-guile): Always use "guile-2.0.9.tar.xz. (%bootstrap-coreutils&co): Update hashes. (%bootstrap-binutils): Update URL and hashes. (%bootstrap-glibc): Likewise. (%bootstrap-gcc): Likewise. * gnu/packages/gcc.scm (gcc-4.7): Add LDFLAGS. Add --disable-libstdcxx-pch. Modify the GNU_USER*_SPEC macros from gnu-user*.h instead of the raw _SPEC macros.
2013-11-03gnu: add bootstrap support for mips64el-linux using the MIPS N32 ABI.Mark H Weaver
* .gitignore: Add entry for bootstrap/mips64el-linux/guile-2.0.9.tar.xz. * gnu-system.am (bootstrap_mips64el_linuxdir, dist_bootstrap_mips64el_linux_DATA, nodist_bootstrap_mips64el_linux_DATA): New variables. (DISTCLEANFILES): Add $(nodist_bootstrap_mips64el_linux_DATA). (gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz): New target. * build-aux/download.scm (file-name->uri): Adapt to the newer mips64el-linux bootstrap tarballs. * gnu/packages/bootstrap.scm (%bootstrap-guile, %bootstrap-coreutils&co, %bootstrap-binutils, %bootstrap-glibc, %bootstrap-gcc): Adapt to the newer mips64el-linux bootstrap tarballs. * gnu/packages/bootstrap/mips64el-linux/bash: * gnu/packages/bootstrap/mips64el-linux/mkdir: * gnu/packages/bootstrap/mips64el-linux/tar: * gnu/packages/bootstrap/mips64el-linux/xz: New files.
2013-10-09list-packages: Show a list of patches for each package.Ludovic Courtès
* build-aux/list-packages.scm (list-join): New procedure. (package->sxml)[patch-url]: New procedure. Use it.