aboutsummaryrefslogtreecommitdiff
path: root/share/provision/debian/desktop-basic
diff options
context:
space:
mode:
Diffstat (limited to 'share/provision/debian/desktop-basic')
-rwxr-xr-xshare/provision/debian/desktop-basic78
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