summaryrefslogtreecommitdiff
path: root/gnu/installer
AgeCommit message (Expand)Author
2019-01-17installer: 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. Ludovic Courtès
2019-01-17installer: "formating" → "formatting"....* gnu/installer/newt/partition.scm, gnu/installer/parted.scm: Replace "formating" with "formatting". Ludovic Courtès
2019-01-17installer: 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. Ludovic Courtès
2019-01-17installer: partition: Add encryption password confirmation....* gnu/installer/newt/partition.scm (prompt-luks-passwords): Add password confirmation page. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: Remove debug popup....* gnu/installer/newt/partition.scm (run-partioning-page): Remove debug partition popup. Mathieu Othacehe
2019-01-17installer: welcome: Put "Graphical installer" ahead....* gnu/installer/newt/welcome.scm (run-welcome-page): Propose "Graphical install" before shell based install. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: Various renamins follow-up....s/path/file and s/crypt/encrypt. * gnu/installer/newt/partition.scm: Apply renamings. * gnu/installer/parted.scm: Ditto. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: Clear screen upon exit....* gnu/installer/newt.scm (exit): Call clear-screen after newt-finish, (exit-error): ditto. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: partition: Fix typo....* gnu/installer/newt/partition.scm (run-disk-page): Fix typo. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: menu: Fix typo....* gnu/installer/newt/menu.scm (run-menu-page): Fix typo. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: Make exit button optional for run-file-textbox-page....* gnu/installer/newt/page.scm (run-file-textbox-page)[exit-button?]: New argument. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: Add user module....* gnu/installer/user.scm: New file. Mathieu Othacehe
2019-01-17installer: Fix ethernet connection....* gnu/installer/newt/ethernet.scm (connect-ethernet-service): Return the service passed as parameter. Mathieu Othacehe
2019-01-17installer: Redirect to TTY3 root shell for unguided install....* gnu/installer/newt/welcome.scm (run-welcome-page): Switch to TTY3 for unguided shell based install. Mathieu Othacehe
2019-01-17installer: Add new pages....* gnu/installer/newt/page.scm (run-scale-page): New exported procedure, (run-checkbox-tree-page): ditto, (run-file-textbox-page): ditto. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: Add new utils....* gnu/installer/utils.scm (nearest-exact-integer): New exported procedure, (read-percentage): ditto, (run-shell-command): ditto. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17installer: 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. Mathieu Othacehe
2019-01-17gnu: 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. Mathieu Othacehe
2019-01-17installer: newt: Locate the logo within local-file....* gnu/installer/newt.scm (logo): Remove it, (welcome-page): Use a relative path to locate the logo. Mathieu Othacehe
2019-01-17installer: newt: Use scheme-modules* instead of scheme-modules....* gnu/installer/newt.scm (modules): Use scheme-modules*. Mathieu Othacehe
2019-01-17gnu: 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. Mathieu Othacehe