Age | Commit message (Collapse) | Author | Files | Lines |
|
If we are doing a mini-rootfs or container installation, we may not have
OpenRC at all. This would mean /etc/runlevels doesn't exist in the target.
In that case, we crash with:
boost::filesystem::directory_iterator::construct: No such file or directory
[system:2]: "/tmp/horizon-image/target/etc/runlevels"
Closes: #378
Fixes: a9ccd9bc7e ("hscript: Allow svcenable to create new runlevels")
|
|
Way too buggy in its present state, unfortunately. Needs a lot more logic.
Closes: #377, #376
|
|
|
|
Allows the user to select arch, repository, signingkey, and version.
Closes: #337
|
|
* Implement some clang-tidy and clazy suggestions.
* Use the default signingkey options based on the architecture instead
of hard-coding it in the wizard *and* hscript/script_v.cc.
|
|
Dramatic speed up parsing time zone lists by using const refs.
Closes: #357
|
|
This allows one to use i.e. /opt/qemu/bin or /usr/gxemul/bin for the
qemu static binaries used to generate foreign-architecture images.
|
|
This ensures that buttons and labels are not cut off.
|
|
This allows us to run software after the hostname changes in the
Installation Environment and live desktops.
Closes: #372
|
|
image: Tar backend: Enable xz threading support
See merge request adelie/horizon!7
|
|
This should enable tarballs to be created significantly faster on
systems with more than one processor.
|
|
The problem was OpenRC which was fixed in packages.git. We should not
have any further issues with efivarfs being read-only outside of host
systems that are running OpenRC >= 0.28 and < 0.39.
|
|
We're the executor, we can just commandeer the entire thing, host system
included. There is very low likelihood of damage to a host system because
we are use umount instead of making the host r/w.
The only thing that could break is `systemctl reboot --firmware`, or a
host-side upgrade of GRUB that somehow changes the path of the EFI stub.
Both of these are almost impossible to encounter on a host that is actually
running the executor. However, encountering a broken read-only efivarfs
seems to be VERY common in the Installation Environment.
Fixes: ab212730bd ("hscript: bootloader: Set rdwr on 'real' efivarfs")
|
|
We have to clear the RDONLY flag on the base /sys before we clear it from
the target /sys, otherwise it doesn't work.
Fixes: 975b506cdd ("hscript: bootloader: Really, truly revamp EFI")
|
|
This should handle every single scenario we could be in regarding efivarfs.
It also makes efivarfs errors non-fatal, as grub-install has --no-nvram for
such situations.
Closes: #370
Fixes: bad8487c53 ("hscript: bootloader: Hopefully fix EFI once and for all")
|
|
Fixes: 3786744d94 ("Qt UI: Update signing keys")
|
|
I'm not happy about relying on sudo either, but there's no other good way.
Fixes: #368
|
|
We don't use the old style keys by default any more, so we need to
update the test to ensure it doesn't fail.
Fixes: 85ab4eb730 ("hscript: Use mirror keys by default")
|
|
Before, we were using the old (pre-beta4) key format. Now we pull from
the mirrors. We rely on the user either specifying the 'arch' key or
running the script on the same CPU as the target system, as assumed in
other parts of the codebase.
Fixes: #349
|
|
|
|
This prevents the user from being confounded by a lack of response to
the Open Terminal button, if something goes catastrophically wrong that
even an Xterm won't open.
Closes: #362
|
|
Combined with adelie/image@7df95115f4, this allows a user to choose
whether to boot to a graphical environment or drop to a text prompt.
Implements: #346
|
|
This is going to be useful in general for some advanced use cases, but
most importantly, it will allow us to define runlevels for live media.
Ref: #346
|
|
|
|
We can rely on $root being the default path, and not doing so breaks
Petitboot on PS3 and OPAL systems (Power8/9).
Fixes: #347
|
|
Now we use ID_MODEL_ENC in addition to ID_SERIAL, because sometimes
users might want to actually use spaces in addition to just serial
numbers.
Fixes: #348
|
|
netsurf-gtk was renamed netsurf-gtk3 as part of the switch from GTK 2,
so we need to launch that binary.
See-Also: adelie/packages@635178f5ca
Fixes: #365
|
|
We don't have a taskbar or other obvious ways to switch between running
applications nor the ability to discover minimised windows (other than
Alt + Tab). Remove them from the window decorations.
Fixes: #363
|
|
This allows a HorizonScript to inherit from multiple files. Files are parsed
in a system-defined, unspecified order, but all scripts of a given depth are
guaranteed to be parsed before the next depth.
|
|
Omission of the high-DPI scaling flag was making the runner look
significantly worse than the wizard on high-DPI screens.
Allowing setuid means we can finally run as the live user and complete
an installation.
Ref: #353, #321
|
|
This makes for poor UX. If the user can't type fast, it will keep
updating underneath them, which is very frustrating. Saw in IRL test.
Fixes: #358
|
|
Fixes: #335
|
|
Fixes: #356
Ref: adelie/packages#859
|
|
We are already recreating the DHCP page every time the interface chooser
is shown. However, if we don't do this from the main network page, then
systems with a single interface will never recreate the DHCP page.
This means failures are "sticky" / "forever".
Fixes: #354
|
|
* Terminal now uses dark background with light text, which makes root
prompt readable when started from Install CD.
* Tools are now spawned instead of run modally. This means you can
interact with the Horizon wizard while using the Terminal or Web
browser. If a tool is still running at the end, Horizon will prompt
the user before allowing them to commit to disk.
|
|
|
|
These seem to work, but our GRUB kernel isn't being built properly yet,
so this isn't quite release-ready.
|
|
Ensures that the user's time isn't wasted if xorriso is missing.
|
|
* Use <filesystem> portably.
* Create the target directory if it doesn't exist.
* Fix symlink detection bug that could cause target mtab to halt
image creation.
|
|
Otherwise, we error out building from missing those cases.
|
|
We rotated our keys in 2022 and need to use them.
|
|
Causes Valgrind to report memory errors on GCC 8.5.0.
|
|
This ensures that our .valgrindrc is picked up.
|
|
Prevents us from falling off the end of the function.
|
|
In the Runtime Environment, we default to Plasma.
In the Install Environment, we use the current desktop.
Closes: #340
|
|
* Ensure that Boost.Filesystem is still usable.
* Don't use a reference to a temporary in loops.
Fixes: #333
|
|
* Use <cassert> instead of <assert.h>.
* Include <cstring> for ::strerror in install env.
* Consistently use ::strerror.
* Remove superfluous duplicate semicolon.
Fixes: #334
|
|
|
|
|
|
|