Add gnome configurations, and load them in a sane way
bump arm64 to 5.9.7 clean up package installation bump image size to 3GB for now add "make write_image PDEV=/dev/sdX TARGET=armXX" to easily build and write an image to the specified device all in one
This commit is contained in:
parent
1e02ed3a68
commit
3e2155a987
|
@ -0,0 +1,4 @@
|
|||
git clone --recurse-submodules https://review.coreboot.org/coreboot.git
|
||||
cd coreboot
|
||||
apt install zlib1g-dev gnat
|
||||
make crossgcc-aarch64
|
|
@ -0,0 +1,47 @@
|
|||
# These are the options for the greeter session that can be set
|
||||
# through GSettings. Any GSettings setting that is used by the
|
||||
# greeter session can be set here.
|
||||
|
||||
# Note that you must configure the path used by dconf to store the
|
||||
# configuration, not the GSettings path.
|
||||
|
||||
|
||||
# Theming options
|
||||
# ===============
|
||||
# - Change the GTK+ theme
|
||||
[org/gnome/desktop/interface]
|
||||
# gtk-theme='Adwaita'
|
||||
# - Use another background
|
||||
[org/gnome/desktop/background]
|
||||
# picture-uri='file:///usr/share/themes/Adwaita/backgrounds/stripes.jpg'
|
||||
# picture-options='zoom'
|
||||
# - Or no background at all
|
||||
[org/gnome/desktop/background]
|
||||
# picture-options='none'
|
||||
# primary-color='#000000'
|
||||
|
||||
# Login manager options
|
||||
# =====================
|
||||
[org/gnome/login-screen]
|
||||
#logo='/usr/share/images/vendor-logos/logo-text-version-128.png'
|
||||
|
||||
# - Disable user list
|
||||
# disable-user-list=true
|
||||
# - Disable restart buttons
|
||||
# disable-restart-buttons=true
|
||||
# - Show a login welcome message
|
||||
# banner-message-enable=true
|
||||
# banner-message-text='Welcome'
|
||||
|
||||
# Automatic suspend
|
||||
# =================
|
||||
[org/gnome/settings-daemon/plugins/power]
|
||||
# - Time inactive in seconds before suspending with AC power
|
||||
# 1200=20 minutes, 0=never
|
||||
# sleep-inactive-ac-timeout=1200
|
||||
# - What to do after sleep-inactive-ac-timeout
|
||||
# 'blank', 'suspend', 'shutdown', 'hibernate', 'interactive' or 'nothing'
|
||||
# sleep-inactive-ac-type='suspend'
|
||||
# - As above but when on battery
|
||||
# sleep-inactive-battery-timeout=1200
|
||||
# sleep-inactive-battery-type='suspend'
|
|
@ -0,0 +1,23 @@
|
|||
#we can use "dconf dump /" to see the user specific modifications made and then move them here
|
||||
# swapping the / for .
|
||||
|
||||
[org.gnome.desktop.interface]
|
||||
gtk-im-module='ibus'
|
||||
gtk-theme='Materia-compact'
|
||||
monospace-font-name='Source Code Pro Medium 11'
|
||||
show-battery-percentage=true
|
||||
|
||||
[org.gnome.desktop.peripherals.touchpad]
|
||||
natural-scroll=false
|
||||
tap-to-click=true
|
||||
two-finger-scrolling-enabled=true
|
||||
|
||||
[org.gnome.desktop.wm.preferences]
|
||||
button-layout='close,minimize,maximize:appmenu'
|
||||
|
||||
[org.gnome.desktop.background]
|
||||
picture-uri='file:///usr/share/images/desktop-base/default'
|
||||
|
||||
[org.gnome.desktop.screensaver]
|
||||
picture-uri='file:///usr/share/images/desktop-base/default'
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm64 5.9.1-gnu Kernel Configuration
|
||||
# Linux/arm64 5.9.6-gnu Kernel Configuration
|
||||
#
|
||||
CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Debian 8.3.0-2) 8.3.0"
|
||||
CONFIG_CC_IS_GCC=y
|
||||
|
@ -6338,7 +6338,7 @@ CONFIG_ROCKCHIP_SARADC=y
|
|||
|
||||
CONFIG_IIO_CROS_EC_SENSORS_CORE=y
|
||||
CONFIG_IIO_CROS_EC_SENSORS=y
|
||||
# CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE is not set
|
||||
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=y
|
||||
|
||||
#
|
||||
# Hid Sensor IIO Common
|
||||
|
|
5
makefile
5
makefile
|
@ -103,6 +103,11 @@ image:
|
|||
cp $(PRAWNOS_IMAGE_BASE) $(PRAWNOS_IMAGE)
|
||||
$(MAKE) kernel_install
|
||||
|
||||
# $PDEV should be passed like PDEV=/dev/sdb
|
||||
.PHONY: write_image
|
||||
write_image: $(PRAWNOS_IMAGE)
|
||||
$(PRAWNOS_IMAGE_SCRIPTS_WRITE_IMAGE) $(PRAWNOS_IMAGE) $(PDEV)
|
||||
|
||||
.PHONE: release
|
||||
release: $(PRAWNOS_IMAGE_GIT_GZ)
|
||||
|
||||
|
|
|
@ -47,7 +47,7 @@ PRAWNOS_KERNEL_HEADERS_DEBVER := 1
|
|||
|
||||
## ARM64 KERNEL VERSIONS
|
||||
else ifeq ($(TARGET),$(PRAWNOS_ARM64))
|
||||
KVER := 5.9.4
|
||||
KVER := 5.9.7
|
||||
PRAWNOS_KERNEL_VER := 1
|
||||
PRAWNOS_KERNEL_IMAGE_DEBVER := 1
|
||||
PRAWNOS_KERNEL_HEADERS_DEBVER := 1
|
||||
|
@ -124,6 +124,7 @@ PRAWNOS_KERNEL_SCRIPTS_UPDATE_DEB_FILES := $(PRAWNOS_KERNEL_SCRIPTS)/updateKerne
|
|||
|
||||
PRAWNOS_IMAGE_SCRIPTS := $(PRAWNOS_BUILD_SCRIPTS)/ImageScripts
|
||||
PRAWNOS_IMAGE_SCRIPTS_INSTALL_KERNEL := $(PRAWNOS_IMAGE_SCRIPTS)/installKernelToFs.sh
|
||||
PRAWNOS_IMAGE_SCRIPTS_WRITE_IMAGE := $(PRAWNOS_IMAGE_SCRIPTS)/writeImage.sh
|
||||
|
||||
PRAWNOS_INITRAMFS_SCRIPTS := $(PRAWNOS_BUILD_SCRIPTS)/InitramfsScripts
|
||||
PRAWNOS_INITRAMFS_SCRIPTS_BUILD := $(PRAWNOS_INITRAMFS_SCRIPTS)/buildInitramFs.sh
|
||||
|
|
|
@ -179,7 +179,7 @@ create_image() {
|
|||
# create a 2.5GB image with the Chrome OS partition layout
|
||||
# Bumped to keep both Gnome and Xfce
|
||||
#TODO: change back to 40 (2GB)
|
||||
create_image $BASE $outdev 50M 50 $outmnt
|
||||
create_image $BASE $outdev 50M 60 $outmnt
|
||||
|
||||
# use default debootstrap mirror if none is specified
|
||||
if [ "$PRAWNOS_DEBOOTSTRAP_MIRROR" = "" ]
|
||||
|
@ -273,7 +273,7 @@ chroot $outmnt apt-get clean
|
|||
#Download the shared packages to be installed by Install.sh:
|
||||
apt_install $PRAWNOS_BUILD $outmnt false ${base_debs_download[@]}
|
||||
|
||||
## DEs
|
||||
#DEs
|
||||
#Download the xfce packages to be installed by Install.sh:
|
||||
apt_install $PRAWNOS_BUILD $outmnt false ${xfce_debs_download[@]}
|
||||
|
||||
|
|
|
@ -0,0 +1,47 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -x
|
||||
set -e
|
||||
|
||||
# ensure the target device is present, write the image, and force sync
|
||||
|
||||
|
||||
# This file is part of PrawnOS (https://www.prawnos.com)
|
||||
# Copyright (c) 2020 Hal Emmerich <hal@halemmerich.com>
|
||||
|
||||
# PrawnOS is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License version 2
|
||||
# as published by the Free Software Foundation.
|
||||
|
||||
# PrawnOS 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 PrawnOS. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
if [ -z "$1" ]
|
||||
then
|
||||
echo "No PrawnOS image supplied"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$2" ]
|
||||
then
|
||||
echo "No device supplied, supply like this: PDEV=/dev/sdX "
|
||||
exit 1
|
||||
fi
|
||||
|
||||
IMAGE=$1
|
||||
DEVICE=$2
|
||||
|
||||
if [ ! -b $DEVICE ]
|
||||
then
|
||||
echo $DEVICE is not available, is it plugged in?
|
||||
exit 1
|
||||
fi
|
||||
|
||||
dd if=$IMAGE of=$DEVICE bs=50M
|
||||
sync
|
||||
|
||||
echo $IMAGE was written to $DEVICE successfully!
|
|
@ -41,7 +41,8 @@ if [ "$TARGET" == "$ARCH_ARMHF" ]; then
|
|||
for i in "$PATCHES"/DTS/*.patch; do echo $i; patch -p1 < $i; done
|
||||
for i in "$PATCHES"/kernel/*.patch; do echo $i; patch -p1 < $i; done
|
||||
elif [ "$TARGET" == "$ARCH_ARM64" ]; then
|
||||
for i in "$PATCHES"/kernel/*.patch; do echo $i; patch -p1 < $i; done
|
||||
echo skip for now
|
||||
#for i in "$PATCHES"/kernel/*.patch; do echo $i; patch -p1 < $i; done
|
||||
# for i in "$PATCHES"/drm/*.patch; do echo $i; patch -p1 < $i; done
|
||||
# for i in "$PATCHES"/cros-drm/*.patch; do echo $i; patch -p1 < $i; done
|
||||
# for i in "$PATCHES"/alarm/*.patch; do echo $i; patch -p1 < $i; done
|
||||
|
|
|
@ -80,47 +80,62 @@ dpkg-reconfigure tzdata
|
|||
DEBIAN_FRONTEND=noninteractive apt install -y ${base_debs_download[@]}
|
||||
DEBIAN_FRONTEND=noninteractive apt install -y ${mesa_debs_download[@]}
|
||||
DEBIAN_FRONTEND=noninteractive apt install -y ${prawnos_base_debs_prebuilt_download[@]}
|
||||
|
||||
[ "$DE" = "gnome" ] && apt install -y ${gnome_debs_download[@]}
|
||||
[ "$DE" = "xfce" ] && apt install -y ${xfce_debs_download[@]} ${prawnos_base_debs_prebuilt_install[@]}
|
||||
|
||||
#install the keymap by patching xkb, then bindings work for any desktop environment
|
||||
cp $DIR/xkb/compat/* /usr/share/X11/xkb/compat/
|
||||
cp $DIR/xkb/keycodes/* /usr/share/X11/xkb/keycodes/
|
||||
cp $DIR/xkb/symbols/* /usr/share/X11/xkb/symbols/
|
||||
|
||||
patch /usr/share/X11/xkb/rules/base < $DIR/xkb/rules/base.patch
|
||||
patch /usr/share/X11/xkb/rules/base.lst < $DIR/xkb/rules/base.lst.patch
|
||||
patch /usr/share/X11/xkb/rules/base.xml < $DIR/xkb/rules/base.xml.patch
|
||||
patch /usr/share/X11/xkb/rules/evdev < $DIR/xkb/rules/evdev.patch
|
||||
patch /usr/share/X11/xkb/rules/evdev.lst < $DIR/xkb/rules/evdev.lst.patch
|
||||
patch /usr/share/X11/xkb/rules/evdev.xml < $DIR/xkb/rules/evdev.xml.patch
|
||||
|
||||
patch /usr/share/X11/xkb/symbols/gb < $DIR/xkb/symbols/gb.patch
|
||||
patch /usr/share/X11/xkb/symbols/us < $DIR/xkb/symbols/us.patch
|
||||
DEBIAN_FRONTEND=noninteractive apt install -y ${prawnos_base_debs_prebuilt_install[@]}
|
||||
|
||||
|
||||
|
||||
cp $DIR/xkb/keyboard /etc/default/keyboard
|
||||
|
||||
#disable ertm for csr8510 bluetooth, issue #117
|
||||
echo "module/bluetooth/parameters/disable_ertm = 1" > /etc/sysfs.conf
|
||||
|
||||
if [ "$DE" = "gnome" ]
|
||||
then
|
||||
|
||||
apt install -y ${gnome_debs_download[@]}
|
||||
|
||||
#install firefox-esr default settings
|
||||
cp $DIR/firefox-esr/prawn-settings.js /usr/lib/firefox-esr/defaults/pref/
|
||||
cp $DIR/firefox-esr/prawn.cfg /usr/lib/firefox-esr/
|
||||
|
||||
#TODO: a config file way to do the following would be nice, so that we can install the configs now instead
|
||||
# of having to run the following commands after login
|
||||
#Natural scrolling is un-natural
|
||||
# gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll false
|
||||
#Tap to click is natural
|
||||
# gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click true
|
||||
#apply gsettings and tweaks changes
|
||||
cp $DIR/Gnome/prawnos-setting-schema/* /usr/share/glib-2.0/schemas/
|
||||
glib-compile-schemas /usr/share/glib-2.0/schemas/
|
||||
|
||||
#copy in wallpapers
|
||||
rm /usr/share/images/desktop-base/default && cp $DIR/wallpapers/* /usr/share/images/desktop-base/
|
||||
|
||||
#remove the logo on gdm
|
||||
cp $DIR/Gnome/greeter.dconf-defaults /etc/gdm3/greeter.dconf-defaults
|
||||
dpkg-reconfigure gdm3
|
||||
|
||||
|
||||
#TODO: debug why rotation is flipped
|
||||
# work around issue #234
|
||||
apt remove -y iio-sensor-proxy
|
||||
|
||||
fi
|
||||
|
||||
if [ "$DE" = "xfce" ]
|
||||
then
|
||||
apt install -y ${xfce_debs_download[@]}
|
||||
|
||||
#install the keymap by patching xkb, then bindings work for any desktop environment
|
||||
cp $DIR/xkb/compat/* /usr/share/X11/xkb/compat/
|
||||
cp $DIR/xkb/keycodes/* /usr/share/X11/xkb/keycodes/
|
||||
cp $DIR/xkb/symbols/* /usr/share/X11/xkb/symbols/
|
||||
|
||||
patch /usr/share/X11/xkb/rules/base < $DIR/xkb/rules/base.patch
|
||||
patch /usr/share/X11/xkb/rules/base.lst < $DIR/xkb/rules/base.lst.patch
|
||||
patch /usr/share/X11/xkb/rules/base.xml < $DIR/xkb/rules/base.xml.patch
|
||||
patch /usr/share/X11/xkb/rules/evdev < $DIR/xkb/rules/evdev.patch
|
||||
patch /usr/share/X11/xkb/rules/evdev.lst < $DIR/xkb/rules/evdev.lst.patch
|
||||
patch /usr/share/X11/xkb/rules/evdev.xml < $DIR/xkb/rules/evdev.xml.patch
|
||||
|
||||
patch /usr/share/X11/xkb/symbols/gb < $DIR/xkb/symbols/gb.patch
|
||||
patch /usr/share/X11/xkb/symbols/us < $DIR/xkb/symbols/us.patch
|
||||
|
||||
cp $DIR/xkb/keyboard /etc/default/keyboard
|
||||
|
||||
# remove light-locker, as it is broken on this machine. See issue https://github.com/SolidHal/PrawnOS/issues/56#issuecomment-504681175
|
||||
apt remove -y light-locker
|
||||
apt purge -y light-locker
|
||||
|
@ -171,6 +186,11 @@ then
|
|||
|
||||
#Install brightness control scripts
|
||||
cp $DIR/xfce-config/brightness/backlight_* /usr/sbin/
|
||||
|
||||
|
||||
#same bash trackpad config works well enough for both devices, but only useful on xfce
|
||||
mkdir -p /etc/X11/xorg.conf.d/
|
||||
cp -rf $DIR/30-touchpad.conf /etc/X11/xorg.conf.d/
|
||||
fi
|
||||
|
||||
|
||||
|
@ -188,12 +208,10 @@ then
|
|||
cp -rf $DIR/30-touchpad.conf /etc/X11/xorg.conf.d/
|
||||
fi
|
||||
|
||||
if [[ $device_model == $device_gru_kevin ]] || [[ $device_model == $device_gru_bob ]]
|
||||
then
|
||||
#same bash trackpad config works well enough
|
||||
mkdir -p /etc/X11/xorg.conf.d/
|
||||
cp -rf $DIR/30-touchpad.conf /etc/X11/xorg.conf.d/
|
||||
fi
|
||||
#if [[ $device_model == $device_gru_kevin ]] || [[ $device_model == $device_gru_bob ]]
|
||||
#then
|
||||
#nothing for now
|
||||
#fi
|
||||
|
||||
|
||||
apt clean -y && apt autoremove --purge -y
|
||||
|
|
|
@ -167,7 +167,6 @@ gnome_debs_download=(
|
|||
# packages built by prawnos, to be installed when running InstallPrawnOS
|
||||
# and choosing xfce
|
||||
prawnos_xfce_debs_prebuilt_download=(
|
||||
font-source-code-pro
|
||||
xsecurelock
|
||||
)
|
||||
|
||||
|
@ -177,6 +176,7 @@ prawnos_base_debs_prebuilt_download=(
|
|||
|
||||
# packages built by prawnos, to be installed at build time
|
||||
prawnos_base_debs_prebuilt_install=(
|
||||
font-source-code-pro
|
||||
flashmap
|
||||
mosys
|
||||
libgbm1=20.2.1-100
|
||||
|
|
Reference in New Issue