diff options
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 19 | ||||
-rw-r--r-- | croco-btrfs.patch | 303 | ||||
-rw-r--r-- | croco-fswhitelist.patch | 88 |
4 files changed, 11 insertions, 405 deletions
@@ -1,6 +1,6 @@ pkgbase = calamares-croco-git pkgdesc = Distribution-independent installer framework (patched croco version) - pkgver = 3.2.36.r8590.b8a9c4c3b + pkgver = 3.2.37.r8624.46ab3ac27 pkgrel = 1 url = https://github.com/calamares/calamares arch = i686 @@ -37,11 +37,7 @@ pkgbase = calamares-croco-git conflicts = calamares-dev replaces = calamares-dev source = git+https://github.com/calamares/calamares.git - source = croco-fswhitelist.patch - source = croco-btrfs.patch sha256sums = SKIP - sha256sums = dfe2aeb4c8efc887127a4683b01dc677a3906ca968dec4e4b74bdcbf6ac4b948 - sha256sums = 39a5f6c79d6c70442e7a289cdc0d3090c2009fe518edecccdd53c0fdeb6fb8e4 pkgname = calamares-croco-git @@ -1,8 +1,7 @@ -# Manitainer: GiacoLenzo2109 <GiacoLenzo2109@gmail.com> -# Contributor: Philip Müller <philm[at]manjaro[dog]org> +# Maintainer: Philip Müller <philm[at]manjaro[dog]org> pkgname=calamares-croco-git -pkgver=3.2.36.r8590.b8a9c4c3b +pkgver=3.2.37.r8624.46ab3ac27 pkgrel=1 pkgdesc='Distribution-independent installer framework (patched croco version)' arch=('i686' 'x86_64') @@ -21,10 +20,12 @@ makedepends=('extra-cmake-modules' 'qt5-tools' 'qt5-translations' 'git' 'boost') # 'usr/share/calamares/modules/initcpio.conf' # 'usr/share/calamares/modules/unpackfs.conf') -source+=(git+https://github.com/calamares/calamares.git croco-fswhitelist.patch croco-btrfs.patch) -sha256sums=('SKIP' - 'dfe2aeb4c8efc887127a4683b01dc677a3906ca968dec4e4b74bdcbf6ac4b948' - '39a5f6c79d6c70442e7a289cdc0d3090c2009fe518edecccdd53c0fdeb6fb8e4') +#source+=(git+https://github.com/calamares/calamares.git croco-fswhitelist.patch croco-btrfs.patch) +source+=(git+https://github.com/calamares/calamares.git) +#sha256sums=('SKIP' +# 'dfe2aeb4c8efc887127a4683b01dc677a3906ca968dec4e4b74bdcbf6ac4b948' +# '39a5f6c79d6c70442e7a289cdc0d3090c2009fe518edecccdd53c0fdeb6fb8e4') +sha256sums=('SKIP') pkgver() { cd ${srcdir}/calamares @@ -42,8 +43,8 @@ prepare() { sed -i -e 's/"Install configuration files" OFF/"Install configuration files" ON/' CMakeLists.txt # patches here - patch -p1 -N -i "$srcdir/croco-fswhitelist.patch" - patch -p1 -N -i "$srcdir/croco-btrfs.patch" + #patch -p1 -N -i "$srcdir/croco-fswhitelist.patch" + #patch -p1 -N -i "$srcdir/croco-btrfs.patch" } diff --git a/croco-btrfs.patch b/croco-btrfs.patch deleted file mode 100644 index c5637f3862cf..000000000000 --- a/croco-btrfs.patch +++ /dev/null @@ -1,303 +0,0 @@ -From a62f0179e61fc5ca3b9c47f7482ce38a85572bdb Mon Sep 17 00:00:00 2001 -From: TotallyNotElite <totallynotelite@gmail.com> -Date: Mon, 18 Jan 2021 22:56:27 +0100 -Subject: [PATCH] Croco BTRFS patches - ---- - src/modules/fstab/main.py | 38 +++++++ - src/modules/grubcfg/main.py | 2 +- - src/modules/initcpiocfg/main.py | 2 +- - src/modules/mount/main.py | 178 ++++++++++++++++++++++++++++++-- - 4 files changed, 210 insertions(+), 10 deletions(-) - -diff --git a/src/modules/fstab/main.py b/src/modules/fstab/main.py -index 6977ccad1..63352128a 100644 ---- a/src/modules/fstab/main.py -+++ b/src/modules/fstab/main.py -@@ -206,6 +206,41 @@ class FstabGenerator(object): - dct = self.generate_fstab_line_info(home_entry) - if dct: - self.print_fstab_line(dct, file=fstab_file) -+ elif line.endswith(b'path @root'): -+ rootuser_entry = partition -+ rootuser_entry["mountPoint"] = "/root" -+ rootuser_entry["subvol"] = "@root" -+ dct = self.generate_fstab_line_info(rootuser_entry) -+ if dct: -+ self.print_fstab_line(dct, file=fstab_file) -+ elif line.endswith(b'path @srv'): -+ srv_entry = partition -+ srv_entry["mountPoint"] = "/srv" -+ srv_entry["subvol"] = "@srv" -+ dct = self.generate_fstab_line_info(srv_entry) -+ if dct: -+ self.print_fstab_line(dct, file=fstab_file) -+ elif line.endswith(b'path @cache'): -+ cache_entry = partition -+ cache_entry["mountPoint"] = "/var/cache" -+ cache_entry["subvol"] = "@cache" -+ dct = self.generate_fstab_line_info(cache_entry) -+ if dct: -+ self.print_fstab_line(dct, file=fstab_file) -+ elif line.endswith(b'path @log'): -+ log_entry = partition -+ log_entry["mountPoint"] = "/var/log" -+ log_entry["subvol"] = "@log" -+ dct = self.generate_fstab_line_info(log_entry) -+ if dct: -+ self.print_fstab_line(dct, file=fstab_file) -+ elif line.endswith(b'path @tmp'): -+ tmp_entry = partition -+ tmp_entry["mountPoint"] = "/var/tmp" -+ tmp_entry["subvol"] = "@tmp" -+ dct = self.generate_fstab_line_info(tmp_entry) -+ if dct: -+ self.print_fstab_line(dct, file=fstab_file) - elif line.endswith(b'path @swap'): - swap_part_entry = partition - swap_part_entry["mountPoint"] = "/swap" -@@ -326,6 +361,9 @@ def create_swapfile(root_mount_point, root_btrfs): - The swapfile-creation covers progress from 0.2 to 0.5 - """ - libcalamares.job.setprogress(0.2) -+ swapfile_path = os.path.join(root_mount_point, "var", "cache", "swapfile") -+ with open(swapfile_path, "wb") as f: -+ pass - if root_btrfs: - # btrfs swapfiles must reside on a subvolume that is not snapshotted to prevent file system corruption - swapfile_path = os.path.join(root_mount_point, "swap/swapfile") -diff --git a/src/modules/grubcfg/main.py b/src/modules/grubcfg/main.py -index 9e9615a0c..cc017d5a0 100644 ---- a/src/modules/grubcfg/main.py -+++ b/src/modules/grubcfg/main.py -@@ -98,7 +98,7 @@ def modify_grub_default(partitions, root_mount_point, distributor): - break - - if have_plymouth: -- use_splash = "splash" -+ use_splash = "splash rd.udev.log_priority=3 vt.global_cursor_default=0 systemd.unified_cgroup_hierarchy=1" - - cryptdevice_params = [] - -diff --git a/src/modules/initcpiocfg/main.py b/src/modules/initcpiocfg/main.py -index cdfeadd0f..ca7f96914 100644 ---- a/src/modules/initcpiocfg/main.py -+++ b/src/modules/initcpiocfg/main.py -@@ -116,7 +116,7 @@ def modify_mkinitcpio_conf(partitions, root_mount_point): - btrfs = "" - lvm2 = "" - hooks = ["base", "udev", "autodetect", "modconf", "block", "keyboard", -- "keymap"] -+ "keymap", "consolefont"] - modules = [] - files = [] - encrypt_hook = False -diff --git a/src/modules/mount/main.py b/src/modules/mount/main.py -index 3982176df..27b9f79df 100644 ---- a/src/modules/mount/main.py -+++ b/src/modules/mount/main.py -@@ -82,12 +82,52 @@ def mount_partition(root_mount_point, partition, partitions): - # Finally we remount all of the above on the correct paths. - if fstype == "btrfs" and partition["mountPoint"] == '/': - has_home_mount_point = False -+ has_rootuser_mount_point = False -+ has_srv_mount_point = False -+ has_cache_mount_point = False -+ has_log_mount_point = False -+ has_tmp_mount_point = False - for p in partitions: - if "mountPoint" not in p or not p["mountPoint"]: - continue - if p["mountPoint"] == "/home": - has_home_mount_point = True - break -+ -+ for p in partitions: -+ if "mountPoint" not in p or not p["mountPoint"]: -+ continue -+ if p["mountPoint"] == "/root": -+ has_rootuser_mount_point = True -+ break -+ -+ for p in partitions: -+ if "mountPoint" not in p or not p["mountPoint"]: -+ continue -+ if p["mountPoint"] == "/srv": -+ has_srv_mount_point = True -+ break -+ -+ for p in partitions: -+ if "mountPoint" not in p or not p["mountPoint"]: -+ continue -+ if p["mountPoint"] == "/var/cache": -+ has_cache_mount_point = True -+ break -+ -+ for p in partitions: -+ if "mountPoint" not in p or not p["mountPoint"]: -+ continue -+ if p["mountPoint"] == "/var/log": -+ has_log_mount_point = True -+ break -+ -+ for p in partitions: -+ if "mountPoint" not in p or not p["mountPoint"]: -+ continue -+ if p["mountPoint"] == "/var/tmp": -+ has_tmp_mount_point = True -+ break - needs_swap_subvolume = False - swap_choice = global_storage.value( "partitionChoices" ) - if swap_choice: -@@ -105,18 +145,140 @@ def mount_partition(root_mount_point, partition, partitions): - subprocess.check_call(['btrfs', 'subvolume', 'create', - root_mount_point + '/@swap']) - -- subprocess.check_call(["umount", "-v", root_mount_point]) -+ if not has_rootuser_mount_point: -+ subprocess.check_call(['btrfs', 'subvolume', 'create', -+ root_mount_point + '/@root']) -+ -+ if not has_srv_mount_point: -+ subprocess.check_call(['btrfs', 'subvolume', 'create', -+ root_mount_point + '/@srv']) -+ -+ if not has_cache_mount_point: -+ subprocess.check_call(['btrfs', 'subvolume', 'create', -+ root_mount_point + '/@cache']) -+ -+ if not has_log_mount_point: -+ subprocess.check_call(['btrfs', 'subvolume', 'create', -+ root_mount_point + '/@log']) -+ -+ if not has_tmp_mount_point: -+ subprocess.check_call(['btrfs', 'subvolume', 'create', -+ root_mount_point + '/@tmp']) - -- device = partition["device"] -+ subprocess.check_call(["umount", "-v", root_mount_point]) - - if "luksMapperName" in partition: -- device = os.path.join("/dev/mapper", partition["luksMapperName"]) -+ libcalamares.utils.mount( -+ "/dev/mapper/{!s}".format(partition["luksMapperName"]), -+ mount_point, -+ fstype, -+ ",".join( -+ ["subvol=@", partition.get("options", "")]), -+ ) -+ if not has_home_mount_point: -+ libcalamares.utils.mount( -+ "/dev/mapper/{!s}".format(partition["luksMapperName"]), -+ root_mount_point + "/home", -+ fstype, -+ ",".join( -+ ["subvol=@home", partition.get("options", "")]), -+ ) -+ if not has_rootuser_mount_point: -+ libcalamares.utils.mount( -+ "/dev/mapper/{!s}".format(partition["luksMapperName"]), -+ root_mount_point + "/root", -+ fstype, -+ ",".join( -+ ["subvol=@root", partition.get("options", "")]), -+ ) -+ if not has_srv_mount_point: -+ libcalamares.utils.mount( -+ "/dev/mapper/{!s}".format(partition["luksMapperName"]), -+ root_mount_point + "/srv", -+ fstype, -+ ",".join( -+ ["subvol=@srv", partition.get("options", "")]), -+ ) -+ if not has_cache_mount_point: -+ libcalamares.utils.mount( -+ "/dev/mapper/{!s}".format(partition["luksMapperName"]), -+ root_mount_point + "/var/cache", -+ fstype, -+ ",".join( -+ ["subvol=@cache", partition.get("options", "")]), -+ ) -+ if not has_log_mount_point: -+ libcalamares.utils.mount( -+ "/dev/mapper/{!s}".format(partition["luksMapperName"]), -+ root_mount_point + "/var/log", -+ fstype, -+ ",".join( -+ ["subvol=@log", partition.get("options", "")]), -+ ) -+ if not has_tmp_mount_point: -+ libcalamares.utils.mount( -+ "/dev/mapper/{!s}".format(partition["luksMapperName"]), -+ root_mount_point + "/var/tmp", -+ fstype, -+ ",".join( -+ ["subvol=@tmp", partition.get("options", "")]), -+ ) -+ else: -+ libcalamares.utils.mount( -+ partition["device"], -+ mount_point, -+ fstype, -+ ",".join(["subvol=@", partition.get("options", "")]), -+ ) -+ if not has_home_mount_point: -+ libcalamares.utils.mount( -+ partition["device"], -+ root_mount_point + "/home", -+ fstype, -+ ",".join( -+ ["subvol=@home", partition.get("options", "")]), -+ ) -+ if not has_rootuser_mount_point: -+ libcalamares.utils.mount( -+ partition["device"], -+ root_mount_point + "/root", -+ fstype, -+ ",".join( -+ ["subvol=@root", partition.get("options", "")]), -+ ) -+ if not has_srv_mount_point: -+ libcalamares.utils.mount( -+ partition["device"], -+ root_mount_point + "/srv", -+ fstype, -+ ",".join( -+ ["subvol=@srv", partition.get("options", "")]), -+ ) -+ if not has_cache_mount_point: -+ libcalamares.utils.mount( -+ partition["device"], -+ root_mount_point + "/var/cache", -+ fstype, -+ ",".join( -+ ["subvol=@cache", partition.get("options", "")]), -+ ) -+ if not has_log_mount_point: -+ libcalamares.utils.mount( -+ partition["device"], -+ root_mount_point + "/var/log", -+ fstype, -+ ",".join( -+ ["subvol=@log", partition.get("options", "")]), -+ ) -+ if not has_tmp_mount_point: -+ libcalamares.utils.mount( -+ partition["device"], -+ root_mount_point + "/var/tmp", -+ fstype, -+ ",".join( -+ ["subvol=@tmp", partition.get("options", "")]), -+ ) - -- if libcalamares.utils.mount(device, -- mount_point, -- fstype, -- ",".join(["subvol=@", partition.get("options", "")])) != 0: -- libcalamares.utils.warning("Cannot mount {}".format(device)) - - if not has_home_mount_point: - if libcalamares.utils.mount(device, --- -2.30.0 - diff --git a/croco-fswhitelist.patch b/croco-fswhitelist.patch deleted file mode 100644 index df2d921ade6d..000000000000 --- a/croco-fswhitelist.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 12c9ef699641c4ead59e92b4a521acf7e835ab59 Mon Sep 17 00:00:00 2001 -From: TotallyNotElite <totallynotelite@gmail.com> -Date: Mon, 18 Jan 2021 23:34:09 +0100 -Subject: [PATCH] Croco hardcoded FS whitelist - ---- - src/libcalamares/partition/FileSystem.cpp | 9 +++++++++ - src/libcalamares/partition/FileSystem.h | 2 ++ - src/modules/partition/gui/CreatePartitionDialog.cpp | 5 +++-- - .../partition/gui/EditExistingPartitionDialog.cpp | 5 +++-- - 4 files changed, 17 insertions(+), 4 deletions(-) - -diff --git a/src/libcalamares/partition/FileSystem.cpp b/src/libcalamares/partition/FileSystem.cpp -index ad4df31ed..526b6a8ea 100644 ---- a/src/libcalamares/partition/FileSystem.cpp -+++ b/src/libcalamares/partition/FileSystem.cpp -@@ -13,12 +13,21 @@ - #include "FileSystem.h" - - #include <QObject> -+#include <QSet> - - namespace CalamaresUtils - { - namespace Partition - { - -+QSet< FileSystem::Type > croco_allowed_fs( { FileSystem::Btrfs, -+ FileSystem::Fat32, -+ FileSystem::LinuxSwap, -+ FileSystem::Luks, -+ FileSystem::Luks2, -+ FileSystem::Unformatted, -+ FileSystem::Lvm2_PV } ); -+ - QString - prettyNameForFileSystemType( FileSystem::Type t ) - { -diff --git a/src/libcalamares/partition/FileSystem.h b/src/libcalamares/partition/FileSystem.h -index 6696f0df9..e72db07ae 100644 ---- a/src/libcalamares/partition/FileSystem.h -+++ b/src/libcalamares/partition/FileSystem.h -@@ -26,6 +26,8 @@ namespace CalamaresUtils - { - namespace Partition - { -+extern QSet< FileSystem::Type > croco_allowed_fs; -+ - QString DLLEXPORT prettyNameForFileSystemType( FileSystem::Type t ); - - /** @brief Returns a machine-readable identifier for the filesystem type -diff --git a/src/modules/partition/gui/CreatePartitionDialog.cpp b/src/modules/partition/gui/CreatePartitionDialog.cpp -index 3b51010b8..054bd7847 100644 ---- a/src/modules/partition/gui/CreatePartitionDialog.cpp -+++ b/src/modules/partition/gui/CreatePartitionDialog.cpp -@@ -106,9 +106,10 @@ CreatePartitionDialog::CreatePartitionDialog( Device* device, - int defaultFsIndex = -1; - int fsCounter = 0; - QStringList fsNames; -- for ( auto fs : FileSystemFactory::map() ) -+ for ( auto allowed_fs : CalamaresUtils::Partition::croco_allowed_fs ) - { -- if ( fs->supportCreate() != FileSystem::cmdSupportNone && fs->type() != FileSystem::Extended ) -+ auto fs = FileSystemFactory::map()[ allowed_fs ]; -+ if ( fs->supportCreate() != FileSystem::cmdSupportNone ) - { - fsNames << userVisibleFS( fs ); // This is put into the combobox - if ( fs->type() == defaultFSType ) -diff --git a/src/modules/partition/gui/EditExistingPartitionDialog.cpp b/src/modules/partition/gui/EditExistingPartitionDialog.cpp -index 3de6e0c4c..577607549 100644 ---- a/src/modules/partition/gui/EditExistingPartitionDialog.cpp -+++ b/src/modules/partition/gui/EditExistingPartitionDialog.cpp -@@ -83,9 +83,10 @@ EditExistingPartitionDialog::EditExistingPartitionDialog( Device* device, - - // File system - QStringList fsNames; -- for ( auto fs : FileSystemFactory::map() ) -+ for ( auto allowed_fs : CalamaresUtils::Partition::croco_allowed_fs ) - { -- if ( fs->supportCreate() != FileSystem::cmdSupportNone && fs->type() != FileSystem::Extended ) -+ auto fs = FileSystemFactory::map()[ allowed_fs ]; -+ if ( fs->supportCreate() != FileSystem::cmdSupportNone ) - { - fsNames << userVisibleFS( fs ); // For the combo box - } --- -2.30.0 - |