Initial commit

This commit is contained in:
Jorge O. Castro
2022-12-08 12:13:51 -05:00
parent fa23fd0da7
commit a6f7daa71e
6 changed files with 206 additions and 0 deletions

16
Containerfile Normal file
View File

@@ -0,0 +1,16 @@
FROM ghcr.io/cgwalters/fedora-silverblue:37
# See https://pagure.io/releng/issue/11047 for final location
COPY etc /etc
COPY usr /usr
COPY ublue-firstboot /usr/bin
RUN rpm-ostree override remove firefox firefox-langpacks && \
rpm-ostree install distrobox gnome-tweaks && \
sed -i 's/#AutomaticUpdatePolicy.*/AutomaticUpdatePolicy=stage/' /etc/rpm-ostreed.conf && \
systemctl enable rpm-ostreed-automatic.timer && \
systemctl enable flatpak-automatic.timer && \
dconf update && \
rpm-ostree cleanup -m && \
ostree container commit

View File

@@ -0,0 +1,6 @@
if test "$(id -u)" -gt "0" && test -d "$HOME"; then
if test ! -e "$HOME"/.config/ublue/firstboot-done; then
mkdir -p "$HOME"/.config/autostart
cp -f /etc/skel.d/.config/autostart/ublue-firstboot.desktop "$HOME"/.config/autostart
fi
fi

View File

@@ -0,0 +1,8 @@
[Desktop Entry]
Name=Ublue Desktop FirstBoot Setup
Comment=Sets up Ublue Desktop Correctly On FirstBoot
Exec=/usr/bin/ublue-firstboot
Icon=org.gnome.Terminal
Type=Application
Categories=Utility;System;
Name[en_US]=startup

View File

@@ -0,0 +1,12 @@
[Unit]
Description=flatpak Automatic Update
Documentation=man:flatpak(1)
Wants=network-online.target
After=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/bin/flatpak update -y
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,11 @@
[Unit]
Description=flatpak Automatic Update Trigger
Documentation=man:flatpak(1)
[Timer]
OnBootSec=5m
OnCalendar=0/6:00:00
Persistent=true
[Install]
WantedBy=timers.target

153
ublue-firstboot Executable file
View File

@@ -0,0 +1,153 @@
#!/bin/sh
if test -e "$HOME"/.config/ublue/firstboot-done; then
echo "Already ran"
exit 0
fi
(
echo "# Waiting for Internet connection"
until /usr/bin/ping -q -c 1 flathub.org; do sleep 1; done
echo "00"
echo "# Removing Filtered Flathub Repository"
/usr/bin/flatpak remote-delete flathub --force ||:
if [ "$?" != 0 ] ; then
zenity --error \
--text="Removing Filtered Flathub Repo Failed"
exit 1
fi
echo "3"
echo "# Enabling Flathub Repository"
/usr/bin/flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
if [ "$?" != 0 ] ; then
zenity --error \
--text="Adding Flathub Repo Failed"
exit 1
fi
echo "5"
echo "# Removing Fedora Flatpak Repository"
/usr/bin/flatpak remote-delete fedora --force ||:
if [ "$?" != 0 ] ; then
zenity --error \
--text="Removing Fedora Flatpak Repo Failed"
exit 1
fi
echo "7"
echo "# Installing Firefox"
/usr/bin/flatpak install --user --noninteractive flathub org.mozilla.firefox
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing Firefox Failed"
exit 1
fi
echo "10"
echo "# Installing Thunderbird"
/usr/bin/flatpak install --user --noninteractive flathub org.mozilla.Thunderbird
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing Thunderbird Failed"
exit 1
fi
echo "20"
echo "# Installing GNOME Applications"
/usr/bin/flatpak install --user --noninteractive flathub \
org.gnome.Calculator \
org.gnome.Calendar \
org.gnome.Characters \
org.gnome.Connections \
org.gnome.Contacts \
org.gnome.Evince \
org.gnome.Firmware \
org.gnome.Logs
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing GNOME Applications Failed"
exit 1
fi
echo "30"
echo "# Installing more GNOME Applications"
/usr/bin/flatpak install --user --noninteractive flathub \
org.gnome.Maps \
org.gnome.NautilusPreviewer \
org.gnome.TextEditor \
org.gnome.Weather \
org.gnome.baobab \
org.gnome.clocks \
org.gnome.eog \
org.gnome.font-viewer
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing GNOME more Applications Failed"
exit 1
fi
echo "40"
echo "# Installing Extension Manager"
/usr/bin/flatpak install --user --noninteractive flathub com.mattjakeman.ExtensionManager
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing Extension Manager Failed"
exit 1
fi
echo "50"
echo "# Installing LibreOffice"
/usr/bin/flatpak install --user --noninteractive flathub org.libreoffice.LibreOffice
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing LibreOffice Failed"
exit 1
fi
echo "70"
echo "# Installing DejaDup Backup"
/usr/bin/flatpak install --user --noninteractive flathub org.gnome.DejaDup
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing DejaDup Failed"
exit 1
fi
echo "80"
echo "# Installing Font Downloader"
/usr/bin/flatpak install --user --noninteractive flathub org.gustavoperedo.FontDownloader
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing FontDownloader Failed"
exit 1
fi
echo "85"
echo "# Installing Flatseal"
/usr/bin/flatpak install --user --noninteractive flathub com.github.tchx84.Flatseal
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing Flatseal Failed"
exit 1
fi
echo "90"
echo "# Installing Celluloid Media Player"
/usr/bin/flatpak install --user --noninteractive flathub io.github.celluloid_player.Celluloid
if [ "$?" != 0 ] ; then
zenity --error \
--text="Installing Celluloid Failed"
exit 1
fi
echo "100"
echo "# Reticulating Final Splines"
mkdir -p "$HOME"/.config/ublue/
touch "$HOME"/.config/ublue/firstboot-done
if [ "$?" != 0 ] ; then
zenity --error \
--text="Firstboot Configuration Error"
fi