summary refs log tree commit diff
AgeCommit message (Collapse)Author
2019-01-17installer: keymap: Put English layout and international variant ahead.Mathieu Othacehe
* 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.
2019-01-17installer: Remove debug popup.Mathieu Othacehe
* gnu/installer/newt/partition.scm (run-partioning-page): Remove debug partition popup.
2019-01-17installer: welcome: Put "Graphical installer" ahead.Mathieu Othacehe
* gnu/installer/newt/welcome.scm (run-welcome-page): Propose "Graphical install" before shell based install.
2019-01-17installer: Rename "Ok" buttons to "OK".Mathieu Othacehe
* gnu/installer/newt/page.scm: s/Ok/OK/. * gnu/installer/newt/partition.scm: Ditto. * gnu/installer/newt/user.scm: Ditto.
2019-01-17installer: parted: Do not call BLKRRPART on loop devices.Mathieu Othacehe
* gnu/installer/parted.scm (with-delay-device-in-use?): Return immediately if the file-name passed as argument designates a loop device.
2019-01-17installer: Various renamins follow-up.Mathieu Othacehe
s/path/file and s/crypt/encrypt. * gnu/installer/newt/partition.scm: Apply renamings. * gnu/installer/parted.scm: Ditto.
2019-01-17installer: Various renamings.Mathieu Othacehe
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.
2019-01-17installer: parted: Use read-luks-partition-uuid instead ofMathieu Othacehe
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.
2019-01-17file-systems: Add read-luks-partition-uuid.Mathieu Othacehe
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.
2019-01-17installer: Clear screen upon exit.Mathieu Othacehe
* gnu/installer/newt.scm (exit): Call clear-screen after newt-finish, (exit-error): ditto.
2019-01-17installer: partionment: Add encryption support.Mathieu Othacehe
* 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.
2019-01-17installer: partition: Fix typo.Mathieu Othacehe
* gnu/installer/newt/partition.scm (run-disk-page): Fix typo.
2019-01-17installer: partition: Fix swaping and use syscalls.Mathieu Othacehe
* 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.
2019-01-17installer: menu: Fix typo.Mathieu Othacehe
* gnu/installer/newt/menu.scm (run-menu-page): Fix typo.
2019-01-17installer: partition: Precise when using Manual/Guided partionment.Mathieu Othacehe
* 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.
2019-01-17installer: Display an eventual backtrace in a page.Mathieu Othacehe
* 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.
2019-01-17installer: Make exit button optional for run-file-textbox-page.Mathieu Othacehe
* gnu/installer/newt/page.scm (run-file-textbox-page)[exit-button?]: New argument.
2019-01-17installer: Make sure every sentence is dot terminated.Mathieu Othacehe
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.
2019-01-17installer: partition: Differenciate Back button from Exit button.Mathieu Othacehe
* 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.
2019-01-17installer: network: Do not show an empty technology list.Mathieu Othacehe
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.
2019-01-17installer: keymap: Fix keymap selection of layouts with not variant.Mathieu Othacehe
* 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.
2019-01-17installer: keymap: Do not fail on non-kmscon terminals.Mathieu Othacehe
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.
2019-01-17installer: Turn "Cancel" buttons into "Exit" buttons.Mathieu Othacehe
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.
2019-01-17installer: locale: Set English as the default language.Mathieu Othacehe
* gnu/installer/newt/locale.scm (sort-languages): New procedure ... (run-locale-page)[locale-steps]: ... used here to make english the default language.
2019-01-17installer: locale: Make clear that the point is to select a glibc locale.Mathieu Othacehe
* 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.
2019-01-17installer: Reorder partitionment step.Mathieu Othacehe
* 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.
2019-01-17installer: Fix compute calls.Mathieu Othacehe
* gnu/installer/newt/keymap.scm (run-keymap-page): Add missing argument to compute procedure. * gnu/installer/newt/network.scm (run-network-page): Ditto.
2019-01-17installer: Remove group selection in user page.Mathieu Othacehe
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.
2019-01-17installer: Reorder local.mk.Mathieu Othacehe
* gnu/local.mk (GNU_SYSTEM_MODULES): Reorder list.
2019-01-17installer: Reorder POTFILES.inMathieu Othacehe
* po/guix/POTFILES.in: Reorder file list.
2019-01-17installer: Add partitioning support.Mathieu Othacehe
* 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.
2019-01-17installer: Add user module.Mathieu Othacehe
* gnu/installer/user.scm: New file.
2019-01-17installer: Fix comments.Mathieu Othacehe
* gnu/installer.scm (installer-steps): Fix comments.
2019-01-17installer: Fix ethernet connection.Mathieu Othacehe
* gnu/installer/newt/ethernet.scm (connect-ethernet-service): Return the service passed as parameter.
2019-01-17installer: Redirect to TTY3 root shell for unguided install.Mathieu Othacehe
* gnu/installer/newt/welcome.scm (run-welcome-page): Switch to TTY3 for unguided shell based install.
2019-01-17installer: Add new pages.Mathieu Othacehe
* gnu/installer/newt/page.scm (run-scale-page): New exported procedure, (run-checkbox-tree-page): ditto, (run-file-textbox-page): ditto.
2019-01-17installer: Add hostname.Mathieu Othacehe
* 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.
2019-01-17installer: Add services page.Mathieu Othacehe
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.
2019-01-17installer: Do not ask for keyboard model.Mathieu Othacehe
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.
2019-01-17installer: Add configuration formatter.Mathieu Othacehe
* 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.
2019-01-17installer: Add new utils.Mathieu Othacehe
* gnu/installer/utils.scm (nearest-exact-integer): New exported procedure, (read-percentage): ditto, (run-shell-command): ditto.
2019-01-17installer: Remove "selection" from all titles.Mathieu Othacehe
* 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.
2019-01-17file-systems: Export read-partition-label and read-partition-uuid.Mathieu Othacehe
* gnu/build/file-systems.scm (read-partition-label): Export it, (read-partition-uuid): ditto.
2019-01-17gnu: Add guile-parted.Mathieu Othacehe
* gnu/packages/guile.scm (guile-parted): New variable.
2019-01-17gnu: guile-newt: Update to revision 4.Mathieu Othacehe
* gnu/packages/guile.scm (guile-newt): Update to revision 4.
2019-01-17services: herd: Allow to pass arguments to start-service.Mathieu Othacehe
* gnu/services/herd.scm (start-service)[arguments]: New optional argument.
2019-01-17build: syscalls: Add device-in-use?.Mathieu Othacehe
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.
2019-01-17tests: Rename %test-encrypted-os to %test-encrypted-root-os.Mathieu Othacehe
* gnu/tests/install.scm (%test-encrypted-os): Rename to %test-encrypted-root-os for consistency with its system-test name.
2019-01-17installer: Fix locale installation.Mathieu Othacehe
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.
2019-01-17installer: Move everything to the build side.Mathieu Othacehe
* 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.