summaryrefslogtreecommitdiff
path: root/gnu/installer/newt/partition.scm
Commit message (Collapse)AuthorAge
* installer: Implement a dialog on /var/guix/installer-socket.Ludovic Courtès2020-03-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow us to automate testing of the installer. * gnu/installer/utils.scm (%client-socket-file) (current-server-socket, current-clients): New variables. (open-server-socket, call-with-server-socket): New procedure. (with-server-socket): New macro. (run-shell-command): Add call to 'send-to-clients'. Select on both current-input-port and current-clients. * gnu/installer/steps.scm (run-installer-steps): Wrap 'call-with-prompt' in 'with-socket-server'. Call 'sigaction' for SIGPIPE. * gnu/installer/newt/page.scm (watch-clients!, close-port-and-reuse-fd) (run-form-with-clients, send-to-clients): New procedures. (draw-info-page): Add call to 'run-form-with-clients'. (run-input-page): Likewise. Handle EXIT-REASON equal to 'exit-fd-ready. (run-confirmation-page): Likewise. (run-listbox-selection-page): Likewise. Define 'choice->item' and use it. (run-checkbox-tree-page): Likewise. (run-file-textbox-page): Add call to 'run-form-with-clients'. Handle 'exit-fd-ready'. * gnu/installer/newt/partition.scm (run-disk-page): Pass #:client-callback-procedure to 'run-listbox-selection-page'. * gnu/installer/newt/user.scm (run-user-page): Call 'run-form-with-clients'. Handle 'exit-fd-ready'. * gnu/installer/newt/welcome.scm (run-menu-page): Define 'choice->item' and use it. Call 'run-form-with-clients'. * gnu/installer/newt/final.scm (run-install-success-page) (run-install-failed-page): When (current-clients) is non-empty, call 'send-to-clients' without displaying a choice window.
* installer: Add JFS support.Tobias Geerinckx-Rice2020-01-05
| | | | | | | | | | * gnu/installer/newt/partition.scm (run-fs-type-page): Add ‘jfs’ to the list box. * gnu/installer/parted.scm (user-fs-type-name, user-fs-type->mount-type) (partition-filesystem-user-type): Add ‘jfs’ mapping (create-jfs-file-system): New procedure. (format-user-partitions): Use it. * gnu/installer.scm (set-installer-path): Add jfsutils.
* installer: Update to Guile-Parted 0.0.2 release.Mathieu Othacehe2019-09-25
| | | | | | | | | * gnu/installer/parted.scm (data-partition?, metadata-partition?, freespace-partition?, normal-partition?, extended-partition?, logical-partition?): Remove, as now provided by Guile-Parted. * gnu/installer/newt/partition.scm (run-disk-page): Remove disk-destroy calls, replace disk-delete-all by disk-remove-all-partitions and disk-delete-partition by disk-remove-partition*.
* installer: Fix run-input-page calls.Mathieu Othacehe2019-09-23
| | | | | | | | This fixes 55c43108 commit that renamed input-hide-checkbox? into input-visibility-checkbox?. * gnu/installer/newt/partition.scm (prompt-luks-passwords): Rename input-hide-checkbox? into input-visibility-checkbox?.
* installer: Fix Guile-Parted crash on i686.Ludovic Courtès2019-05-19
| | | | | | | | | | | | | Fixes <https://bugs.gnu.org/35783>. This is a followup to 7d567af46b4e10ffafb1d0f76b524f5781460598. * gnu/installer/parted.scm (auto-partition!): Append ESP-PARTITION, when it is true, to the result of 'create-adjacent-partitions!'. * gnu/installer/newt/partition.scm (run-partioning-page): Remove 'initial-partitions' variable, and remove call to 'create-special-user-partitions'. Co-authored-by: Mathieu Othacehe <m.othacehe@gmail.com>
* installer: Rename 'auto-partition' to 'auto-partition!'.Ludovic Courtès2019-05-15
| | | | | | | | | | | This is a followup to 7d567af46b4e10ffafb1d0f76b524f5781460598. * gnu/installer/parted.scm (create-adjacent-partitions): Rename to... (create-adjacent-partitions!): ... this. Make private. (auto-partition): Rename to... (auto-partition!): ... this. * gnu/installer/newt/partition.scm (run-partioning-page): Adjust accordingly.
* installer: Mount ESP once only.Ludovic Courtès2019-05-15
| | | | | | | | | | | | Fixes <https://bugs.gnu.org/35731>. * gnu/installer/newt/partition.scm (run-partioning-page)[run-page]: Introduce 'initial-partitions' variable. Previously we'd call 'disk-partitions' after 'auto-partition' had done its job of creating new partitions, and thus its result would contain the just-created partitions. Consequently, 'create-special-user-partitions' would return the ESP partition we just created, and thus it would appear twice in the list.
* installer: Add fat16.Danny Milosavljevic2019-05-14
| | | | * gnu/installer/newt/partition.scm (run-fs-type-page): Add fat16.
* installer: Add password 'hide' checkbox.Mathieu Othacehe2019-05-07
| | | | | | | | | | | | * gnu/installer/newt/page.scm (run-input-page)[input-hide-checkbox?]: New parameter adding a checkbox to toggle password hiding. By default, the checkbox is active and the password is hence hided. * gnu/installer/newt/partition.scm (prompt-luks-passwords): Enable the previous parameter on both password input pages. * gnu/installer/newt/user.scm (run-root-password-page): Enable the previous parameter, (confirm-password): ditto, (run-user-add-page): add a checkbox to toggle password hiding.
* installer: Shrink simple listboxes to their minimum height.Ludovic Courtès2019-05-06
| | | | | | | | | * gnu/installer/newt/partition.scm (run-partioning-page): Pass #:listbox-height. (run-scheme-page): Likewise. (run-device-page): Likewise. * gnu/installer/newt/network.scm (run-technology-page): Likewise. * gnu/installer/newt/ethernet.scm (run-ethernet-page): Likewise.
* installer: Do not sort methods on the partitioning page.Ludovic Courtès2019-05-06
| | | | | | * gnu/installer/newt/partition.scm (run-partioning-page): Pass #:sort-listbox-items? #f so that methods always appear in the same order.
* installer: Do not sort the guided partition schemes in the selection page.Ludovic Courtès2019-05-03
| | | | | | | | | Previously, the "Everything is one partition" entry would come first in English but it would be second in French. This change keeps it the first choice regardless of the language. * gnu/installer/newt/partition.scm (run-scheme-page): Pass #:sort-listbox-items? to 'run-scheme-page'.
* installer: Improve layout of the partitioning page.Ludovic Courtès2019-04-28
| | | | | | | | Previously the "listbox" would be unnecessarily high, leaving too little space for the German translation of the text above. * gnu/installer/newt/partition.scm (run-disk-page): Increase #:info-textbox-width and pass #:listbox-height.
* installer: Add missing i18n in the partitioning pages.Ludovic Courtès2019-04-27
| | | | | | | * gnu/installer/newt/partition.scm (run-scheme-page): Add missing 'G_' for ITEMS. (run-partioning-page): Likewise. (run-partition-page): Move misplaced call to 'G_'.
* installer: Use FLAG-PASSWORD for the encryption passphrase confirmation.Ludovic Courtès2019-04-25
| | | | | * gnu/installer/newt/partition.scm (prompt-luks-passwords) <password-confirm-page>: Pass #:input-flags to 'run-input-page'.
* installer: Ask for confirmation before formatting partitions.Ludovic Courtès2019-03-27
| | | | | * gnu/installer/newt/page.scm (run-confirmation-page): New procedure. * gnu/installer/newt/partition.scm (draw-formatting-page): Call it.
* installer: Fix manual partitioning.Ludovic Courtès2019-01-17
| | | | | | * 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.
* installer: "formating" → "formatting".Ludovic Courtès2019-01-17
| | | | | * gnu/installer/newt/partition.scm, gnu/installer/parted.scm: Replace "formating" with "formatting".
* installer: partition: Add encryption password confirmation.Mathieu Othacehe2019-01-17
| | | | | * gnu/installer/newt/partition.scm (prompt-luks-passwords): Add password confirmation page.
* installer: Remove debug popup.Mathieu Othacehe2019-01-17
| | | | | * gnu/installer/newt/partition.scm (run-partioning-page): Remove debug partition popup.
* installer: Rename "Ok" buttons to "OK".Mathieu Othacehe2019-01-17
| | | | | | * gnu/installer/newt/page.scm: s/Ok/OK/. * gnu/installer/newt/partition.scm: Ditto. * gnu/installer/newt/user.scm: Ditto.
* installer: Various renamins follow-up.Mathieu Othacehe2019-01-17
| | | | | | | s/path/file and s/crypt/encrypt. * gnu/installer/newt/partition.scm: Apply renamings. * gnu/installer/parted.scm: Ditto.
* installer: Various renamings.Mathieu Othacehe2019-01-17
| | | | | | | | | | | | 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.
* installer: partionment: Add encryption support.Mathieu Othacehe2019-01-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* installer: partition: Fix typo.Mathieu Othacehe2019-01-17
| | | | * gnu/installer/newt/partition.scm (run-disk-page): Fix typo.
* installer: partition: Precise when using Manual/Guided partionment.Mathieu Othacehe2019-01-17
| | | | | | * 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.
* installer: Make sure every sentence is dot terminated.Mathieu Othacehe2019-01-17
| | | | | | | | | 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.
* installer: partition: Differenciate Back button from Exit button.Mathieu Othacehe2019-01-17
| | | | | | * 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.
* installer: Turn "Cancel" buttons into "Exit" buttons.Mathieu Othacehe2019-01-17
| | | | | | | | | | | | | | | | | | 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.
* installer: Add partitioning support.Mathieu Othacehe2019-01-17
* 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.