Age | Commit message (Collapse) | Author |
|
When the store overlay is mounted, other processes such as kmscon, udev
and guix-daemon may open files from the store, preventing the
underlying install support from being umounted. See:
https://lists.gnu.org/archive/html/guix-devel/2018-12/msg00161.html.
To avoid this situation, mount the store overlay inside a container,
and run the installation from within that container.
* gnu/build/shepherd.scm (fork+exec-command/container): New procedure.
* gnu/services/base.scm (guix-shepherd-service): Support an optional PID
argument passed to the "start" method. If that argument is passed, ensure that
guix-daemon enters the given PID MNT namespace by using
fork+exec-command/container procedure.
* gnu/installer/final.scm (umount-cow-store): Remove it,
(install-system): run the installation from within a container.
* gnu/installer/newt/final.scm (run-install-shell): Remove the display hack.
|
|
This adds support for creating and editing NTFS partitions. It is however not
possible yet to create root NTFS partitions, as overlaying on top of a fuse
partition does not seem supported.
* gnu/installer.scm (installer-program): Add "ntfs-3g" to the inputs.
* gnu/installer/parted.scm (user-fs-type-name, user-fs-type->mount-type,
partition-filesystem-user-type, create-ntfs-file-system,
format-user-partitions): Add NTFS support.
* gnu/installer/newt/partition.scm (run-fs-type-page): Add NTFS support.
|
|
* gnu/installer/newt/final.scm (run-install-shell): Force kmscon to open
'bold' font files, before the cow-store overlay is mounted.
|
|
Previously for Azerbaijani, no Latin layout but only the Cyrillic variant
could be selected.
* gnu/installer/newt/keymap.scm (add-empty-variant): New procedure.
(run-keymap-page): Use it to insert an empty variant.
|
|
Fixes <https://bugs.gnu.org/40493>.
* gnu/installer/newt/keymap.scm (%non-latin-layouts): New variable.
(%non-latin-variants): New variable.
(%latin-layout+variants): New variable.
(toggleable-latin-layout): New procedure to compute combined layouts.
(run-keymap-page): Use it.
(keyboard-layout->configuration): Apply it in config.scm.
(run-layout-page): Mention Alt+Shift.
* gnu/installer/keymap.scm (kmscon-update-keymap): Pass on XKB options.
* gnu/installer/record.scm (<installer>): Adjust code comments.
* gnu/installer.scm (apply-keymap): Pass on XKB options.
(installer-steps): Adjust code comments.
* gnu/packages/patches/kmscon-runtime-keymap-switch.patch: Apply XKB options.
|
|
* gnu/installer/proxy.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* gnu/installer/newt/parameters.scm (run-proxy-page): New procedure,
(run-parameters-page): add the previous procedure to the parameters menu.
|
|
* gnu/local.mk (INSTALLER_MODULES): Rename help.scm into parameters.scm.
* po/guix/POTFILES.in: Ditto.
* gnu/installer/record.scm (<installer>): Rename help-menu into parameter-menu
and help-page into parameters-page.
* gnu/installer/newt/parameters.scm: Renamed from help.scm. Update information
messages.
* gnu/installer/newt.scm: Update accordingly.
* gnu/installer/newt/keymap.scm: Ditto.
|
|
* gnu/installer/newt/help.scm (run-help-page): Pass #:listbox-height.
|
|
* gnu/installer/newt/page.scm (run-input-page): Remove component argument that
is not longer passed to the procedure passed to 'add-component-callback',
(run-listbox-selection-page): ditto.
* gnu/installer/newt/user.scm (run-user-add-page): Ditto,
(run-user-add-page): ditto.
|
|
* gnu/installer/newt/help.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* gnu/installer/record.scm (<installer>): Add 'help-menu' and 'help-page'
fields,
(installer-help-menu, installer-help-page): new exported procedures.
* gnu/installer/newt.scm (init): Set the help line,
(help-menu, help-page): new procedures used ...
(newt-installer): ... here.
* gnu/installer/newt/keymap.scm (run-layout-page): Add a context argument to
differenciate the help context from the main one,
(run-keymap-page): add a context argument and pass it to run-layout-page.
* gnu/installer.scm (compute-keymap-step): Add a context argument and pass it
to 'installer-keymap-page',
(installer-steps): set the help menu and pass the appropriate context to
compute-keymap-step calls,
(guile-newt): update to revision 2.
|
|
* gnu/installer/utils.scm (run-shell-command): Rename to...
(run-command): Remove call to 'call-with-temporary-output-file' and hop
through Bash. Expect COMMAND to be a list of strings rather than a
string.
* gnu/installer/final.scm (install-system): Turn INSTALL-COMMAND into a
list of strings and pass it to 'run-command'.
* gnu/installer/newt/page.scm (edit-file): Likewise.
|
|
This is useful for automated tests.
* gnu/installer/newt/network.scm (wait-service-online)[online?]: New
procedure. Check for /tmp/installer-assume-online.
Use it instead of 'connman-online?'.
|
|
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.
|
|
* gnu/installer/newt/final.scm (run-install-failed-page): Propose between
installer resume or restart. Do actually resume the installation by raising an
&installer-step-abort condition if "Resume" button is pressed. Otherwise, keep
going as the installer will be restarted by login.
* gnu/installer.scm (installer-program): Remove the associated TODO comment.
|
|
* gnu/installer/newt/user.scm (run-root-password-page): Move
"TRANSLATORS" comment right above 'G_' call.
|
|
Fixes <https://bugs.gnu.org/38562>.
Reported by Brice Waegeneire <brice@waegenei.re>.
Previously, pressing F12 or shift-F2 in one of those forms would cause
it to exit, usually with the default value #t because the caller had not
provided a useful hotkey "callback".
* gnu/installer/newt/page.scm (run-input-page, run-confirmation-page)
(run-listbox-selection-page, run-checkbox-tree-page)
(run-file-textbox-page): Pass #:flags FLAG-NOF12 to 'make-form'.
|
|
Fixes <https://bugs.gnu.org/39199>.
Reported by Jonathan Brielmaier <jonathan.brielmaier@web.de>.
* gnu/installer/newt/page.scm (run-file-textbox-page): Move 'loop' to
the beginning of the body. Do not call 'loop' from the 'dynamic-wind'
exit handler as we would not return the value of the second call to
'loop'.
|
|
Fixes <https://bugs.gnu.org/36885>.
Reported by <lukasbf@tutanota.com>.
* gnu/installer/newt/page.scm (edit-file): New procedure.
(run-file-textbox-page): Add #:edit-button? and #:editor-locale
parameters. Remove 'file-text' and add 'edit-button', and add it
to the horizontal stacked grid when EXIT-BUTTON? is true. Wrap
body in 'loop'. Handle case where ARGUMENT is EDIT-BUTTON by calling
'loop'.
* gnu/installer/newt/final.scm (run-config-display-page): Add #:locale
parameter. Pass #:edit-button? and #:editor-locale to
'run-file-textbox-page'.
(run-final-page): Pass LOCALE to 'run-config-display-page'.
|
|
* 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.
|
|
* 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*.
|
|
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?.
|
|
* gnu/installer/newt/wifi.scm (run-wifi-password-page):
Add an #:INPUT-VISIBILITY-CHECKBOX? to the input page.
|
|
* gnu/installer/newt/user.scm (run-user-add-page): Change the input
visibility checkbox's text to ‘Show’, and default to unchecked.
* gnu/installer/newt/page.scm (run-input-page): Likewise.
Rename INPUT-HIDE-CHECKBOX? argument to INPUT-VISIBILITY-CHECKBOX?.
|
|
* gnu/installer/newt/network.scm (run-technology-page): Fix plural typo.
|
|
This fixes https://issues.guix.gnu.org/issue/35622.
* gnu/installer/connman.scm (<service>): Mention that name may be false.
* gnu/installer/newt/wifi.scm (wifi-services): Filter out wifi services
without name.
Co-authored by: Pierre Neidhardt <mail@ambrevar.xyz>
|
|
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>
|
|
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.
|
|
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.
|
|
* gnu/installer/newt/partition.scm (run-fs-type-page): Add fat16.
|
|
* gnu/installer/newt/page.scm (run-file-textbox-page): Reflow text.
Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
|
|
Fixes <https://bugs.gnu.org/35716>.
Reported by sirmacik <sirmacik@wioo.waw.pl>.
* gnu/installer/newt/page.scm (run-input-page): Add FLAG-SCROLL to
INPUT-FLAGS*.
* gnu/installer/newt/user.scm (run-user-add-page): Add FLAG-SCROLL to
ENTRY-PASSWORD.
|
|
* gnu/installer/newt/user.scm (run-user-page): Add 'G_' call for "User
creation".
|
|
Fixes <https://bugs.gnu.org/35607>.
Reported by Florian Pelz <pelzflorian@pelzflorian.de>.
* gnu/installer/newt/user.scm (run-user-page): Add 'cond' clause for
ARGUMENT = EXIT-BUTTON.
|
|
* 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.
|
|
Previously, for a machine that only has wired networking, and only one
such network, we'd have to go through two selection boxes. Now we just
skip both.
* gnu/installer/newt/ethernet.scm (run-ethernet-page): When
'ethernet-services' returns one element, return it directly without
opening a listbox selection.
* gnu/installer/newt/network.scm (run-technology-page): Likewise.
|
|
* 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.
|
|
* gnu/installer/newt/partition.scm (run-partioning-page): Pass
#:sort-listbox-items? #f so that methods always appear in the same
order.
|
|
* gnu/installer/newt/user.scm (run-user-add-page)[pad-label]: Increase
2nd argument to 25.
[entry-width]: Increase to 35.
|
|
* gnu/installer/newt/menu.scm (run-menu-page): Add missing space after
period.
Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
|
|
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'.
|
|
* gnu/installer/newt/wifi.scm (draw-scanning-page): Fix typo in docstring.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* gnu/installer/newt/final.scm (strip-prefix): New procedure.
(run-config-display-page): Add a sentence showing where the config file
is stored.
|
|
Previously, if we had a password mismatch, the 'password' field would
end up containing a <user> record instead of the actual password.
* gnu/installer/newt/user.scm (confirm-password): Make TRY-AGAIN
optional and adjust docstring.
(run-user-add-page): Move 'confirm-password' call one level higher.
|
|
* gnu/installer/newt/user.scm (run-user-add-page): Add #:real-name. Add
a label and entry for the real name and initialize the 'real-name' field
of the <user> record.
* gnu/installer/final.scm (create-user-database): Set the 'comment'
field of the <user-account> record.
|
|
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.
|
|
* gnu/installer/services.scm (<system-service>)[recommended?]: New
field.
* gnu/installer/newt/services.scm (run-desktop-environments-cbt-page):
Pass #:selection to 'run-checkbox-tree-page', computed from the
'recommended?' field of each service.
(run-networking-cbt-page): Likewise.
|
|
* gnu/installer/newt/page.scm (%none-selected): New variable.
(run-checkbox-tree-page): Add #:selection.
[fill-checkbox-tree]: Honor it.
|
|
* 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_'.
|
|
* gnu/installer/newt/final.scm (run-install-success-page): Return
'success.
* gnu/installer.scm (installer-program): Check the result of the 'final
step and reboot upon success.
|
|
* gnu/installer/newt/user.scm (run-user-add-page): Add #:name and
#:home-directory and honor them. Add call to 'confirm-password'.
|