add files and configs for calamares installer and new peppermint package repo fir void linux
This commit is contained in:
parent
3367aee3ce
commit
4e1a26843b
|
@ -74,7 +74,7 @@ build_variant() {
|
||||||
IMG=pep-live-${ARCH}-${DATE}-${variant}.iso
|
IMG=pep-live-${ARCH}-${DATE}-${variant}.iso
|
||||||
GRUB_PKGS="grub-i386-efi grub-x86_64-efi"
|
GRUB_PKGS="grub-i386-efi grub-x86_64-efi"
|
||||||
A11Y_PKGS="espeakup void-live-audio brltty"
|
A11Y_PKGS="espeakup void-live-audio brltty"
|
||||||
PKGS="dialog octoxbps cryptsetup lvm2 mdadm void-docs-browse xtools-minimal xmirror chrony $A11Y_PKGS $GRUB_PKGS"
|
PKGS="dialog octoxbps cryptsetup lvm2 mdadm void-docs-browse xtools-minimal xmirror chrony void-repo-nonfree void-repo-multilib void-repo-multilib-nonfree $A11Y_PKGS $GRUB_PKGS"
|
||||||
XORG_PKGS="xorg xorg-input-drivers xorg-video-drivers setxkbmap xauth font-misc-misc terminus-font dejavu-fonts-ttf orca"
|
XORG_PKGS="xorg xorg-input-drivers xorg-video-drivers setxkbmap xauth font-misc-misc terminus-font dejavu-fonts-ttf orca"
|
||||||
SERVICES="sshd chronyd"
|
SERVICES="sshd chronyd"
|
||||||
|
|
||||||
|
@ -94,7 +94,7 @@ build_variant() {
|
||||||
mousepad mugshot menulibre thunar-archive-plugin thunar-volman xfce4-panel-profiles xfce4 xfce4-plugins xfce4-screenshooter xarchiver alsa-utils bluez bluez-cups btop console-setup cups
|
mousepad mugshot menulibre thunar-archive-plugin thunar-volman xfce4-panel-profiles xfce4 xfce4-plugins xfce4-screenshooter xarchiver alsa-utils bluez bluez-cups btop console-setup cups
|
||||||
curl dconf-editor dbus-x11 cantarell-fonts liberation-fonts-ttf git wget gnome-disk-utility gparted gvfs samba samba-cups cups-pdf avahi inxi network-manager-applet ntp python3-pipx
|
curl dconf-editor dbus-x11 cantarell-fonts liberation-fonts-ttf git wget gnome-disk-utility gparted gvfs samba samba-cups cups-pdf avahi inxi network-manager-applet ntp python3-pipx
|
||||||
python3-tkinter python3-requests python3-certifi python3-Pillow system-config-printer simple-scan smartmontools smbclient spice-vdagent sqlite openssh nano vim-x11 vim linux-firmware
|
python3-tkinter python3-requests python3-certifi python3-Pillow system-config-printer simple-scan smartmontools smbclient spice-vdagent sqlite openssh nano vim-x11 vim linux-firmware
|
||||||
broadcom-bt-firmware alsa-firmware linux-firmware-qualcomm qemu-firmware sof-firmware blueman xf86-video-intel"
|
broadcom-bt-firmware alsa-firmware linux-firmware-qualcomm qemu-firmware sof-firmware blueman xf86-video-intel zip p7zip calamares"
|
||||||
SERVICES="$SERVICES dbus lightdm NetworkManager polkitd bluetoothd cupsd avahi-daemon ntpd smbd nmbd sshd spice-vdagentd"
|
SERVICES="$SERVICES dbus lightdm NetworkManager polkitd bluetoothd cupsd avahi-daemon ntpd smbd nmbd sshd spice-vdagentd"
|
||||||
LIGHTDM_SESSION=xfce
|
LIGHTDM_SESSION=xfce
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -0,0 +1,34 @@
|
||||||
|
---
|
||||||
|
componentName: peppermint
|
||||||
|
welcomeStyleCalamares: false
|
||||||
|
welcomeExpandingLogo: true
|
||||||
|
windowExpanding: normal
|
||||||
|
windowSize: 700,450
|
||||||
|
windowPlacement: center
|
||||||
|
|
||||||
|
strings:
|
||||||
|
productName: Peppermint
|
||||||
|
shortProductName: Peppermint
|
||||||
|
version: 00
|
||||||
|
shortVersion: 00
|
||||||
|
versionedName: Peppermint
|
||||||
|
shortVersionedName: Peppermint
|
||||||
|
bootloaderEntryName: Peppermint
|
||||||
|
productUrl: https://peppermintos.com
|
||||||
|
supportUrl: https://sourceforge.net/p/peppermintos/pepos/
|
||||||
|
releaseNotesUrl: https://peppermintos.com
|
||||||
|
|
||||||
|
images:
|
||||||
|
productLogo: "pep-logo.png"
|
||||||
|
productIcon: "pep-logo.png"
|
||||||
|
productWelcome: "welcome.png"
|
||||||
|
|
||||||
|
slideshow: "show.qml"
|
||||||
|
|
||||||
|
style:
|
||||||
|
sidebarBackground: "#C0C0C0"
|
||||||
|
sidebarText: "#000000"
|
||||||
|
sidebarTextSelect: "#ffffff"
|
||||||
|
sidebarTextHighlight: "#f62817"
|
||||||
|
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 11 KiB |
Binary file not shown.
After Width: | Height: | Size: 47 KiB |
|
@ -0,0 +1,40 @@
|
||||||
|
/* === This file is part of Calamares - <http://github.com/calamares> ===
|
||||||
|
*
|
||||||
|
* Copyright 2015, Teo Mrnjavac <teo@kde.org>
|
||||||
|
* Copyright 2018-2019, Jonathan Carter <jcc@debian.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, 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: 20000
|
||||||
|
running: true
|
||||||
|
repeat: true
|
||||||
|
onTriggered: presentation.goToNextSlide()
|
||||||
|
}
|
||||||
|
Slide {
|
||||||
|
Image {
|
||||||
|
id: background5
|
||||||
|
source: "s5.png"
|
||||||
|
width: 2000; height: 2000
|
||||||
|
fillMode: Image.PreserveAspectFit
|
||||||
|
anchors.centerIn: parent
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,163 @@
|
||||||
|
/*########Current Calamares Styles##########*/
|
||||||
|
/* These "Q's" are master styles for overall colours */
|
||||||
|
#mainApp {background-color: #C0C0C0;
|
||||||
|
font-family: Cantarell;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #000000
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set the entire Font and Background color */
|
||||||
|
QWidget { color: #000000 ;
|
||||||
|
background-color: #C0C0C0;
|
||||||
|
font-family: Cantarell;
|
||||||
|
font: 14px; }
|
||||||
|
|
||||||
|
#globalStorageTab { background-color: #C0C0C0 }
|
||||||
|
|
||||||
|
/* Set Drop Down Font and Background color */
|
||||||
|
QComboBox { font: 14px ;
|
||||||
|
color: #000000 ;
|
||||||
|
background-color: #ffffff ;
|
||||||
|
padding: 2px ;
|
||||||
|
border-radius: 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
#languageWidget { font: 14px ;
|
||||||
|
color: #111111 ;
|
||||||
|
background-color: #ffffff ;
|
||||||
|
text-align: center ;
|
||||||
|
border-radius: 6px
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set the inline Text box edit Font and Background color */
|
||||||
|
QLineEdit { font: 14px;
|
||||||
|
color: #111111;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border-color: #000000
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set List box Font and Background color */
|
||||||
|
QListView { font: 14px;
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffffff;
|
||||||
|
alternate-background-color: #C0C0C0;
|
||||||
|
padding: 2px;
|
||||||
|
border-radius: 4px
|
||||||
|
}
|
||||||
|
|
||||||
|
#layoutSelector {}
|
||||||
|
|
||||||
|
/* Set the TreeView Font and Background color */
|
||||||
|
QTreeView { color: #000000;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border-radius: 14px
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set buttons Font and Background color */
|
||||||
|
QPushButton { font: 14px;
|
||||||
|
color: #000000;
|
||||||
|
background-color: #C0C0C0;
|
||||||
|
border-color: #000000;
|
||||||
|
border-width: 10px;}
|
||||||
|
|
||||||
|
#view-button-back { font: 14px;
|
||||||
|
background-color: #C0C0C0
|
||||||
|
}
|
||||||
|
#view-button-back:hover { font: 14px;
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border-color: #000000
|
||||||
|
}
|
||||||
|
#view-button-next { font: 14px;
|
||||||
|
background-color: #C0C0C0;
|
||||||
|
border-color: #000000
|
||||||
|
}
|
||||||
|
#view-button-next:hover { font: 14px;
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border-color: #000000
|
||||||
|
}
|
||||||
|
#view-button-cancel { font: 14px;
|
||||||
|
background-color: #C0C0C0;
|
||||||
|
border-color: #000000
|
||||||
|
}
|
||||||
|
#view-button-cancel:hover { font: 14px;
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border-color: #000000;
|
||||||
|
}
|
||||||
|
#view-button-install { font: 14px;
|
||||||
|
color: #C0C0C0;
|
||||||
|
border-color: #000000
|
||||||
|
}
|
||||||
|
#view-button-done { font: 14px;
|
||||||
|
color: #000000;
|
||||||
|
border-color: #000000
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set the color in the keyboard selection */
|
||||||
|
#layoutSelector { selection-background-color: #F62817 }
|
||||||
|
#variantSelector { selection-background-color: #F62817 }
|
||||||
|
|
||||||
|
/* Set the CheckBox size and Background color */
|
||||||
|
QCheckBox { color: #000000;
|
||||||
|
background-color: #C0C0C0;
|
||||||
|
border-width: 2px;
|
||||||
|
border-color: #000000
|
||||||
|
}
|
||||||
|
|
||||||
|
m_encryptCheckBox { font: 14px;
|
||||||
|
color: #F62817;
|
||||||
|
background-color: #C0C0C0;
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 6px
|
||||||
|
}
|
||||||
|
|
||||||
|
checkBoxDoAutoLogin { font: 14px;
|
||||||
|
color: #000000;
|
||||||
|
background-color: #C0C0C0;
|
||||||
|
padding: 4px
|
||||||
|
}
|
||||||
|
|
||||||
|
restartCheckBox { font: 14px;
|
||||||
|
color: #000000;
|
||||||
|
background-color: #C0C0C0;
|
||||||
|
border-color: #000000;
|
||||||
|
border-radius: 8px;
|
||||||
|
height: 16px;
|
||||||
|
width: 100px;
|
||||||
|
padding: 4px
|
||||||
|
}
|
||||||
|
|
||||||
|
#QCheckBox#restartCheckBox::indicator:checked { image: url(/usr/share/pixmaps/ckm.png) }
|
||||||
|
|
||||||
|
/* Set the color when selected */
|
||||||
|
QRadioButton { color: #000000;
|
||||||
|
background-color: #C0C0C0;
|
||||||
|
padding: 4px;
|
||||||
|
border-radius: 4px
|
||||||
|
}
|
||||||
|
QComboBoxPrivateContainer { background-color: #ffffff }
|
||||||
|
QComboBoxListView { background-color: #ffffff }
|
||||||
|
qt_scrollarea_hcontainer { background-color: #ffffff }
|
||||||
|
qt_scrollarea_vcontainer { background-color: #ffffff }
|
||||||
|
QRadioButton::indicator { width: 18px ; height: 18px }
|
||||||
|
QRadioButton::indicator::checked { image: url(/usr/share/pixmaps/peppermint.png) }
|
||||||
|
QRadioButton::indicator::checked:hover { image: url(/usr/share/pixmaps/peppermint-fm-20.png) }
|
||||||
|
QRadioButton::indicator::unchecked:hover { image: url(/usr/share/pixmaps/peppermint-inst.png) }
|
||||||
|
|
||||||
|
/* Set the tip Font and Background color */
|
||||||
|
QToolTip { font: 14px;
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffffff;
|
||||||
|
padding: 4px;
|
||||||
|
border-radius: 4px
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set the Progress Bar alignment and load color */
|
||||||
|
QProgressBar { text-align: center }
|
||||||
|
QProgressBar::chunk { background-color: #F62817 }
|
||||||
|
|
||||||
|
#debugButton {font: }
|
||||||
|
#sidebarMenuApp{ background-color: #C0C0C0 }
|
||||||
|
#tabWidget { background-color: #C0C0C0 }
|
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
efiBootLoader: "grub"
|
||||||
|
timeout: "10"
|
||||||
|
grubInstall: "grub-install"
|
||||||
|
grubMkconfig: "grub-mkconfig"
|
||||||
|
grubCfg: "/boot/grub/grub.cfg"
|
||||||
|
efiBootloaderId: "peppermint"
|
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
displaymanagers:
|
||||||
|
- lightdm
|
||||||
|
|
||||||
|
basicSetup: false
|
|
@ -0,0 +1,4 @@
|
||||||
|
---
|
||||||
|
restartNowEnabled: true
|
||||||
|
restartNowChecked: false
|
||||||
|
restartNowCommand: "loginctl reboot"
|
|
@ -0,0 +1,2 @@
|
||||||
|
---
|
||||||
|
kernel: all
|
|
@ -0,0 +1,10 @@
|
||||||
|
---
|
||||||
|
# region: "America"
|
||||||
|
# zone: "New_York"
|
||||||
|
|
||||||
|
localeGenPath: /etc/default/libc-locales
|
||||||
|
|
||||||
|
geoip:
|
||||||
|
style: "json"
|
||||||
|
url: "https://peppermintos.org"
|
||||||
|
selector: ""
|
|
@ -0,0 +1,4 @@
|
||||||
|
---
|
||||||
|
systemd: false
|
||||||
|
dbus: true
|
||||||
|
symlink: true
|
|
@ -0,0 +1,17 @@
|
||||||
|
efiSystemPartition: "/boot/efi"
|
||||||
|
efiSystemPartitionSize: 300M
|
||||||
|
efiSystemPartitionName: EFI
|
||||||
|
userSwapChoices:
|
||||||
|
- none # Create no swap, use no swap
|
||||||
|
- small # Up to 4GB
|
||||||
|
- suspend # At least main memory size
|
||||||
|
- file # To swap file instead of partition
|
||||||
|
swapPartitionName: SWAP
|
||||||
|
drawNestedPartitions: false
|
||||||
|
alwaysShowPartitionLabels: true
|
||||||
|
allowManualPartitioning: true
|
||||||
|
initialPartitioningChoice: erase
|
||||||
|
initialSwapChoice: none
|
||||||
|
defaultFileSystemType: "ext4"
|
||||||
|
availableFileSystemTypes: ["ext4","btrfs", "f2fs","xfs"]
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
---
|
||||||
|
svDir: /etc/sv
|
||||||
|
runsvDir: /etc/runit/runsvdir
|
||||||
|
services:
|
||||||
|
- acpid
|
||||||
|
- dbus
|
||||||
|
- bluetoothd
|
||||||
|
- connmand
|
||||||
|
- lightdm
|
||||||
|
- polkitd
|
||||||
|
- cupsd
|
||||||
|
- cups-browsed
|
||||||
|
- chronyd
|
||||||
|
- touchegg
|
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
unpack:
|
||||||
|
- source: "/run/rootfsbase/"
|
||||||
|
sourcefs: 'file'
|
||||||
|
destination: ""
|
||||||
|
|
|
@ -0,0 +1,47 @@
|
||||||
|
---
|
||||||
|
defaultGroups:
|
||||||
|
- name: users
|
||||||
|
must_exist: true
|
||||||
|
system: true
|
||||||
|
- lp
|
||||||
|
- video
|
||||||
|
- network
|
||||||
|
- storage
|
||||||
|
- name: wheel
|
||||||
|
must_exist: false
|
||||||
|
system: true
|
||||||
|
- audio
|
||||||
|
- power
|
||||||
|
- log
|
||||||
|
- optical
|
||||||
|
- network
|
||||||
|
- scanner
|
||||||
|
- kvm
|
||||||
|
- xbuilder
|
||||||
|
|
||||||
|
autologinGroup: autologin
|
||||||
|
|
||||||
|
doAutologin: false
|
||||||
|
|
||||||
|
sudoersGroup: wheel
|
||||||
|
|
||||||
|
setRootPassword: true
|
||||||
|
|
||||||
|
doReusePassword: false
|
||||||
|
|
||||||
|
passwordRequirements:
|
||||||
|
nonempty: true
|
||||||
|
minLength: -1 # Password at least this many characters
|
||||||
|
maxLength: -1 # Password at most this many characters
|
||||||
|
libpwquality:
|
||||||
|
- minlen=0
|
||||||
|
- minclass=0
|
||||||
|
|
||||||
|
allowWeakPasswords: true
|
||||||
|
allowWeakPasswordsDefault: true
|
||||||
|
|
||||||
|
userShell: /bin/bash
|
||||||
|
|
||||||
|
setHostname: EtcFile
|
||||||
|
|
||||||
|
writeHostsFile: true
|
|
@ -0,0 +1,17 @@
|
||||||
|
---
|
||||||
|
showSupportUrl: false
|
||||||
|
showKnownIssuesUrl: false
|
||||||
|
showReleaseNotesUrl: false
|
||||||
|
|
||||||
|
requirements:
|
||||||
|
requiredStorage: 10
|
||||||
|
requiredRam: 1.0
|
||||||
|
check:
|
||||||
|
- storage
|
||||||
|
- ram
|
||||||
|
- power
|
||||||
|
- root
|
||||||
|
required:
|
||||||
|
- storage
|
||||||
|
- ram
|
||||||
|
- root
|
|
@ -0,0 +1,44 @@
|
||||||
|
---
|
||||||
|
modules-search: [ local ]
|
||||||
|
|
||||||
|
sequence:
|
||||||
|
- show:
|
||||||
|
- welcome
|
||||||
|
- locale
|
||||||
|
- keyboard
|
||||||
|
- partition
|
||||||
|
- users
|
||||||
|
- summary
|
||||||
|
- exec:
|
||||||
|
- partition
|
||||||
|
- mount
|
||||||
|
- unpackfs
|
||||||
|
- machineid
|
||||||
|
- fstab
|
||||||
|
- locale
|
||||||
|
- keyboard
|
||||||
|
- localecfg
|
||||||
|
- luksopenswaphookcfg
|
||||||
|
- luksbootkeyfile
|
||||||
|
- dracut
|
||||||
|
- users
|
||||||
|
- displaymanager
|
||||||
|
- networkcfg
|
||||||
|
- hwclock
|
||||||
|
# - services-runit
|
||||||
|
- grubcfg
|
||||||
|
- bootloader
|
||||||
|
- postcfg
|
||||||
|
- umount
|
||||||
|
- show:
|
||||||
|
- finished
|
||||||
|
|
||||||
|
branding: peppermint
|
||||||
|
|
||||||
|
prompt-install: false
|
||||||
|
|
||||||
|
dont-chroot: false
|
||||||
|
|
||||||
|
disable-cancel: false
|
||||||
|
|
||||||
|
disable-cancel-during-exec: false
|
|
@ -0,0 +1,167 @@
|
||||||
|
#!/usr/bin/python3
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
#
|
||||||
|
# === This file is part of Calamares - <http://github.com/calamares> ===
|
||||||
|
#
|
||||||
|
# Copyright 2014 - 2019, Philip Müller <philm@manjaro.org>
|
||||||
|
# Copyright 2016, Artoo <artoo@manjaro.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 libcalamares
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
from shutil import copy2
|
||||||
|
from distutils.dir_util import copy_tree
|
||||||
|
from os.path import join, exists
|
||||||
|
from libcalamares.utils import target_env_call
|
||||||
|
from libcalamares.utils import target_env_process_output
|
||||||
|
from libcalamares.utils import check_target_env_output
|
||||||
|
|
||||||
|
def pretty_name():
|
||||||
|
return ("Misc post-install configurations")
|
||||||
|
|
||||||
|
status = ("Misc post-install configurations")
|
||||||
|
|
||||||
|
def pretty_status_message():
|
||||||
|
return status
|
||||||
|
|
||||||
|
class ConfigController:
|
||||||
|
def __init__(self):
|
||||||
|
self.__root = libcalamares.globalstorage.value("rootMountPoint")
|
||||||
|
|
||||||
|
@property
|
||||||
|
def root(self):
|
||||||
|
return self.__root
|
||||||
|
|
||||||
|
def terminate(self, proc):
|
||||||
|
target_env_call(['killall', '-9', proc])
|
||||||
|
|
||||||
|
def copy_file(self, file):
|
||||||
|
if exists("/" + file):
|
||||||
|
copy2("/" + file, join(self.root, file))
|
||||||
|
|
||||||
|
def copy_folder(self, source, target):
|
||||||
|
if exists("/" + source):
|
||||||
|
copy_tree("/" + source, join(self.root, target))
|
||||||
|
|
||||||
|
def remove_pkg(self, pkg):
|
||||||
|
libcalamares.utils.target_env_process_output(['xbps-remove', '-Ry', pkg])
|
||||||
|
|
||||||
|
def umount(self, mp):
|
||||||
|
subprocess.call(["umount", "-l", join(self.root, mp)])
|
||||||
|
|
||||||
|
def mount(self, mp):
|
||||||
|
subprocess.call(["mount", "-B", "/" + mp, join(self.root, mp)])
|
||||||
|
|
||||||
|
def rmdir(self, dir):
|
||||||
|
subprocess.call(["rm", "-Rf", join(self.root, dir)])
|
||||||
|
|
||||||
|
def mkdir(self, dir):
|
||||||
|
subprocess.call(["mkdir", "-p", join(self.root, dir)])
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
status = ("Removing CLI installer")
|
||||||
|
if exists(join(self.root, "usr/sbin/void-installer")):
|
||||||
|
libcalamares.utils.target_env_process_output(["rm", "-fv", "usr/sbin/void-installer"])
|
||||||
|
|
||||||
|
if exists(join(self.root, "usr/sbin/pep-installer")):
|
||||||
|
libcalamares.utils.target_env_process_output(["rm", "-fv", "usr/sbin/pep-installer"])
|
||||||
|
|
||||||
|
status = ("Initializing package manager databases")
|
||||||
|
if libcalamares.globalstorage.value("hasInternet"):
|
||||||
|
libcalamares.utils.target_env_process_output(["xbps-install", "-Syy"])
|
||||||
|
|
||||||
|
# Remove calamares
|
||||||
|
status = ("Removing Calamares from target")
|
||||||
|
self.remove_pkg("calamares")
|
||||||
|
if exists(join(self.root, "usr/share/applications/calamares.desktop")):
|
||||||
|
target_env_call(["rm", "-fv", "usr/share/applications/calamares.desktop"])
|
||||||
|
|
||||||
|
# Remove Breeze if Plasma is not installed
|
||||||
|
if exists(join(self.root, "usr/bin/startplasma-x11")):
|
||||||
|
print("Plasma is installed, not removing Breeze")
|
||||||
|
else:
|
||||||
|
status = ("Removing Breeze")
|
||||||
|
self.remove_pkg("breeze")
|
||||||
|
|
||||||
|
# If Plasma or LXQt are installed, remove Qt5ct
|
||||||
|
if exists(join(self.root, "usr/bin/startplasma-x11")):
|
||||||
|
status = ("Removing Qt5ct")
|
||||||
|
self.remove_pkg("qt5ct")
|
||||||
|
elif exists(join(self.root, "usr/bin/startlxqt")):
|
||||||
|
status = ("Removing Qt5ct")
|
||||||
|
self.remove_pkg("qt5ct")
|
||||||
|
|
||||||
|
# Remove Emptty if LightDM is present
|
||||||
|
if exists(join(self.root, "etc/lightdm/lightdm.conf")):
|
||||||
|
if exists(join(self.root, "usr/bin/emptty")):
|
||||||
|
status = ("Removing Emptty")
|
||||||
|
libcalamares.utils.target_env_process_output(["rm", "-fv" , "etc/runit/runsvdir/default/emptty"])
|
||||||
|
libcalamares.utils.target_env_process_output(["rm" , "-rfv", "etc/emptty"])
|
||||||
|
self.remove_pkg("emptty")
|
||||||
|
|
||||||
|
# Copy skel to root
|
||||||
|
status = ("Copying skel to root")
|
||||||
|
self.copy_folder('etc/skel', 'root')
|
||||||
|
|
||||||
|
# Update grub.cfg
|
||||||
|
status = ("Updating GRUB")
|
||||||
|
if exists(join(self.root, "usr/bin/update-grub")):
|
||||||
|
libcalamares.utils.target_env_process_output(["update-grub"])
|
||||||
|
|
||||||
|
# Enable 'menu_auto_hide' when supported in grubenv
|
||||||
|
if exists(join(self.root, "usr/bin/grub-set-bootflag")):
|
||||||
|
target_env_call(["grub-editenv", "-", "set", "menu_auto_hide=1", "boot_success=1"])
|
||||||
|
|
||||||
|
# # Enable plymouth
|
||||||
|
# status = ("Enabling Plymouth on target")
|
||||||
|
# libcalamares.utils.target_env_process_output(["plymouth-set-default-theme", "-R", "simply"])
|
||||||
|
|
||||||
|
# Replace /etc/issue msg from live
|
||||||
|
if exists(join(self.root, "etc/issue.new")):
|
||||||
|
libcalamares.utils.target_env_process_output(["mv", "etc/issue.new", "etc/issue"])
|
||||||
|
|
||||||
|
# If doas installed on target, enable it
|
||||||
|
if exists(join(self.root, "usr/bin/doas")):
|
||||||
|
doasconf = "permit nopass :root ||\npermit persist :wheel"
|
||||||
|
with open(join(self.root, "etc/doas.conf"), 'w') as conf:
|
||||||
|
conf.write(doasconf)
|
||||||
|
|
||||||
|
# Override default XFCE wallpaper
|
||||||
|
if exists(join(self.root, "usr/share/backgrounds/xfce/xfce-shapes.png")):
|
||||||
|
libcalamares.utils.target_env_process_output(["rm", "-fv", "usr/share/backgrounds/xfce/xfce-shapes.png"])
|
||||||
|
libcalamares.utils.target_env_process_output(["ln", "-frsv", "usr/share/backgrounds/wallpaper4.png", "usr/share/backgrounds/xfce/xfce-shapes.png"])
|
||||||
|
|
||||||
|
# Mark current kernel as automatically installed (this allows to remove old LTS kernels as orphaned packages).
|
||||||
|
libcalamares.utils.target_env_process_output(["xbps-pkgdb", "-m", "auto", "linux6.1"])
|
||||||
|
|
||||||
|
# Remove linux-headers meta-package
|
||||||
|
status = ("Removing linux-headers from target")
|
||||||
|
libcalamares.utils.target_env_process_output(["xbps-remove", "-RFyv", "linux-headers"])
|
||||||
|
ignorepkg = "ignorepkg=linux-headers"
|
||||||
|
self.mkdir("etc/xbps.d/")
|
||||||
|
with open(join(self.root, "etc/xbps.d/00-ignore.conf"), 'w') as conf:
|
||||||
|
conf.write(ignorepkg)
|
||||||
|
|
||||||
|
# Reconfigure all target packages to ensure everything is ok
|
||||||
|
status = ("Reconfiguring all target packages")
|
||||||
|
libcalamares.utils.target_env_process_output(["xbps-reconfigure", "-fa"])
|
||||||
|
|
||||||
|
def run():
|
||||||
|
""" Misc post-install configurations """
|
||||||
|
|
||||||
|
config = ConfigController()
|
||||||
|
|
||||||
|
return config.run()
|
|
@ -0,0 +1,6 @@
|
||||||
|
# Syntax is YAML 1.2
|
||||||
|
---
|
||||||
|
type: "job"
|
||||||
|
name: "postcfg"
|
||||||
|
interface: "python"
|
||||||
|
script: "main.py" #assumed relative to the current directory
|
|
@ -0,0 +1,12 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>public-key</key>
|
||||||
|
<data>LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQ0lqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FnOEFNSUlDQ2dLQ0FnRUF1T1ZrUjJPWVV5cW11NGMrWWVSOApMSnNSbzJXNzJ6MVBIMlZpb1FDR2hpdy9ZSW5PSFVSVzJLYjVRd3B2OXIxUTF1UmcvV2NYZU5PVGNObEw5NXlSCmRMbGJpK2dhMkVnOXJ6TjFtR2RLUVZzN0xEYmR3WFdZS2UvQ3BRZlpaTHBLS0tGRnlmbXJINDUrYzR0YitHNVIKdjdkNUZ2cTBhNmVMQ2g5VmdIZE9iQmNzSU55N1hJRUJwcllkYkpIaWVJdDNpVVpQb0p4ZTNNZ0gzTXFFV1J1RApOVlhEWHJGNDdvSFRnK0h3NHNZd3Q0aWl6T2NSNzNleFFmQ0FFL0ZWdU8zYWpPTTlWcVJ5N1VyNVFHMGxQZWRhCjBiU3c2WjJ1QmJOaFhVTDE4ZUk1L2ZHT3kxTjhwUVRRS0IvTHlIa1lFTy8zTGhndklCeGFmSlZXbU1IWTlJM1AKczdoSkM1TmhTb2FyazNibUlLRi9Rb3RXYnMvN0VrSFpjYTJyQk83TmpqYSt1ZU82eS9BbUVDeEhvY0pWb0loZwprbFN5OGROK1RlQytCRWt2OHdlbjRtUVdITFRnV2tob2xtSm01Y0Yya3BlYStNVVNhYnIrYzNHOExPY2pDQm8xCllTVkc0N1FxWExCY3EvaHg0SnJIRG05ODZGZU5CY3oyMWJFclh3M2JVT04xVjVOMGVlYXNOZmY4amNqb3lQczIKUzBrdjdTb1NicXZ3Qm0zMFlaMEI4NEdtai9telFoWUlVTTd3ZnJlWkZ1RGJFS2VPVDQ5WldPNUJGL01XWEF0RwpqWW1RWEFDZ1UxTmdIZEVzeXh2ODhoaUpRL3NwWnNXaytDbGFzL25wZFpBUDZyUjdzdjBYUGNRL3l1djBFTTlrCmdqZ2pMNmttTUtnVTNlc1k4RGJWSjlVQ0F3RUFBUT09Ci0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQo=</data>
|
||||||
|
<key>public-key-size</key>
|
||||||
|
<integer>4096</integer>
|
||||||
|
<key>signature-by</key>
|
||||||
|
<string>Cereus Linux</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
|
@ -0,0 +1,12 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>public-key</key>
|
||||||
|
<data>LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQm9qQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FZOEFNSUlCaWdLQ0FZRUE3MWFjaGRsOFdzckh6Y1RvZ3NheAp2Y3lWQ3F3TEFkVktwcmU0YjZDcXkwWUdaclVObFhMYTdQNW9neS9HbVhNclJWMHFhclVCU1BFZVkxM3Q5NGpyCks1dlpsYUlqZHMzZE1lS2dsUU9DWU9vSG5jeWFNSFBvcmM1L2srbFhCaUJvRFQ1cHg1YURrbTFIVTRnOU1JenIKUXBYck9qUTJBNXczQ3J6MUJxY0E0NVVVQWlIOGFFaTZSaUtnR2lBOWxjcXdkOTRna3dPKzJHN3dEWXRjcUN1cgo3ZVFJS1pMeXdQSmIxSHVGdHk3SVcwYmMxUFZHaElFTUJrVmUrU0pRL2N4NUNFdzNtblNpejVKVDdvRDF1UWozClVuVDU1RkUyZThrdDJkQWJZMmtyaVFodzVaVUplS1kyNC9yREZZbzFYOFZ2bG5rT0pnblNyRHUzb0d3aTd4NnUKaGM4R0Z4b0pMbTl4NU9BRTdWc2hrc2JOUkdHUThkUHE0amdBd3Y4SlpGZlUydWgreWdoV2pxTUlMR2I5SFVZbwpQSHdjSUk3VlhQZ0VmSS9BbC9pQUpsQnJqbTBRYnFmWDVyZUhwV3RoYzd3RVVaeWxkT3lwM1pLQ01qT2pXL0Z0Cm5UVjcwUXFLNlR0dHYrVm9vaHZaREt1akFyc0Jndk5NSXIvbUpUOExURHBSQWdNQkFBRT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCg==</data>
|
||||||
|
<key>public-key-size</key>
|
||||||
|
<integer>4096</integer>
|
||||||
|
<key>signature-by</key>
|
||||||
|
<string>Peppermintos</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
|
@ -0,0 +1,12 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>public-key</key>
|
||||||
|
<data>LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFybFE5ajZFWFgxMVAvSG9EazIrbAppZExDYXlrVTNmMEw1ajJXbkszMTlLUEMxdE9CRWREemtlWkZxZW1UR0psT0tNemdkY3p2aUg0WWVyMnYvRjZMCjdYZ2trek43bDA3UDVBb3dIYUlFVnBzMGljTUlkZW9kTmdLc0RtQzNjSE1RZ24xL2tKYUYvK01nN1pNVCtWSC8KSXloTDRBYU95RS83M0RaU1lUdGp0QXlvVUhZUWNPc2syTHJVOW10ZHByRXZsUHUzRVRGNGNEeWRZVHZmei9iYgpJUWpmSW5sZmlVd2hWMm95WnlHYkh1RlMrNi9EUXdETSt1MG5BQ2xtM2h6Uzdkc0pSV2xMMG0xRDN5SFdlc0hrCkhrbEZkamhFWllQKytkYVQ2RFJSbHl1dGFYbG1Qa3c0Y0twVVpwOXhUOUE5aURCNGZrTzR5SWtJRFRXdzlDc1YKbFFJREFRQUIKLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCg==</data>
|
||||||
|
<key>public-key-size</key>
|
||||||
|
<integer>2048</integer>
|
||||||
|
<key>signature-by</key>
|
||||||
|
<string>Cereus Linux</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
20
mklive.sh
20
mklive.sh
|
@ -183,11 +183,21 @@ copy_pep_artwork() {
|
||||||
cp artwork/* "$1"/usr/share/pep-artwork
|
cp artwork/* "$1"/usr/share/pep-artwork
|
||||||
}
|
}
|
||||||
|
|
||||||
copy_pep_default-grub() {
|
copy_pep_default_grub() {
|
||||||
mkdir -p "$1"/etc/default
|
mkdir -p "$1"/etc/default
|
||||||
cp default-grub/* "$1"/etc/default
|
cp default-grub/* "$1"/etc/default
|
||||||
}
|
}
|
||||||
|
|
||||||
|
copy_pep_calamares_modules() {
|
||||||
|
mkdir -p "$1"/usr/lib/calamares/modules
|
||||||
|
cp -r calamares/modules/* "$1"/usr/lib/calamares/modules
|
||||||
|
}
|
||||||
|
|
||||||
|
copy_pep_calamares_branding() {
|
||||||
|
mkdir -p "$1"/etc/calamares
|
||||||
|
cp -r calamares/calamares/* "$1"/etc/calamares
|
||||||
|
}
|
||||||
|
|
||||||
copy_void_keys() {
|
copy_void_keys() {
|
||||||
mkdir -p "$1"/var/db/xbps/keys
|
mkdir -p "$1"/var/db/xbps/keys
|
||||||
cp keys/*.plist "$1"/var/db/xbps/keys
|
cp keys/*.plist "$1"/var/db/xbps/keys
|
||||||
|
@ -428,7 +438,9 @@ while getopts "a:b:r:c:C:T:Kk:l:i:I:S:s:o:p:g:v:Vh" opt; do
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
shift $((OPTIND - 1))
|
shift $((OPTIND - 1))
|
||||||
XBPS_REPOSITORY="$XBPS_REPOSITORY --repository=https://repo-default.voidlinux.org/current --repository=https://repo-default.voidlinux.org/current/musl"
|
XBPS_REPOSITORY="$XBPS_REPOSITORY --repository=https://repo-default.voidlinux.org/current \
|
||||||
|
--repository=https://repo-default.voidlinux.org/current/musl \
|
||||||
|
--repository=https://www.repo.peppermintos.org/pep-packages"
|
||||||
|
|
||||||
# Configure dracut to use overlayfs for the writable overlay.
|
# Configure dracut to use overlayfs for the writable overlay.
|
||||||
BOOT_CMDLINE="$BOOT_CMDLINE rd.live.overlay.overlayfs=1 "
|
BOOT_CMDLINE="$BOOT_CMDLINE rd.live.overlay.overlayfs=1 "
|
||||||
|
@ -514,7 +526,9 @@ copy_pep_PepProTools "$ROOTFS"
|
||||||
#copy_pep_lightdm "$ROOTFS"
|
#copy_pep_lightdm "$ROOTFS"
|
||||||
copy_pep_aliases "$ROOTFS"
|
copy_pep_aliases "$ROOTFS"
|
||||||
copy_pep_artwork "$ROOTFS"
|
copy_pep_artwork "$ROOTFS"
|
||||||
copy_pep_default-grub "$ROOTFS"
|
copy_pep_default_grub "$ROOTFS"
|
||||||
|
copy_pep_calamares_modules "$ROOTFS"
|
||||||
|
copy_pep_calamares_branding "$ROOTFS"
|
||||||
|
|
||||||
# Get linux version for ISO
|
# Get linux version for ISO
|
||||||
# If linux version option specified use
|
# If linux version option specified use
|
||||||
|
|
Loading…
Reference in New Issue