jackhill/guix/guix.git
5 years agognu: OpenSSH: Fix CVE-2018-20685.
Leo Famulari [Tue, 15 Jan 2019 13:52:52 +0000 (08:52 -0500)]
gnu: OpenSSH: Fix CVE-2018-20685.

* gnu/packages/patches/openssh-CVE-2018-20685.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ssh.scm (openssh)[source]: Use it.

5 years agoservices: openssh: Add escape hatch.
Ricardo Wurmus [Thu, 17 Jan 2019 16:53:57 +0000 (17:53 +0100)]
services: openssh: Add escape hatch.

* gnu/services/ssh.scm (<openssh-configuration>)[extra-content]: New field.
* doc/guix.texi (Networking Services): Document it.

5 years agognu: ghc-cryptonite: Disable tests.
Ricardo Wurmus [Thu, 17 Jan 2019 16:45:51 +0000 (17:45 +0100)]
gnu: ghc-cryptonite: Disable tests.

* gnu/packages/haskell-crypto.scm (ghc-cryptonite)[arguments]: Disable tests.

5 years agoscripts: Fix typo.
Ricardo Wurmus [Thu, 17 Jan 2019 16:37:44 +0000 (17:37 +0100)]
scripts: Fix typo.

* guix/scripts/download.scm (show-help): Fix typo.

5 years agognu: ghc-8: Patch ghc-pkg for reproducibility.
Ricardo Wurmus [Thu, 17 Jan 2019 08:17:41 +0000 (09:17 +0100)]
gnu: ghc-8: Patch ghc-pkg for reproducibility.

Fixes <https://bugs.gnu.org/33922>.

Co-authored-by: Timothy Sample <samplet@ngyro.com>.
* gnu/packages/haskell.scm (ghc-8)[arguments]: Add build phase
"fix-ghc-pkg-nondeterminism".

5 years agoUpdate 'TODO'.
Mathieu Othacehe [Thu, 17 Jan 2019 13:10:23 +0000 (14:10 +0100)]
Update 'TODO'.

* TODO (Installer): New section.

5 years agoinstaller: Fix manual partitioning.
Ludovic Courtès [Wed, 16 Jan 2019 22:08:20 +0000 (23:08 +0100)]
installer: Fix manual partitioning.

* gnu/installer/newt/partition.scm (run-partioning-page): When METHOD is
'manual, use 'filter-map' on DEVICES, not 'map', since 'disk-new' can
return #f.

5 years agoinstaller: "formating" → "formatting".
Ludovic Courtès [Wed, 16 Jan 2019 18:20:26 +0000 (19:20 +0100)]
installer: "formating" → "formatting".

* gnu/installer/newt/partition.scm,
gnu/installer/parted.scm: Replace "formating" with "formatting".

5 years agoinstaller: Adjust messages on the final page.
Ludovic Courtès [Wed, 16 Jan 2019 17:01:38 +0000 (18:01 +0100)]
installer: Adjust messages on the final page.

* gnu/installer/newt/final.scm (run-config-display-page)
(run-install-success-page, run-install-failed-page): Adjust messages.

5 years agosyscalls: 'device-in-use?' returns #f upon EINVAL.
Ludovic Courtès [Wed, 16 Jan 2019 16:43:52 +0000 (17:43 +0100)]
syscalls: 'device-in-use?' returns #f upon EINVAL.

This mirrors the behavior of the 'fdisk_device_is_used' function of
util-linux.

* guix/build/syscalls.scm (device-in-use?): Return #f upon EINVAL.

5 years agosyscalls: 'device-in-use?' does not create a port.
Ludovic Courtès [Wed, 16 Jan 2019 15:16:24 +0000 (16:16 +0100)]
syscalls: 'device-in-use?' does not create a port.

* guix/build/syscalls.scm (device-in-use?): Use 'open-fdes' rather than
'open-file'.

5 years agoinstaller: partition: Add encryption password confirmation.
Mathieu Othacehe [Sat, 12 Jan 2019 17:45:58 +0000 (18:45 +0100)]
installer: partition: Add encryption password confirmation.

* gnu/installer/newt/partition.scm (prompt-luks-passwords): Add password
confirmation page.

5 years agoinstaller: keymap: Put English layout and international variant ahead.
Mathieu Othacehe [Sat, 12 Jan 2019 17:26:11 +0000 (18:26 +0100)]
installer: keymap: Put English layout and international variant ahead.

* gnu/installer/newt/keymap.scm (sort-layouts): New procedure,
(sort-variants): new procedure,
(run-keymap-page): use the two procedures above to sort layouts and variants.

5 years agoinstaller: Remove debug popup.
Mathieu Othacehe [Sun, 6 Jan 2019 10:11:51 +0000 (11:11 +0100)]
installer: Remove debug popup.

* gnu/installer/newt/partition.scm (run-partioning-page): Remove debug
partition popup.

5 years agoinstaller: welcome: Put "Graphical installer" ahead.
Mathieu Othacehe [Sun, 6 Jan 2019 10:06:51 +0000 (11:06 +0100)]
installer: welcome: Put "Graphical installer" ahead.

* gnu/installer/newt/welcome.scm (run-welcome-page): Propose "Graphical
  install" before shell based install.

5 years agoinstaller: Rename "Ok" buttons to "OK".
Mathieu Othacehe [Sun, 6 Jan 2019 10:04:14 +0000 (11:04 +0100)]
installer: Rename "Ok" buttons to "OK".

* gnu/installer/newt/page.scm: s/Ok/OK/.
* gnu/installer/newt/partition.scm: Ditto.
* gnu/installer/newt/user.scm: Ditto.

5 years agoinstaller: parted: Do not call BLKRRPART on loop devices.
Mathieu Othacehe [Tue, 1 Jan 2019 18:23:21 +0000 (19:23 +0100)]
installer: parted: Do not call BLKRRPART on loop devices.

* gnu/installer/parted.scm (with-delay-device-in-use?): Return immediately if
the file-name passed as argument designates a loop device.

5 years agoinstaller: Various renamins follow-up.
Mathieu Othacehe [Sun, 9 Dec 2018 02:09:43 +0000 (11:09 +0900)]
installer: Various renamins follow-up.

s/path/file and s/crypt/encrypt.

* gnu/installer/newt/partition.scm: Apply renamings.
* gnu/installer/parted.scm: Ditto.

5 years agoinstaller: Various renamings.
Mathieu Othacehe [Sat, 8 Dec 2018 14:52:13 +0000 (23:52 +0900)]
installer: Various renamings.

1. s/partitionment/partitioning/
2. s/crypted/encrypted/

* gnu/installer.scm (installer-steps): Apply renamings.
* gnu/installer/newt/partition.scm (run-disk-page): ditto,
* gnu/installer/parted.scm (auto-partition): ditto,
(luks-format-and-open): ditto,
(luks-close): ditto,
(user-partitions->configuration): ditto.

5 years agoinstaller: parted: Use read-luks-partition-uuid instead of
Mathieu Othacehe [Sat, 8 Dec 2018 14:36:07 +0000 (23:36 +0900)]
installer: parted: Use read-luks-partition-uuid instead of
find-partition-by-luks-uuid.

* gnu/installer/parted.scm (user-partition->mapped-device): Replace
read-luks-partition-uuid by find-partition-by-luks-uuid,
(user-partition->file-system): only compute uuid if the partition
is not encrypted.

5 years agofile-systems: Add read-luks-partition-uuid.
Mathieu Othacehe [Sat, 8 Dec 2018 14:32:23 +0000 (23:32 +0900)]
file-systems: Add read-luks-partition-uuid.

Add a specific procedure to read luks partition uuid.

* gnu/build/file-systems.scm (luks-partition-field-reader): New procedure ...
(luks-partition-uuid-predicate): ... used here,
(read-luks-partition-uuid): new exported procedure.

5 years agoinstaller: Clear screen upon exit.
Mathieu Othacehe [Sat, 8 Dec 2018 01:37:56 +0000 (10:37 +0900)]
installer: Clear screen upon exit.

* gnu/installer/newt.scm (exit): Call clear-screen after newt-finish,
(exit-error): ditto.

5 years agoinstaller: partionment: Add encryption support.
Mathieu Othacehe [Fri, 7 Dec 2018 05:04:25 +0000 (14:04 +0900)]
installer: partionment: Add encryption support.

* gnu/installer.scm (set-installer-path): Add cryptsetup.
* gnu/installer/newt/partition.scm (prompt-luks-passwords): New procedure,
(run-partioning-page): Add the possibility to set encryption to "On" on a
partition and choose a label, add a new partition scheme: "Guided - using the
entire disk with encryption", prompt for encryption passwords before
proceeding to formating.
* gnu/installer/parted.scm (<user-partition>)[crypt-label],
[crypt-password]: New fields,
(partition-description): add the encryption label,
(user-partition-description): add an encryption field,
(auto-partition): add two partitioning schemes: entire-crypted-root and
entire-crypted-root-home,
(call-with-luks-key-file): new procedure,
(user-partition-upper-path): new procedure,
(luks-format-and-open): new procedure,
(luks-close): new procedure,
(format-user-partitions): format and open luks partitions before creating
file-system.
(mount-user-partitions): use the path returned by user-partition-upper-path,
(umount-user-partitions): close the luks partitions,
(user-partition->file-system): set device field to label for luks partitions
and to uuid for the rest,
(user-partition->mapped-device): new procedure,
(user-partitions->configuration): add mapped-devices field.

5 years agoinstaller: partition: Fix typo.
Mathieu Othacehe [Thu, 6 Dec 2018 03:08:23 +0000 (12:08 +0900)]
installer: partition: Fix typo.

* gnu/installer/newt/partition.scm (run-disk-page): Fix typo.

5 years agoinstaller: partition: Fix swaping and use syscalls.
Mathieu Othacehe [Thu, 6 Dec 2018 03:05:42 +0000 (12:05 +0900)]
installer: partition: Fix swaping and use syscalls.

* gnu/installer/parted.scm (start-swaping): Remove it,
(stop-swaping): Remove it,
(start-swapping): New procedure using swapon syscall,
(stop-swapping): New procedure using swapoff syscall,
(with-mounted-partitions): Use previous start-swapping and stop-swapping
procedures.

5 years agoinstaller: menu: Fix typo.
Mathieu Othacehe [Thu, 6 Dec 2018 02:47:52 +0000 (11:47 +0900)]
installer: menu: Fix typo.

* gnu/installer/newt/menu.scm (run-menu-page): Fix typo.

5 years agoinstaller: partition: Precise when using Manual/Guided partionment.
Mathieu Othacehe [Thu, 6 Dec 2018 02:42:45 +0000 (11:42 +0900)]
installer: partition: Precise when using Manual/Guided partionment.

* gnu/installer/newt/partition.scm (run-disk-page)[guided?]: New argument.
Use guided? to determine if we are proceeding to a guided or a manuel
partitioning and precise it the title and info-text.

5 years agoinstaller: Display an eventual backtrace in a page.
Mathieu Othacehe [Thu, 6 Dec 2018 02:11:04 +0000 (11:11 +0900)]
installer: Display an eventual backtrace in a page.

* gnu/installer.scm (installer-program): Write the backtrace in
"/tmp/last-installer-error" and pass the filename to installer-exit-error.
* gnu/installer/newt.scm (exit-error): Display the file passed above in a textbox.

5 years agoinstaller: Make exit button optional for run-file-textbox-page.
Mathieu Othacehe [Thu, 6 Dec 2018 02:00:43 +0000 (11:00 +0900)]
installer: Make exit button optional for run-file-textbox-page.

* gnu/installer/newt/page.scm (run-file-textbox-page)[exit-button?]: New argument.

5 years agoinstaller: Make sure every sentence is dot terminated.
Mathieu Othacehe [Wed, 5 Dec 2018 13:08:33 +0000 (22:08 +0900)]
installer: Make sure every sentence is dot terminated.

gnu/installer/newt/hostname.scm: Finish sentences by a dot.
gnu/installer/newt/network.scm: Ditto.
gnu/installer/newt/page.scm: Ditto.
gnu/installer/newt/partition.scm: Ditto.
gnu/installer/newt/user.scm: Ditto.
gnu/installer/newt/wifi.scm: Ditto.

5 years agoinstaller: partition: Differenciate Back button from Exit button.
Mathieu Othacehe [Wed, 5 Dec 2018 13:00:15 +0000 (22:00 +0900)]
installer: partition: Differenciate Back button from Exit button.

* gnu/installer/newt/partition.scm (run-label-page): Pass the button text as
an argument,
(run-disk-page): Call run-label-page with the appropriate button text.

5 years agoinstaller: network: Do not show an empty technology list.
Mathieu Othacehe [Wed, 5 Dec 2018 12:58:26 +0000 (21:58 +0900)]
installer: network: Do not show an empty technology list.

If no technology is detected, ask the user if he prefers to continue or to
exit the installer.

* gnu/installer/newt/network.scm (run-technology-page): Run a choice-window if
technology-items procedure returns an empty list.

5 years agoinstaller: keymap: Fix keymap selection of layouts with not variant.
Mathieu Othacehe [Wed, 5 Dec 2018 12:55:51 +0000 (21:55 +0900)]
installer: keymap: Fix keymap selection of layouts with not variant.

* gnu/installer/newt/keymap.scm (run-keymap-page): Test if the layout has no
variant at 'variant step, instead of raising a condition at 'layout step.

5 years agoinstaller: keymap: Do not fail on non-kmscon terminals.
Mathieu Othacehe [Wed, 5 Dec 2018 12:53:40 +0000 (21:53 +0900)]
installer: keymap: Do not fail on non-kmscon terminals.

kmscon-update-keymap fails on non kmscon terminals because KEYMAP_UPDATE
environment variable is not defined. As it is convenient to test the installer
on a regular terminal, do nothing if KEYMAP_UPDATE is missing.

* gnu/installer/keymap.scm (kmscon-update-keymap): Do nothing if KEYMAP_UPDATE
is not defined.

5 years agoinstaller: Turn "Cancel" buttons into "Exit" buttons.
Mathieu Othacehe [Wed, 5 Dec 2018 10:50:17 +0000 (19:50 +0900)]
installer: Turn "Cancel" buttons into "Exit" buttons.

This change and previous ones were,
Suggested-by: Thorsten Wilms <t_w_@freenet.de>
here: https://lists.gnu.org/archive/html/guix-devel/2018-11/msg00330.html

gnu/installer/newt/ethernet.scm: Turn cancel into exit.
gnu/installer/newt/final.scm: Ditto.
gnu/installer/newt/keymap.scm: Ditto.
gnu/installer/newt/locale.scm: Ditto.
gnu/installer/newt/network.scm: Ditto.
gnu/installer/newt/page.scm: Ditto.
gnu/installer/newt/partition.scm: Ditto.
gnu/installer/newt/services.scm: Ditto.
gnu/installer/newt/timezone.scm: Ditto.
gnu/installer/newt/user.scm: Ditto.
gnu/installer/newt/wifi.scm: Ditto.

5 years agoinstaller: locale: Set English as the default language.
Mathieu Othacehe [Wed, 5 Dec 2018 10:29:54 +0000 (19:29 +0900)]
installer: locale: Set English as the default language.

* gnu/installer/newt/locale.scm (sort-languages): New procedure ...
(run-locale-page)[locale-steps]: ... used here to make english the default
language.

5 years agoinstaller: locale: Make clear that the point is to select a glibc locale.
Mathieu Othacehe [Wed, 5 Dec 2018 10:27:31 +0000 (19:27 +0900)]
installer: locale: Make clear that the point is to select a glibc locale.

* gnu/installer/newt/locale.scm (run-language-page): Be more specific about
what is a locale and what are the different steps involved in the info messages.

5 years agoinstaller: Reorder partitionment step.
Mathieu Othacehe [Wed, 5 Dec 2018 08:49:56 +0000 (17:49 +0900)]
installer: Reorder partitionment step.

* gnu/installer.scm (installer-steps): Run partitionment step after keymap
step, so that the keyboard is correctly mapped when filling the mount-point
entry in partitionment page.

5 years agoinstaller: Fix compute calls.
Mathieu Othacehe [Wed, 5 Dec 2018 08:48:36 +0000 (17:48 +0900)]
installer: Fix compute calls.

* gnu/installer/newt/keymap.scm (run-keymap-page): Add missing argument to
compute procedure.
* gnu/installer/newt/network.scm (run-network-page): Ditto.

5 years agoinstaller: Remove group selection in user page.
Mathieu Othacehe [Wed, 5 Dec 2018 05:48:38 +0000 (14:48 +0900)]
installer: Remove group selection in user page.

Assume that the user's group is always "users".

* gnu/installer/newt/user.scm (run-user-add-page): Remove group fields,
(run-user-page): ditto.

5 years agoinstaller: Reorder local.mk.
Mathieu Othacehe [Wed, 5 Dec 2018 06:01:12 +0000 (15:01 +0900)]
installer: Reorder local.mk.

* gnu/local.mk (GNU_SYSTEM_MODULES): Reorder list.

5 years agoinstaller: Reorder POTFILES.in
Mathieu Othacehe [Wed, 5 Dec 2018 06:00:11 +0000 (15:00 +0900)]
installer: Reorder POTFILES.in

* po/guix/POTFILES.in: Reorder file list.

5 years agoinstaller: Add partitioning support.
Mathieu Othacehe [Wed, 5 Dec 2018 05:57:28 +0000 (14:57 +0900)]
installer: Add partitioning support.

* gnu/installer.scm (installer-steps): Add partitioning step.
* gnu/installer/newt.scm (newt-installer): Add partition-page field.
* gnu/installer/newt/partition.scm: New file.
* gnu/installer/parted.scm: New file.
* gnu/installer/record (installer): New partition-page field.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add new files.
* po/guix/POTFILES.in: Add new files.

5 years agoinstaller: Add user module.
Mathieu Othacehe [Wed, 5 Dec 2018 05:55:41 +0000 (14:55 +0900)]
installer: Add user module.

* gnu/installer/user.scm: New file.

5 years agoinstaller: Fix comments.
Mathieu Othacehe [Wed, 5 Dec 2018 05:55:03 +0000 (14:55 +0900)]
installer: Fix comments.

* gnu/installer.scm (installer-steps): Fix comments.

5 years agoinstaller: Fix ethernet connection.
Mathieu Othacehe [Wed, 5 Dec 2018 05:52:04 +0000 (14:52 +0900)]
installer: Fix ethernet connection.

* gnu/installer/newt/ethernet.scm (connect-ethernet-service): Return the
service passed as parameter.

5 years agoinstaller: Redirect to TTY3 root shell for unguided install.
Mathieu Othacehe [Wed, 5 Dec 2018 05:50:16 +0000 (14:50 +0900)]
installer: Redirect to TTY3 root shell for unguided install.

* gnu/installer/newt/welcome.scm (run-welcome-page): Switch to TTY3 for
unguided shell based install.

5 years agoinstaller: Add new pages.
Mathieu Othacehe [Wed, 5 Dec 2018 05:47:49 +0000 (14:47 +0900)]
installer: Add new pages.

* gnu/installer/newt/page.scm (run-scale-page): New exported procedure,
(run-checkbox-tree-page): ditto,
(run-file-textbox-page): ditto.

5 years agoinstaller: Add hostname.
Mathieu Othacehe [Wed, 5 Dec 2018 05:45:53 +0000 (14:45 +0900)]
installer: Add hostname.

* gnu/installer/hostname.scm: New file.
* gnu/installer.scm (installer-program): Use new module above.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add new file.
* po/guix/POTFILES.in: Add new file.

5 years agoinstaller: Add services page.
Mathieu Othacehe [Wed, 5 Dec 2018 05:41:48 +0000 (14:41 +0900)]
installer: Add services page.

Add a page to select services, for now only desktop environments choice is
available.

* gnu/installer.scm (steps): Add services step.
* gnu/installer/newt.scm (newt-installer): Add services-page field.
* gnu/installer/newt/services.scm: New file.
* gnu/installer/record.scm (installer): Add services-page field.
* gnu/installer/services.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add new files.
* po/guix/POTFILES.in: Add new files.

5 years agoinstaller: Do not ask for keyboard model.
Mathieu Othacehe [Wed, 5 Dec 2018 05:36:22 +0000 (14:36 +0900)]
installer: Do not ask for keyboard model.

Suppose that the keyboard model is "pc105".

* gnu/installer.scm (apply-keymap): Remove model ...
* gnu/installer/newt/keymap.scm (run-keymap-page): passed here.
(run-model-page): remove procedure
* gnu/installer/record.scm (installer): Edit keymap-page prototype in comment.
* gnu/installer/keymap.scm (default-keyboard-model): New exported parameter.

5 years agoinstaller: Add configuration formatter.
Mathieu Othacehe [Wed, 5 Dec 2018 05:30:16 +0000 (14:30 +0900)]
installer: Add configuration formatter.

* gnu/installer.scm (installer-steps): Add configuration-formatter procedures.
* gnu/installer/final.scm: New file.
* gnu/installer/locale.scm (locale->configuration): New exported procedure.
* gnu/installer/newt.scm (newt-installer): Add final page.
* gnu/installer/newt/final.scm: New file.
* gnu/installer/record.scm (installer): Add final-page field.
* gnu/installer/timezone.scm (posix-tz->configuration): New exported
procedure.
* gnu/installer/steps.scm (installer-step): Rename configuration-proc field to
configuration-formatter.
(%installer-configuration-file): New exported parameter,
(%installer-target-dir): ditto,
(%configuration-file-width): ditto,
(format-configuration): new exported procedure,
(configuration->file): new exported procedure.

5 years agoinstaller: Add new utils.
Mathieu Othacehe [Wed, 5 Dec 2018 05:24:04 +0000 (14:24 +0900)]
installer: Add new utils.

* gnu/installer/utils.scm (nearest-exact-integer): New exported procedure,
(read-percentage): ditto,
(run-shell-command): ditto.

5 years agoinstaller: Remove "selection" from all titles.
Mathieu Othacehe [Wed, 5 Dec 2018 05:19:28 +0000 (14:19 +0900)]
installer: Remove "selection" from all titles.

* gnu/installer/newt/hostname.scm (run-hostname-page): Remove selection from
page title,
(run-variant-page): ditto.
* gnu/installer/newt/keymap.scm (run-layout-page): Ditto.
* gnu/installer/newt/locale.scm (run-layout-page): Ditto,
(run-territory-page): ditto,
(run-codeset-page): ditto,
(run-modifier-page): ditto
* gnu/installer/newt/network.scm (run-territory-page): Ditto.
* gnu/installer/newt/timezone.scm (run-timezone-page): Ditto.
* gnu/installer/newt/wifi.scm (run-wifi-page): Ditto.

5 years agofile-systems: Export read-partition-label and read-partition-uuid.
Mathieu Othacehe [Wed, 5 Dec 2018 05:16:36 +0000 (14:16 +0900)]
file-systems: Export read-partition-label and read-partition-uuid.

* gnu/build/file-systems.scm (read-partition-label): Export it,
(read-partition-uuid): ditto.

5 years agognu: Add guile-parted.
Mathieu Othacehe [Wed, 5 Dec 2018 05:15:45 +0000 (14:15 +0900)]
gnu: Add guile-parted.

* gnu/packages/guile.scm (guile-parted): New variable.

5 years agognu: guile-newt: Update to revision 4.
Mathieu Othacehe [Wed, 5 Dec 2018 05:15:11 +0000 (14:15 +0900)]
gnu: guile-newt: Update to revision 4.

* gnu/packages/guile.scm (guile-newt): Update to revision 4.

5 years agoservices: herd: Allow to pass arguments to start-service.
Mathieu Othacehe [Wed, 5 Dec 2018 05:13:38 +0000 (14:13 +0900)]
services: herd: Allow to pass arguments to start-service.

* gnu/services/herd.scm (start-service)[arguments]: New optional argument.

5 years agobuild: syscalls: Add device-in-use?.
Mathieu Othacehe [Wed, 5 Dec 2018 05:08:35 +0000 (14:08 +0900)]
build: syscalls: Add device-in-use?.

This new procedure uses BLKRRPART to determine whether or not a device is
busy. It is useful when a device does not appear as mounted but is maybe used
by the kernel. This is the case with overlayfs lowerdir backend device for
example.

* guix/build/syscalls.scm (device-in-use?): New exported procedure.

5 years agotests: Rename %test-encrypted-os to %test-encrypted-root-os.
Mathieu Othacehe [Wed, 28 Nov 2018 08:27:09 +0000 (17:27 +0900)]
tests: Rename %test-encrypted-os to %test-encrypted-root-os.

* gnu/tests/install.scm (%test-encrypted-os): Rename to
%test-encrypted-root-os for consistency with its system-test name.

5 years agoinstaller: Fix locale installation.
Mathieu Othacehe [Sat, 24 Nov 2018 05:06:40 +0000 (14:06 +0900)]
installer: Fix locale installation.

For some mysterious reason, calling 'setlocale' as first instruction of
installer-builder does not install unicode support correctly. So set LANG env
variable and start the installer until this is understood.

* gnu/installer.scm (installer-program): Wrap installer-builder to have the
opportunity to set LANG environment variable before starting the installer.

5 years agoinstaller: Move everything to the build side.
Mathieu Othacehe [Sat, 24 Nov 2018 03:25:03 +0000 (12:25 +0900)]
installer: Move everything to the build side.

* gnu/installer.scm: Rename to ...
* gnu/installer/record.scm: ... this.
* gnu/installer/build-installer.scm: Move everything to the build side and
rename to gnu/installer.scm.
* gnu/installer/newt.scm: Remove all the gexps and add depencies to newt
modules as this code will only be used on the build side by now.
* gnu/local.mk (GNU_SYSTEM_MODULES): Adapt it,
(dist_installer_DATA): New rule to install installer's aux-files.
* gnu/system/install.scm (%installation-services): Use only
'installer-program' from (gnu installer). The installer is now choosen on the
build side.
* guix/self.scm (*system-modules*): Restore previous behaviour and add all
installer files to #:extra-files field of the scheme-node.
* po/guix/POTFILES.in: Adapt it.

5 years agoinstaller: Rewrite welcome page.
Mathieu Othacehe [Fri, 23 Nov 2018 14:23:45 +0000 (23:23 +0900)]
installer: Rewrite welcome page.

The welcome page is the only page using absolute positioning for the newt
components, so that the page occupies all the screen space. This is becoming
too hard to manage, so switch to grid management like elsewhere, even if the
result is less appealing.

Also add an info text to the page with a mention on how to switch back to the
original installer.

* gnu/installer/newt/welcome.scm (run-menu-page): Use a vertically stacked
grid instead of hard window placement.

5 years agognu: installer: Launch the installer as kmscon login-program.
Mathieu Othacehe [Fri, 23 Nov 2018 14:18:59 +0000 (23:18 +0900)]
gnu: installer: Launch the installer as kmscon login-program.

Source /etc/environment just before starting the installer. The login program
is supposed to load the environment variables of this file through PAM, but as
we replace it by the installer, they are no longer available. This is mostly
useful for the LANG environment variable.

* gnu/installer/build-installer.scm (installer-program-launcher): New exported
procedure.
* gnu/system/install.scm (%installation-services): Restore most of the origin
code. kmscon is only started on TTY1, and the graphical installer is the
login-program.

5 years agoguix: self: Do not install (gnu system install).
Mathieu Othacehe [Fri, 23 Nov 2018 02:22:35 +0000 (11:22 +0900)]
guix: self: Do not install (gnu system install).

As we do not want to add a dependency to newt and the graphical installer
in (guix self), do not install (gnu system install).

* guix/self.scm (*system-modules*): Remove (gnu system install) from
"guix-system" scheme-node.

5 years agodoc: Document the graphical installer.
Mathieu Othacehe [Fri, 23 Nov 2018 13:53:39 +0000 (22:53 +0900)]
doc: Document the graphical installer.

* doc/guix.texi (Preparing for Installation): Mention the graphical installer.

5 years agoconfigure: Disable installer build by default.
Mathieu Othacehe [Fri, 23 Nov 2018 01:56:49 +0000 (10:56 +0900)]
configure: Disable installer build by default.

Only build installer if "--enable-installer" is passed. In that case only, the
support for Guile-newt becomes mandatory.

* configure.ac: Add --enable-installer argument. Export ENABLE_INSTALLER
conditional according to the argument value.
* gnu/local.mk (GNU_SYSTEM_MODULES): Remove installer modules and build them
only if ENABLE_INSTALLER is set.

5 years agoinstaller: newt: Locate the logo within local-file.
Mathieu Othacehe [Sun, 18 Nov 2018 03:22:50 +0000 (12:22 +0900)]
installer: newt: Locate the logo within local-file.

* gnu/installer/newt.scm (logo): Remove it,
(welcome-page): Use a relative path to locate the logo.

5 years agoinstaller: newt: Use scheme-modules* instead of scheme-modules.
Mathieu Othacehe [Sun, 18 Nov 2018 03:14:23 +0000 (12:14 +0900)]
installer: newt: Use scheme-modules* instead of scheme-modules.

* gnu/installer/newt.scm (modules): Use scheme-modules*.

5 years agognu: Add graphical installer support.
Mathieu Othacehe [Fri, 16 Nov 2018 11:43:55 +0000 (20:43 +0900)]
gnu: Add graphical installer support.

* configure.ac: Require that guile-newt is available.
* gnu/installer.scm: New file.
* gnu/installer/aux-files/logo.txt: New file.
* gnu/installer/build-installer.scm: New file.
* gnu/installer/connman.scm: New file.
* gnu/installer/keymap.scm: New file.
* gnu/installer/locale.scm: New file.
* gnu/installer/newt.scm: New file.
* gnu/installer/newt/ethernet.scm: New file.
* gnu/installer/newt/hostname.scm: New file.
* gnu/installer/newt/keymap.scm: New file.
* gnu/installer/newt/locale.scm: New file.
* gnu/installer/newt/menu.scm: New file.
* gnu/installer/newt/network.scm: New file.
* gnu/installer/newt/page.scm: New file.
* gnu/installer/newt/timezone.scm: New file.
* gnu/installer/newt/user.scm: New file.
* gnu/installer/newt/utils.scm: New file.
* gnu/installer/newt/welcome.scm: New file.
* gnu/installer/newt/wifi.scm: New file.
* gnu/installer/steps.scm: New file.
* gnu/installer/timezone.scm: New file.
* gnu/installer/utils.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add previous files.
* gnu/system.scm: Export %root-account.
* gnu/system/install.scm (%installation-services): Use kmscon instead of linux
VT for all tty.
(installation-os)[users]: Add the graphical installer as shell of the root
account.
[packages]: Add font related packages.
* po/guix/POTFILES.in: Add installer files.

5 years agognu: kmscon: Add runtime keymap update support.
Mathieu Othacehe [Fri, 16 Nov 2018 11:40:26 +0000 (20:40 +0900)]
gnu: kmscon: Add runtime keymap update support.

* gnu/packages/patches/kmscon-runtime-keymap-switch.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/terminals.scm (kmscon)[source]: Add patch.

5 years agoservices: kmscon: Remove virtual-terminal requirement.
Mathieu Othacehe [Fri, 16 Nov 2018 11:35:37 +0000 (20:35 +0900)]
services: kmscon: Remove virtual-terminal requirement.

kmscon does not require that virtual terminals run in UTF-8 mode.

* gnu/services/base.scm (kmscon-service-type): Remove virtual-terminal from
requirement list.

5 years agoguile: newt: Update revision to 3.
Mathieu Othacehe [Fri, 16 Nov 2018 11:00:05 +0000 (20:00 +0900)]
guile: newt: Update revision to 3.

* gnu/packages/guile.scm (guile-newt): Update revision to 3.

5 years agognu: Add ghc-tldr.
Gabriel Hondet [Tue, 15 Jan 2019 15:16:23 +0000 (16:16 +0100)]
gnu: Add ghc-tldr.

* gnu/packages/haskell.scm (ghc-tldr): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
5 years agoRevert "Revert "gnu: man-db: Embed absolute reference to 'preconv'.""
Marius Bakke [Thu, 17 Jan 2019 11:27:18 +0000 (12:27 +0100)]
Revert "Revert "gnu: man-db: Embed absolute reference to 'preconv'.""

This reverts commit ccb15b343e35d76a5c7c693f4c00d3f5b5a4cc39.

Now that we've fixed the segfault with groff's preconv (see
73b2ce87956b0d9168dcfa234128b91e0e41a4c7), it's safe to re-apply this fix.

5 years agognu: Add emacs-edbi-sqlite.
Pierre Neidhardt [Thu, 17 Jan 2019 11:20:16 +0000 (12:20 +0100)]
gnu: Add emacs-edbi-sqlite.

* gnu/packages/emacs-xyz.scm (emacs-edbi-sqlite): New variable.

5 years agognu: Add emacs-edbi.
Pierre Neidhardt [Thu, 17 Jan 2019 11:20:08 +0000 (12:20 +0100)]
gnu: Add emacs-edbi.

* gnu/packages/emacs-xyz.scm (emacs-edbi): New variable.

5 years agognu: Add emacs-epc.
Pierre Neidhardt [Thu, 17 Jan 2019 11:18:52 +0000 (12:18 +0100)]
gnu: Add emacs-epc.

* gnu/packages/emacs-xyz.scm (emacs-epc): New variable.

5 years agognu: Add emacs-ctable.
Pierre Neidhardt [Thu, 17 Jan 2019 11:18:39 +0000 (12:18 +0100)]
gnu: Add emacs-ctable.

* gnu/packages/emacs-xyz.scm (emacs-ctable): New variable.

5 years agognu: Add emacs-e2wm.
Pierre Neidhardt [Thu, 17 Jan 2019 11:18:29 +0000 (12:18 +0100)]
gnu: Add emacs-e2wm.

* gnu/packages/emacs-xyz.scm (emacs-e2wm): New variable.

5 years agognu: Add emacs-window-layout.
Pierre Neidhardt [Thu, 17 Jan 2019 11:08:37 +0000 (12:08 +0100)]
gnu: Add emacs-window-layout.

* gnu/packages/emacs-xyz.scm (emacs-window-layout): New variable.

5 years agognu: Add perl-rpc-epc-service.
Pierre Neidhardt [Thu, 17 Jan 2019 11:08:07 +0000 (12:08 +0100)]
gnu: Add perl-rpc-epc-service.

* gnu/packages/libevent.scm (perl-rpc-epc-service): New variable.

5 years agognu: Add perl-data-sexpression.
Pierre Neidhardt [Thu, 17 Jan 2019 11:06:39 +0000 (12:06 +0100)]
gnu: Add perl-data-sexpression.

* gnu/packages/perl.scm (perl-data-sexpression): New variable.

5 years agognu: groff-minimal: Disable relocatability.
Danny Milosavljevic [Wed, 16 Jan 2019 14:00:04 +0000 (15:00 +0100)]
gnu: groff-minimal: Disable relocatability.

* gnu/packages/groff.scm (groff-minimal)[arguments]<#:phases>
[disable-relocatability]: New phase.

5 years agognu: gauche: Remove number of packages from description.
Gabriel Hondet [Thu, 17 Jan 2019 07:24:30 +0000 (08:24 +0100)]
gnu: gauche: Remove number of packages from description.

* gnu/packages/scheme.scm (gauche)[description]: Remove number of packages.
[arguments]: Remove useless code.

5 years agognu: kwindowsystem: Enable test-suite.
Hartmut Goebel [Wed, 2 Jan 2019 12:09:35 +0000 (13:09 +0100)]
gnu: kwindowsystem: Enable test-suite.

* gnu/package/kde-frameworks.scm(kwindowsystem)
  [inputs]: Add openbox.
  [arguments] <#:tests?> Remove.
  <#:phases> 'blacklist-failing-tests: New phase.
  <#:phases> 'check: Start openbox, don't set QT_PLUGIN_PATH, use invkove,
  simplify and cleanup code. No longer move 'check behind install.

5 years agognu: knewstuff: Enable test-suite.
Hartmut Goebel [Wed, 2 Jan 2019 01:49:02 +0000 (02:49 +0100)]
gnu: knewstuff: Enable test-suite.

Without anything changed the test-suite now passes, thus can be enabled.

* gnu/package/kde-frameworks.scm(knewstuff)[arguments]<#:tests?>: Remove.

5 years agognu: kemoticons: Enable test-suite.
Hartmut Goebel [Wed, 2 Jan 2019 01:23:25 +0000 (02:23 +0100)]
gnu: kemoticons: Enable test-suite.

Without anything changed the test-suite now passes, thus can be enabled.

* gnu/package/kde-frameworks.scm(kemoticons)[arguments]<#:tests?>: Remove.

5 years agognu: kpackage: Enable test-suite.
Hartmut Goebel [Tue, 1 Jan 2019 23:41:53 +0000 (00:41 +0100)]
gnu: kpackage: Enable test-suite.

* gnu/package/kde-frameworks.scm(kpackage)[arguments]
  <#:tests?>: Remove. <#:phases>: Add phase 'patch-tests.

5 years agognu: kirigami: Enable test-suite.
Hartmut Goebel [Tue, 1 Jan 2019 22:24:12 +0000 (23:24 +0100)]
gnu: kirigami: Enable test-suite.

The error which inhibited running the tests no longer occurs
in 5.49.0, although now no tests are found at all.  Since no tests
are found now, the phase 'check-setup can be removed, too,
and thus the 'arguments' at all.

* gnu/packages/kde-frameworks.scm(kirigami)[arguments]: Remove.

5 years agognu: kcoreaddons: Enable test-suite.
Hartmut Goebel [Tue, 1 Jan 2019 22:07:30 +0000 (23:07 +0100)]
gnu: kcoreaddons: Enable test-suite.

Enable running the tests and blacklist the one failing test.

* gnu/package/kde-frameworks.scm(kcoreaddons)[arguments]
  <#:tests?>: Remove. <#:phases>: Add phase 'blacklist-failing-test.

5 years agognu: php: Update to 7.3.1.
Julien Lepiller [Wed, 16 Jan 2019 19:26:50 +0000 (20:26 +0100)]
gnu: php: Update to 7.3.1.

* gnu/packages/php.scm (php): Update to 7.3.1.

5 years agognu: Add ocaml-ppxlib.
Gabriel Hondet [Fri, 4 Jan 2019 09:09:12 +0000 (10:09 +0100)]
gnu: Add ocaml-ppxlib.

* gnu/packages/ocaml.scm (ocaml-ppxlib): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
5 years agognu: Add ocaml-ppx-derivers.
Gabriel Hondet [Sat, 5 Jan 2019 16:44:30 +0000 (17:44 +0100)]
gnu: Add ocaml-ppx-derivers.

* gnu/packages/ocaml.scm (ocaml-ppx-derivers): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
5 years agognu: Add ocaml-migrate-parsetree.
Gabriel Hondet [Thu, 3 Jan 2019 09:40:45 +0000 (10:40 +0100)]
gnu: Add ocaml-migrate-parsetree.

* gnu/packages/ocaml.scm (ocaml-migrate-parsetree): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
5 years agognu: Add ocaml-compiler-libs.
Gabriel Hondet [Sat, 5 Jan 2019 16:38:15 +0000 (17:38 +0100)]
gnu: Add ocaml-compiler-libs.

* gnu/packages/ocaml.scm (ocaml-compiler-libs): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
5 years agognu: Add ocaml-base.
Gabriel Hondet [Thu, 3 Jan 2019 08:43:49 +0000 (09:43 +0100)]
gnu: Add ocaml-base.

* gnu/packages/ocaml.scm (ocaml-base): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
5 years agognu: Add ocaml-sexplib.
Gabriel Hondet [Thu, 3 Jan 2019 07:45:36 +0000 (08:45 +0100)]
gnu: Add ocaml-sexplib.

* gnu/packages/ocaml.scm (ocaml-sexplib): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
5 years agognu: Add ocaml-parsexp.
Gabriel Hondet [Thu, 3 Jan 2019 07:26:51 +0000 (08:26 +0100)]
gnu: Add ocaml-parsexp.

* gnu/packages/ocaml.scm (ocaml-parsexp): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
5 years agognu: Add ocaml-sexplib0.
Gabriel Hondet [Sat, 5 Jan 2019 16:36:56 +0000 (17:36 +0100)]
gnu: Add ocaml-sexplib0.

* gnu/packages/ocaml.scm (ocaml-sexplib0): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>