diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2020-12-13 10:25:19 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2020-12-13 10:25:19 -0300 |
commit | 7799e36e0f057625f29bba0394597da5645fcc30 (patch) | |
tree | ae294d1c763f38f9d0b007f71291aa22b9f7e846 /share/provision/debian/desktop-basic | |
parent | 71e615a3faae973342ae5debdd76b28a33430817 (diff) | |
download | kvmx-7799e36e0f057625f29bba0394597da5645fcc30.tar.gz kvmx-7799e36e0f057625f29bba0394597da5645fcc30.tar.bz2 |
Fix: provision cleanup and organize
Diffstat (limited to 'share/provision/debian/desktop-basic')
-rwxr-xr-x | share/provision/debian/desktop-basic | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/share/provision/debian/desktop-basic b/share/provision/debian/desktop-basic new file mode 100755 index 0000000..ec49414 --- /dev/null +++ b/share/provision/debian/desktop-basic @@ -0,0 +1,78 @@ +#!/usr/bin/env bash +# +# Basic desktop provision example +# +# Copyright (C) 2017 Silvio Rhatto - rhatto at riseup.net +# +# This program 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 any later version. +# +# This program 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 this program. If not, see <http://www.gnu.org/licenses/>. +# + +# Parameters +DIRNAME="`dirname $0`" +BASENAME="`basename $0`" +HOSTNAME="$1" +DOMAIN="$2" +MIRROR="$3" +APT_INSTALL="sudo LC_ALL=C DEBIAN_FRONTEND=noninteractive apt-get install -y" + +# Provision the basic stuff +$DIRNAME/basic $HOSTNAME $DOMAIN $MIRROR + +# QXL +# See https://labs.riseup.net/code/issues/11518 +# https://bugs.mageia.org/show_bug.cgi?id=14607 +#if [ ! -e "/etc/modprobe.d/qxl-no-kms.conf" ]; then +# echo 'options qxl modeset=0' | sudo tee /etc/modprobe.d/qxl-no-kms.conf +# sudo update-initramfs -v -u +#fi + +# Ensure we are in the user home folder +cd + +# Aditional metadot modules +apps/metadot/metadot load-bundle desktop-basic +apps/metadot/metadot deps-bundle desktop-basic + +# Additional packages +echo "Installing additional desktop-basic packages..." +$APT_INSTALL xpra lightdm firejail xsel tigervnc-viewer + +# See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=861744 +$APT_INSTALL torbrowser-launcher alsa-utils pulseaudio + +# System-wide configuration +sudo cp $DIRNAME/files/desktop-basic/etc/lightdm/lightdm.conf /etc/lightdm/lightdm.conf +sudo cp $DIRNAME/files/desktop-basic/etc/default/keyboard /etc/default/keyboard +sudo update-alternatives --set x-window-manager /usr/bin/ratpoison + +# Removing the dotfiles' version of .dmrc ensures that +# +# the default x-window-manager automatically starts. Otherwise we may end up +# having lightdm unable to login automatically into ratpoison or even starting +# the wrong window manager. +rm -f $HOME/.dmrc + +# Load qlx module during initramfs phase otherwise the X server might start +# before this module gets loaded, resulting in weird spice errors. +if ! grep -q qxl /etc/initramfs-tools/modules; then + echo qxl | sudo tee -a /etc/initramfs-tools/modules > /dev/null + sudo update-initramfs -u +fi + +# User configuration +mkdir -p $HOME/.custom + +if [ ! -e "$HOME/.custom/xsession" ]; then + cp $DIRNAME/files/desktop-basic/home/user/.custom/xsession $HOME/.custom/xsession +fi |