Commit graph

2163 commits

Author SHA1 Message Date
Teo Mrnjavac
dd035bf151 Document settings for services module. 2016-12-05 17:59:47 +01:00
Kevin Kofler
bc8dd4225a [displaymanager] set_autologin: Unset autologin for sddm when needed
CAL-423 #close
2016-12-03 19:18:41 +01:00
Teo Mrnjavac
45315e6ae9 Improve debug output for bootloader code path. 2016-12-02 18:36:02 +01:00
Teo Mrnjavac
e10034c670 Bump KPMcore requirement. 2016-12-01 19:15:11 +01:00
Teo Mrnjavac
0ad819e301 Make sure we write the inner fs type to globalstorage. 2016-11-25 16:21:25 +01:00
shainer
2759529841 Remove current partition's mountpoint from used list.
This means that when we edit a partition, we don't consider
its current mountpoint invalid because it is already in-use.

We need to do this for both "edit existing partition" and
"edit a partition that we are still creating".
2016-11-20 23:19:33 +00:00
shainer
349470ae71 Check mountpoints when editing a partition too. 2016-11-20 23:06:03 +00:00
shainer
8c1199df2d Check first selection of mountpoint too.
When opening the dialog.
2016-11-20 23:05:44 +00:00
shainer
f51b05e8aa Get the mountpoint from PartitionInfo.
The Partition object includes the root mountpoint in
the partition mountpoint, which is not what we want.
2016-11-20 22:46:28 +00:00
shainer
c8dbeb5341 Avoid creating a new partition with a used mountpoint.
We get the mountpoints already used by other partitions, and
disable the Ok button in the "Create new partition" dialog if
the user selects/writes a mountpoint which is already used.

We are going to do the same in the Edit partition dialog
after testing.
2016-11-20 22:05:55 +00:00
Kevin Kofler
34516e9477 [dracutlukscfg] Don't include keyfile in initramfs on unencrypted /boot.
This matches the fix in initcpiocfg and initramfscfg.
2016-11-19 02:30:34 +01:00
Kevin Kofler
d9840feef9 [initramfscfg] Don't include keyfile in initramfs on unencrypted /boot.
This matches the fix in initcpiocfg.

I had to create an encrypt_hook_nokey that is a copy of encrypt_hook
without the part that copies the keyfile.
2016-11-19 02:13:04 +01:00
Teo Mrnjavac
83b51a5867 Show warning. 2016-11-17 19:03:24 +01:00
Teo Mrnjavac
17fe2d82f4 Oops. 2016-11-17 18:28:58 +01:00
Teo Mrnjavac
a55bef5d2d Warn user about encrypted root with unencrypted /boot. 2016-11-17 18:15:37 +01:00
Teo Mrnjavac
79b0889db7 Don't include keyfile in initramfs on unencrypted /boot. 2016-11-17 18:15:37 +01:00
shainer
e5f5bb99d7 Change the default value of critical to false.
This means all package groups are non-critical by default.
Update documentation accordingly.
2016-11-13 12:12:07 +00:00
shainer
b6d6075213 New example netinstall.yaml, less groups for easier testing. 2016-11-13 10:56:13 +00:00
shainer
5fadd0a3ce New example netinstall.yaml with non-critical group. 2016-11-12 18:08:08 +00:00
shainer
58ae8e13c9 Add support for non-critical groups in netinstall.
Package groups are divided into critical and non-critical
depending on whether we want all Calamares to fail if installing
a package in the group fails, or we are okay with just logging a
warning.

The distinction is configured in the YAML file listing the package
groups. By default, all groups are critical, to keep supporting
the previous behaviour.
2016-11-12 17:57:58 +00:00
Teo Mrnjavac
a9d8107b3b Write Btrfs subvolume lines to fstab. 2016-11-11 16:47:08 +01:00
Teo Mrnjavac
e9ecb64a36 Special case for Btrfs root: create subvolumes and mount them. 2016-11-11 16:47:08 +01:00
Philip
e8f694fe02 [partition] Bump kpmcore requirements 2016-11-09 08:47:27 +01:00
Teo Mrnjavac
93cf5acea4 Bind-mount /run/udev in the chroot by default.
NOTE: this is absolutely necessary for grub-mkconfig's os-prober
instance to work.
2016-11-08 11:18:19 +01:00
Kevin Kofler
4f11faea52 [bootloader] Fix UEFI firmware workaround for 32-bit UEFI.
On 32-bit UEFI (note that the bitness of the firmware is what matters
here, not the bitness of the distribution), instead of copying
grubx64.efi to bootx64.efi, copy grubia32.efi to bootia32.efi.

Patch by TeHMoroS from SparkyLinux.

CAL-403 #close
2016-11-06 03:38:34 +01:00
Kevin Kofler
f08739cd15 [welcome] Use QNetworkAccessManager in checkHasInternet.
Use QNetworkAccessManager instead of raw QtDBus queries to
NetworkManager in RequirementsChecker::checkHasInternet(). This is much
simpler (i.e., less error-prone) and should be more portable (to, e.g.,
ConnMan).
2016-11-05 22:11:57 +01:00
Kevin Kofler
6eb512ab49 [welcome] Fix RequirementsChecker::checkHasInternet().
The NetworkManager property is called "State", not "state". The call
was always failing, and the method was always returning true as a
result.
2016-11-05 20:34:13 +01:00
Kevin Kofler
62bded1447 [bootloader] Fix vfat_correct_case.
If the directory already existed, vfat_correct_case was returning only
the last part rather than the full path as it is supposed to.
2016-11-05 17:41:38 +01:00
Kevin Kofler
0131d7fbf1 [unpackfs] Do not fail if rsync returns exit code 23.
Unfortunately, rsync returns exit code 23 (Partial transfer due to
error) if it cannot write extended attributes (with -X) because the
target file system does not support it, e.g., the FAT EFI system
partition. We need -X because distributions using file system
capabilities and/or SELinux require the extended attributes. But
distributions using SELinux may also have SELinux labels set on files
under /boot/efi, and rsync complains about those. The only clean way
would be to split the rsync into one with -X and --exclude /boot/efi and
a separate one without -X for /boot/efi, but only if /boot/efi is
actually an EFI system partition. For now, this hack will have to do.

See also:
https://bugzilla.redhat.com/show_bug.cgi?id=868755#c50
for the same issue in Anaconda, which uses a similar workaround.
2016-11-04 01:37:08 +01:00
Teo Mrnjavac
c4df69b4a7 Allow try_install and try_remove entries in packages module. 2016-11-02 17:00:45 +01:00
Teo Mrnjavac
b272917e83 Add option of updating packages db before perfoming package operations. 2016-11-02 13:04:11 +01:00
Rohan Garg
d67fdccd4c Make sure we also set a preferred Xsession 2016-11-02 09:51:27 +01:00
Kevin Kofler
075577d948 [netinstall] Support selecting visible groups by default.
In other words, support:
  hidden: false
  selected: true
groups.

This was supposed to work according to README.md, but not actually
implemented. Now it should be working.
2016-11-02 05:58:00 +01:00
Rohan Garg
662656a762
Better handling for when the Autologin section already has things 2016-10-31 17:55:59 +01:00
Rohan Garg
f7ac1a3ede Use configparser to parse sddm.conf
Since sddm.conf follows the INI format we can use configparser
with a few added options to properly parse the config and write
it out instead of manually parsing each line which is slow and
prone to error.

For eg. The old code would fail to parse a conf which had no
commented out User key but where the user had configured autologin
in Calamares.
2016-10-31 17:10:46 +01:00
Kevin Kofler
1548fe4810 [partition] Use FlagEsp instead of sgdisk to scan for ESPs.
Address an old FIXME in
PartitionCoreModule::scanForEfiSystemPartitions(): Check the FlagEsp on
the Partition object (that KPMcore has been supporting since 2.1.0)
instead of running sgdisk.
2016-10-29 01:09:14 +02:00
Kevin Kofler
5377003f89 Set the ESP flag in partition rather than bootloader.
The manual partitioning setup was already requiring the user to check
the ESP flag for the EFI System Partition. Now the autopartitioning also
sets it directly (a one-line change). The sgdisk call in the bootloader
module is thus no longer necessary (it was only a workaround because
kpmcore < 2.1.0 did not support FlagEsp), so remove that snippet.

This fixes configurations such as NVME disks where splitting boot_device
into boot_device[-1:] and boot_device[:-1] is not the correct split
(because the partition gets a 2-letter suffix) (reported by demmm on
IRC).
2016-10-29 00:52:38 +02:00
Teo Mrnjavac
4488761a63 Only add LUKS keyfile if relevant, and with a 15s timeout. 2016-10-28 10:17:39 +02:00
Teo Mrnjavac
fbe72b3663 Improve user-visible strings in SetPartFlagsJob. 2016-10-28 09:24:00 +02:00
Teo Mrnjavac
de979f8528 Add user to groups separately from useradd. 2016-10-27 15:26:20 +02:00
Philip
22cf2c16a2 [displaymanager] use same pattern for all str.format calls 2016-10-26 21:40:14 +02:00
Bernhard Landauer
c99cdc0fa7 [displaymanager] add Deepin 2016-10-26 03:56:03 +02:00
Kevin Kofler
668284f5f1 [grubcfg] Compare integers to integers, not strings.
target_env_call returns an integer, so do not compare its result to the
string "0".
2016-10-21 00:19:22 +02:00
V3n3RiX
11c9e87fd0 dracut : unlock encrypted swap if exists (#267)
* dracut : unlock encrypted swap if exists
* only check for swap_outer_uuid if dracut exists
2016-10-20 17:00:15 +02:00
V3n3RiX
0bde162a9c Only write rd.luks.uuid if dracut is present and leave other initramfs generators clean (#266)
* add rd.luks.uuid to GRUB_CMDLINE (fixes unbootable system with dracut --nohostonly, and doesn't affect any other initramfs generators)

* typo

* only write rd.luks.uuid line if dracut is present, and leave other initramfs generators alone :D

* add missing = operator
2016-10-19 17:41:35 +02:00
V3n3RiX
7e74d48fb6 add rd.luks.uuid to GRUB_CMDLINE (fixes unbootable system with dracut… (#265)
* add rd.luks.uuid to GRUB_CMDLINE (fixes unbootable system with dracut --nohostonly, and doesn't affect any other initramfs generators)

* typo
2016-10-18 18:59:51 +02:00
Kevin Kofler
d5dfe86525 [dracutlukscfg] New module: pre-configuration for dracut+LUKS.
Add a dracutlukscfg module to write a
/etc/dracut.conf.d/calamares-luks.conf file for LUKS full disk
encryption support with Dracut.

You should run:

* partition
* luksbootkeyfile
* dracutlukscfg
* dracut

in that order (not necessarily in immediate sequence). The
luksopenswaphook module is not used with Dracut.
2016-10-16 19:08:16 +02:00
Kevin Kofler
2573731cdb [grubcfg] Fix mismatched quoting and escaping.
If we use .replace("'", "'\\''") for escaping, we also need to use
single quotes, not double quotes.

This was broken by the port from '%' to format, which also randomly
changed quoting characters for no good reason. Changing the outer ones
does not matter, but \" or ' within a string is not the same thing!
2016-10-16 18:44:22 +02:00
Teo Mrnjavac
6e7dc0b437 Use the target system's boot name in partitioning summary widget. 2016-10-14 15:27:24 +02:00
David McKinney
b63ab4df15 [initramfscfg] New module: pre-configuration for update-initramfs.
Added an initramfscfg module to handle pre-configuration for the Debian
update-initramfs, such as installing hooks (needed for luks/FDE support
on Debian-based distros).

Closes #254. (Cherry-picked from the pull request.)
2016-10-13 19:20:20 +02:00