Preliminary addition of custom calamares installer configuration files for openmamba

This commit is contained in:
Silvan Calarco 2015-02-07 17:47:33 +01:00
parent f34c77408a
commit 3a1a5935eb
22 changed files with 371 additions and 0 deletions

View File

@ -87,6 +87,7 @@ install: install-dirs install-locales install-icons
$(INSTALL_PROGRAM) liveuser-sudoers $(DESTDIR)$(sysconfdir)/sudoers.d/liveuser
$(INSTALL_DATA) installer/openmamba-installer.desktop $(DESTDIR)$(SYSTEM_MENU_DIR)
cp -a liveuser/.kde4 $(DESTDIR)/home/liveuser/
cp -a calamares $(DESTDIR)$(sysconfdir)/
clean:

View File

@ -0,0 +1,17 @@
---
componentName: openmamba
strings:
productName: openmamba GNU/Linux
shortProductName: openmamba
version: milestone3
shortVersion: 3.0
versionedName: openmamba GNU/Linux milestone3 3.0
shortVersionedName: openmamba 3.0
bootloaderEntryName: openmamba
images:
productLogo: "openmamba.png"
productIcon: "openmamba.png"
slideshow: "show.qml"

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

View File

@ -0,0 +1,63 @@
/* === This file is part of Calamares - <http://github.com/calamares> ===
*
* Copyright 2015, Teo Mrnjavac <teo@kde.org>
*
* Calamares is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Calamares is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*/
import QtQuick 2.0;
import calamares.slideshow 1.0;
Presentation
{
id: presentation
Timer {
interval: 5000
running: false
repeat: true
onTriggered: presentation.goToNextSlide()
}
Slide {
Image {
id: background
source: "squid.png"
width: 200; height: 200
fillMode: Image.PreserveAspectFit
anchors.centerIn: parent
}
Text {
anchors.horizontalCenter: background.horizontalCenter
anchors.top: background.bottom
text: "This is a customizable QML slideshow.<br/>"+
"Distributions should provide their own slideshow and list it in <br/>"+
"their custom branding.desc file.<br/>"+
"To create a Calamares presentation in QML, import calamares.slideshow,<br/>"+
"define a Presentation element with as many Slide elements as needed."
wrapMode: Text.WordWrap
width: root.width
horizontalAlignment: Text.Center
}
}
Slide {
centeredText: "This is a second Slide element."
}
Slide {
centeredText: "This is a third Slide element."
}
}

View File

@ -0,0 +1,17 @@
---
# Gummiboot configuration files settings, set kernel and initramfs file names
# and amount of time before default selection boots
# Optionally set the menu entry name to use in Gummiboot. If not specified here,
# this setting will be taken from branding.desc.
# bootloaderEntryName: KaOS-kf5
kernel: /vmlinuz-linux
img: /initramfs-linux.img
fallback: /initramfs-linux-fallback.img
timeout: 10
# GRUB 2 binary names and boot directory
# Some distributions (e.g. Fedora) use grub2-* (resp. /boot/grub2/) names.
grubInstall: "grub-install"
grubMkconfig: "grub-mkconfig"
grubCfg: "/boot/grub/grub.cfg"

View File

@ -0,0 +1,22 @@
---
#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:
- slim
- sddm
- lightdm
- gdm
- mdm
- lxdm
- kdm
#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

View File

@ -0,0 +1,18 @@
---
syntax: "YAML map of anything"
example:
whats_this: "module-specific configuration"
from_where: "dummypython.conf"
a_list:
- "item1"
- "item2"
- "item3"
- "item4"
a_list_of_maps:
- name: "an Item"
contents:
- "an element"
- "another element"
- name: "another item"
contents:
- "not much"

View File

@ -0,0 +1,4 @@
---
restartNowEnabled: true
restartNowChecked: false
restartNowCommand: "systemctl -i reboot"

View File

@ -0,0 +1,10 @@
---
mountOptions:
default: defaults,noatime
btrfs: defaults,noatime,space_cache,autodefrag
ssdExtraMountOptions:
ext4: discard
jfs: discard
xfs: discard
swap: discard
btrfs: discard,compress=lzo

View File

@ -0,0 +1,11 @@
---
# GRUB 2 binary names and boot directory
# Some distributions (e.g. Fedora) use grub2-* (resp. /boot/grub2/) names.
grubInstall: "grub-install"
grubMkconfig: "grub-mkconfig"
grubCfg: "/boot/grub/grub.cfg"
# Optionally set the --bootloader-id to use for EFI. If not set, this defaults
# to the bootloaderEntryName from branding.desc with problematic characters
# replaced. If an efiBootloaderId is specified here, it is taken to already be a
# valid directory name, so no such postprocessing is done in this case.
# efiBootloaderId: "dirname"

View File

@ -0,0 +1,13 @@
---
# If set to true, always creates /etc/default/grub from scratch even if the file
# already existed. If set to false, edits the existing file instead.
overwrite: false
# Default entries to write to /etc/default/grub if it does not exist yet or if
# we are overwriting it. Note that in addition, GRUB_CMDLINE_LINUX_DEFAULT and
# GRUB_DISTRIBUTOR will always be written, with automatically detected values.
defaults:
GRUB_TIMEOUT: 5
GRUB_DEFAULT: "saved"
GRUB_DISABLE_SUBMENU: true
GRUB_TERMINAL_OUTPUT: "console"
GRUB_DISABLE_RECOVERY: true

View File

@ -0,0 +1,2 @@
---
kernel: linux312

View File

@ -0,0 +1,8 @@
---
# The name of the file to write X11 keyboard settings to
# The default value is the name used by upstream systemd-localed.
# Relative paths are assumed to be relative to /etc/X11/xorg.conf.d
xOrgConfFileName: "/etc/X11/xorg.conf.d/00-keyboard.conf"
# The path to search for keymaps converted from X11 to kbd format
# Leave this empty if the setting does not make sense on your distribution.
convertedKeymapPath: "/lib/kbd/keymaps/xkb"

View File

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

View File

@ -0,0 +1,8 @@
---
# Whether to create /etc/machine-id for systemd.
systemd: true
# Whether to create /var/lib/dbus/machine-id for D-Bus.
dbus: true
# Whether /var/lib/dbus/machine-id should be a symlink to /etc/machine-id
# (ignored if dbus is false, or if there is no /etc/machine-id to point to).
symlink: true

View File

@ -0,0 +1,20 @@
---
extraMounts:
- device: proc
fs: proc
mountPoint: /proc
- device: sys
fs: sysfs
mountPoint: /sys
- device: /dev
mountPoint: /dev
options: bind
- device: tmpfs
fs: tmpfs
mountPoint: /run
extraMountsEfi:
- device: /sys/firmware/efi
mountPoint: /sys/firmware/efi
options: bind

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: packagekit
#
# 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:
# - install:
# - pkg1
# - pkg2
# - remove:
# - pkg3
# - pkg4
# - install:
# - pkg5
# - remove:
# - pkg2
# - pkg1
# install:
# - pkgs6
# - pkg7

View File

@ -0,0 +1,11 @@
---
requiredStorage: 5.5
requiredRam: 1.0
check:
- storage
- ram
- power
- internet
required:
# - storage
- ram

View File

@ -0,0 +1,13 @@
---
#systemd services and targets are enabled in this precise order
services:
- name: "NetworkManager" #name of the service file
mandatory: false #true=> if enabling fails the installer errors out and quits
#false=>if enabling fails print warning to console and continue
- name: "cups"
mandatory: false
targets:
- name: "graphical"
mandatory: true

View File

@ -0,0 +1,8 @@
---
unpack:
- source: "/path/to/filesystem.img"
sourcefs: "ext4"
destination: ""
- source: "/path/to/another/filesystem.sqfs"
sourcefs: "squashfs"
destination: ""

View File

@ -0,0 +1,11 @@
---
userGroup: users
defaultGroups:
- lp
- video
- network
- storage
- wheel
- audio
autologinGroup: autologin
sudoersGroup: wheel

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:
#- dummyprocess
#- dummypython
- partition
- mount
- unpackfs
- machineid
- fstab
- locale
- keyboard
- localecfg
- initcpiocfg
- initcpio
- users
#- displaymanager
- networkcfg
- hwclock
- services
#- dracut
#- initramfs
- grubcfg
- grub
#- bootloader
- 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:
- 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: openmamba