This commit is contained in:
AlmAck 2015-03-02 22:21:52 +01:00
parent 6d8819d1ac
commit 5f50decd7d
10 changed files with 4656 additions and 6 deletions

View File

@ -1,22 +1,55 @@
pkgname=calamares
pkgver=0.1.0.7
pkgver=1.0.1
pkgrel=1
pkgdesc='Distribution-independent installer framework'
arch=('x86_64')
url='https://github.com/calamares/calamares'
license=('LGPL')
depends=('qt5-base' 'kconfig' 'ki18n' 'kcoreaddons' 'solid' 'yaml-cpp'
'parted' 'libatasmart' 'udisks2')
depends=('qt5-svg' 'kconfig' 'ki18n' 'kcoreaddons' 'solid' 'yaml-cpp'
'parted' 'libatasmart' 'udisks2' 'polkit-qt5' 'boost-libs'
'rsync')
makedepends=('extra-cmake-modules' 'git' 'qt5-tools')
source=("git://github.com/calamares/calamares")
md5sums=('SKIP')
source=("git://github.com/rshipp/calamares"
#source=("calamares.tar.xz"
'displaymanagers.conf'
'locale.conf'
'prepare.conf'
'settings.conf'
'packages.conf'
'unpackfs.conf'
'launch-calamares.sh'
'installer.svg'
'calamares.desktop')
# 'GreetingPage.diff'
# 'CalamaresStyle.diff'
# 'UEFI.diff'
# 'JobQueue.diff'
# 'along_UEFI.diff')
md5sums=('SKIP'
'0364830e843823dff80b18509ea4042e'
'c05b2dda2e0a8a57cf25cc89913a1f4f'
'76cf16c8e4347d369330ed64ff28083b'
'97973937b364dde58aafbf937330316e'
'9bb8c11b3f414c2ff326cc4c9e30349b'
'f8e10a9fa0324f68650a646769339da9'
'2437e44479a54376ad9244d120369f6c'
'f005a6e10b8e0425e04207920b6231b7'
'31a21df45f1f6a9fb0aaf0d5418895f2')
prepare () {
cd ${srcdir}/${pkgname}
git submodule init
git submodule update
sed -i 's|Ext4|Xfs|' ${srcdir}/${pkgname}/src/modules/partition/tests/PartitionJobTests.cpp
sed -i 's|Ext4|Xfs|' ${srcdir}/${pkgname}/src/modules/partition/gui/EraseDiskPage.cpp
sed -i 's|Ext4|Xfs|' ${srcdir}/${pkgname}/src/modules/partition/gui/ReplacePage.cpp
#patch -p1 -i ${srcdir}/GreetingPage.diff
#patch -p1 -i ${srcdir}/CalamaresStyle.diff
#patch -p1 -i ${srcdir}/UEFI.diff
#patch -p1 -i ${srcdir}/JobQueue.diff
#patch -p1 -i ${srcdir}/along_UEFI.diff
}
build() {
@ -36,6 +69,17 @@ package() {
cd build
make DESTDIR="${pkgdir}" install
sed 's|/path/to/squashfs/image.sqfs|/bootmnt/chakra/x86_64/root-image.sqfs|' -i "${pkgdir}/usr/share/calamares/modules/unsquashfs.conf"
rm -rf "${pkgdir}/usr/share/calamares/settings.conf"
install -D -m644 "${srcdir}/settings.conf" "${pkgdir}/usr/share/calamares/settings.conf"
install -D -m644 "${srcdir}/displaymanagers.conf" "${pkgdir}/etc/calamares/modules/displaymanagers.conf"
install -D -m644 "${srcdir}/locale.conf" "${pkgdir}/etc/calamares/modules/locale.conf"
install -D -m644 "${srcdir}/prepare.conf" "${pkgdir}/etc/calamares/modules/prepare.conf"
install -D -m644 "${srcdir}/unpackfs.conf" "${pkgdir}/etc/calamares/modules/unpackfs.conf"
install -D -m644 "${srcdir}/packages.conf" "${pkgdir}/etc/calamares/modules/packages.conf"
sed 's|linux312|linux|' -i "${pkgdir}/usr/share/calamares/modules/initcpio.conf"
install -Dm755 "${srcdir}/launch-calamares.sh" "${pkgdir}/usr/bin/launch-calamares.sh"
install -Dm644 "$srcdir/$pkgname.desktop" "$pkgdir/usr/share/applications/$pkgname.desktop"
install -Dm644 "${srcdir}/installer.svg" "${pkgdir}/usr/share/pixmaps/installer.svg"
}

View File

@ -0,0 +1,10 @@
[Desktop Entry]
Name=Calamares Installer
GenericName=System Installer
Comment=Qt5 based system installer
Exec=sudo /usr/bin/calamares -d
Icon=installer
StartupNotify=false
Terminal=False
Type=Application
Categories=Qt;System;

View File

@ -0,0 +1,16 @@
---
#The DM module attempts to set up all the DMs found in this list, in that precise order.
#It also sets up autologin, if the feature is enabled in globalstorage.
#The displaymanagers list can also be set in globalstorage, and in that case it overrides anything set up here.
displaymanagers:
- sddm
#Enable the following settings to force a desktop environment in your displaymanager configuration file:
#defaultDesktopEnvironment:
# executable: "startkde"
# desktopFile: "plasma"
#If true, try to ensure that the user, group, /var directory etc. for the
#display manager are set up correctly. This is normally done by the distribution
#packages, and best left to them. Therefore, it is disabled by default.
basicSetup: false

4448
calamares/installer.svg Normal file

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 225 KiB

View File

@ -0,0 +1,2 @@
#!/bin/sh
sudo /usr/bin/calamares -d

3
calamares/locale.conf Normal file
View File

@ -0,0 +1,3 @@
---
region: "Europe"
zone: "London"

41
calamares/packages.conf Normal file
View File

@ -0,0 +1,41 @@
---
#
# Which package manager to use, options are:
# - packagekit - PackageKit CLI tool
# - zypp - Zypp RPM frontend
# - yum - Yum RPM frontend
# - dnf - DNF, the new RPM frontend
# - urpmi - Mandriva package manager
# - apt - APT frontend for DEB and RPM
# - pacman - Pacman
#
backend: pacman
#
# List of maps with package operations such as install or remove.
# Distro developers can provide a list of packages to remove
# from the installed system (for instance packages meant only
# for the live system).
#
# A job implementing a distro specific logic to determine other
# packages that need to be installed or removed can run before
# this one. Distro developers may want to install locale packages
# or remove drivers not needed on the installed system.
# This job will populate a list of dictionaries in the global
# storage called "packageOperations" and it is processed
# after the static list in the job configuration.
#
operations:
- local_install:
- /opt/chakra/pkgs/kapudan-2015.03-1-x86_64.pkg.tar.xz
- /opt/chakra/pkgs/octopi-notifier-qt5-0.6.0-1-x86_64.pkg.tar.xz
# - remove:
# - pkg3
# - pkg4
# - install:
# - pkg5
# - remove:
# - pkg2
# - pkg1
# install:
# - pkgs6
# - pkg7

11
calamares/prepare.conf Normal file
View File

@ -0,0 +1,11 @@
---
requiredStorage: 8.0
requiredRam: 2.0
check:
- storage
- ram
- power
- internet
required:
- storage
- ram

70
calamares/settings.conf Normal file
View File

@ -0,0 +1,70 @@
# Configuration file for Calamares
# Syntax is YAML 1.2
---
# Modules can be job modules (with different interfaces) and QtWidgets view modules.
# They could all be placed in a number of different paths.
# "local" is LIBDIR/calamares/modules with settings in SHARE/calamares/modules
modules-search: [ local, /path/to/dir/with/more/modules ]
# We define the module names in the order they should show up (QtWidget view modules,
# with one or more pages) OR be executed if enqueued (all other modules).
# Pages can also enqueue jobs for delayed execution in the order specified for the
# install phase.
# Phase 1 - prepare.
# View modules are shown as UI pages, jobs from job modules are executed immediately in
# the background.
# Jobs should be executed sparingly (if at all) in this phase.
prepare:
- greeting
- locale
- keyboard
- prepare
- partition
- users
- summary
# Phase 2 - install.
# View modules are not shown. Only the view modules shown in the previous phase are
# allowed, their names should be added here as placeholders to specify the order in
# which view module jobs should be enqueued. Job modules are also allowed.
install:
- partition
- mount
- unpackfs
- machineid
- fstab
- locale
- keyboard
- localecfg
- initcpiocfg
- initcpio
- users
- networkcfg
- hwclock
- services
#- kdm_sddm
#- usercfg
#- userkf5
#- driver_cleanup
#- nonfree_drivers
- packages
- grubcfg
- bootloader
#- gummi_entries
- umount
# Phase 3 - postinstall.
# View modules are shown as UI pages, jobs from job modules are executed immediately in
# the background.
# Jobs should be executed sparingly (if at all) in this phase.
postinstall: #TODO: actually use this
- finished
# A branding component is a directory, either in SHARE/calamares/branding or in
# /etc/calamares/branding (the latter takes precedence). The directory must contain a
# YAML file branding.desc which may reference additional resources (such as images) as
# paths relative to the current directory.
# Only the name of the branding component (directory) should be specified here, Calamares
# then takes care of finding it and loading the contents.
branding: chakra

5
calamares/unpackfs.conf Normal file
View File

@ -0,0 +1,5 @@
---
unpack:
- source: "/bootmnt/chakra/x86_64/root-image.sqfs"
sourcefs: "squashfs"
destination: ""