From b205077da5dc5f19b86cf59f6fb875708fb247a1 Mon Sep 17 00:00:00 2001 From: MaxwellDoug Date: Wed, 25 Sep 2024 11:15:31 -0300 Subject: [PATCH 1/2] Added initial first-setup recipe --- .../org.vanillaos.FirstSetup/recipe.json | 557 ++++++++++++++++++ 1 file changed, 557 insertions(+) create mode 100644 includes.container/usr/share/org.vanillaos.FirstSetup/recipe.json diff --git a/includes.container/usr/share/org.vanillaos.FirstSetup/recipe.json b/includes.container/usr/share/org.vanillaos.FirstSetup/recipe.json new file mode 100644 index 0000000..b0dc7bd --- /dev/null +++ b/includes.container/usr/share/org.vanillaos.FirstSetup/recipe.json @@ -0,0 +1,557 @@ +{ + "log_file": "/etc/vanilla/first-setup.log", + "distro_name": "Vanilla OS", + "distro_logo": "org.vanillaos.FirstSetup-flower", + "pre_run": [ + "!nextBoot su - $REAL_USER -c \"flatpak --user remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo\"" + ], + "post_run": [ + "sh -c /usr/bin/__first_setup_reset_session", + "!nextBoot sh -c /usr/bin/__first_setup_cleanup", + "!nextBoot !noRoot vso pico-init", + "rm -f /etc/vanilla-first-setup-done" + ], + "tour_app": "vanilla-tour", + "tour": { + "get-involved": { + "icon": "system-users-symbolic", + "title": "Get Involved", + "description": "Vanilla OS is a community project. You can contribute to the project by reporting bugs, suggesting new features, or even by writing code.", + "read_more_link": "https://vanillaos.org/get-involved" + }, + "community": { + "icon": "help-faq-symbolic", + "title": "Join The Community", + "description": "Our community is active on Discord. You can join us to ask questions, get help, or just to chat with other users.", + "read_more_link": "https://discord.gg/3cD2Q7Ht3S" + }, + "abroot": { + "icon": "security-medium-symbolic", + "title": "Immutable and Atomic", + "description": "Vanilla OS is an immutable and atomic Linux distribution. It is based on Debian and uses ABRoot to provide atomic transactions.", + "read_more_link": "https://documentation.vanillaos.org/docs/ABRoot/" + }, + "apx": { + "icon": "vanilla-container-terminal-symbolic", + "title": "Sub-System Ready To Go", + "description": "Vanilla OS comes with Apx, a new package manager which installs software in integrated containers to prevent host compromise.", + "read_more_link": "https://documentation.vanillaos.org/docs/apx/" + } + }, + "steps": { + "network": { + "template": "network", + "protected": true + }, + "conn-check": { + "template": "conn-check", + "protected": true + }, + "welcome": { + "template": "welcome", + "protected": true + }, + "language": { + "template": "language", + "new-user-only": true + }, + "keyboard": { + "template": "keyboard", + "new-user-only": true + }, + "timezone": { + "template": "timezone", + "new-user-only": true + }, + "theme": { + "template": "theme" + }, + "user": { + "template": "user", + "new-user-only": true + }, + "hostname": { + "template": "hostname", + "new-user-only": true + }, + "apps": { + "template": "applications", + "icon": "org.gnome.Software-symbolic", + "title": "Applications", + "description": "Choose which applications to install.", + "bundles": [ + { + "id": "core-apps", + "title": "Core Applications", + "subtitle": "Essential GNOME apps like Calendar or Document Viewer.", + "default": true, + "applications": [ + { + "name": "Calculator", + "icon": "org.gnome.Calculator", + "flatpak": true + }, + { + "name": "Calendar", + "icon": "org.gnome.Calendar", + "flatpak": true + }, + { + "name": "Characters", + "icon": "org.gnome.Characters", + "flatpak": true + }, + { + "name": "Clocks", + "icon": "org.gnome.clocks", + "flatpak": true + }, + { + "name": "Connections", + "icon": "org.gnome.Connections", + "flatpak": true + }, + { + "name": "Contacts", + "icon": "org.gnome.Contacts", + "flatpak": true + }, + { + "name": "Disk Usage Analyzer", + "icon": "org.gnome.baobab", + "flatpak": true + }, + { + "name": "Document Scanner", + "icon": "org.gnome.SimpleScan", + "flatpak": true + }, + { + "name": "Document Viewer", + "icon": "org.gnome.Evince", + "flatpak": true + }, + { + "name": "File Roller", + "icon": "org.gnome.FileRoller", + "flatpak": true + }, + { + "name": "Fonts", + "icon": "org.gnome.font-viewer", + "flatpak": true + }, + { + "name": "Image Viewer", + "icon": "org.gnome.Loupe", + "flatpak": true + }, + { + "name": "Logs", + "icon": "org.gnome.Logs", + "flatpak": true + }, + { + "name": "Maps", + "icon": "org.gnome.Maps", + "flatpak": true + }, + { + "name": "Music", + "icon": "org.gnome.Music", + "flatpak": true + }, + { + "name": "Photos", + "icon": "org.gnome.Photos", + "flatpak": true + }, + { + "name": "Snapshot", + "icon": "org.gnome.Snapshot", + "flatpak": true + }, + { + "name": "Text Editor", + "icon": "org.gnome.TextEditor", + "flatpak": true + }, + { + "name": "Videos", + "icon": "org.gnome.Totem", + "flatpak": true + }, + { + "name": "Weather", + "icon": "org.gnome.Weather", + "flatpak": true + } + ] + }, + { + "id": "office", + "title": "Office", + "subtitle": "The LibreOffice suite.", + "default": false, + "applications": [ + { + "name": "LibreOffice", + "icon": "org.libreoffice.LibreOffice", + "flatpak": true + } + ] + }, + { + "id": "utilities", + "title": "Common Utilities", + "subtitle": "Useful utilities like Bottles or Sound Recorder.", + "default": false, + "applications": [ + { + "name": "Bottles", + "icon": "com.usebottles.bottles", + "flatpak": true + }, + { + "name": "Extension Manager", + "icon": "com.mattjakeman.ExtensionManager", + "flatpak": true + }, + { + "name": "Heroic Games Launcher", + "icon": "com.heroicgameslauncher.hgl", + "flatpak": true + }, + { + "name": "Lutris", + "icon": "net.lutris.Lutris", + "flatpak": true + }, + { + "name": "Boxes", + "icon": "org.gnome.Boxes", + "flatpak": true + }, + { + "name": "Déjà Dup Backups", + "icon": "org.gnome.DejaDup", + "flatpak": true + }, + { + "name": "Flatseal", + "icon": "com.github.tchx84.Flatseal", + "flatpak": true + }, + { + "name": "Metadata Cleaner", + "icon": "fr.romainvigier.MetadataCleaner", + "flatpak": true + }, + { + "name": "Rnote", + "icon": "com.github.flxzt.rnote", + "flatpak": true + }, + { + "name": "Shortwave", + "icon": "de.haeckerfelix.Shortwave", + "flatpak": true + }, + { + "name": "Sound Recorder", + "icon": "org.gnome.SoundRecorder", + "flatpak": true + } + ] + }, + { + "id": "browsers", + "title": "Browsers", + "subtitle": "Applications that you can use to browse the internet. Traditionally, you only need one.", + "default": true, + "applications": [ + { + "name": "Firefox", + "icon": "org.mozilla.firefox", + "flatpak": true + }, + { + "name": "Google Chrome", + "icon": "com.google.Chrome", + "flatpak": true, + "active": false + }, + { + "name": "Chromium", + "icon": "org.chromium.Chromium", + "flatpak": true, + "active": false + }, + { + "name": "Brave Browser", + "icon": "com.brave.Browser", + "flatpak": true, + "active": false + }, + { + "name": "Microsoft Edge", + "icon": "com.microsoft.Edge", + "flatpak": true, + "active": false + }, + { + "name": "Vivaldi", + "icon": "com.vivaldi.Vivaldi", + "flatpak": true, + "active": false + }, + { + "name": "GNOME Web", + "icon": "org.gnome.Epiphany", + "flatpak": true, + "active": false + } + ] + } + ], + "final": [ + { + "if": "Calculator", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.Calculator" + ] + }, + { + "if": "Calendar", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.Calendar" + ] + }, + { + "if": "Characters", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.Characters" + ] + }, + { + "if": "Clocks", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.clocks"] + }, + { + "if": "Connections", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.Connections" + ] + }, + { + "if": "Contacts", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.Contacts" + ] + }, + { + "if": "Disk Usage Analyzer", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.baobab"] + }, + { + "if": "Document Scanner", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.SimpleScan" + ] + }, + { + "if": "Document Viewer", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Evince"] + }, + { + "if": "Extension Manager", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y com.mattjakeman.ExtensionManager" + ] + }, + { + "if": "File Roller", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.FileRoller" + ] + }, + { + "if": "Fonts", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.font-viewer" + ] + }, + { + "if": "Image Viewer", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Loupe"] + }, + { + "if": "Logs", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Logs"] + }, + { + "if": "Maps", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Maps"] + }, + { + "if": "Music", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Music"] + }, + { + "if": "Photos", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Photos"] + }, + { + "if": "Snapshot", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.Snapshot" + ] + }, + { + "if": "Text Editor", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.TextEditor" + ] + }, + { + "if": "Weather", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Weather"] + }, + { + "if": "Videos", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Totem"] + }, + { + "if": "GNOME Web", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.Epiphany" + ] + }, + { + "if": "LibreOffice", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.libreoffice.LibreOffice" + ] + }, + { + "if": "Bottles", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y com.usebottles.bottles" + ] + }, + { + "if": "Heroic Games Launcher", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y com.heroicgameslauncher.hgl" + ] + }, + { + "if": "Lutris", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y net.lutris.Lutris"] + }, + { + "if": "Boxes", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Boxes"] + }, + { + "if": "Déjà Dup Backups", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.DejaDup"] + }, + { + "if": "Flatseal", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y com.github.tchx84.Flatseal" + ] + }, + { + "if": "Metadata Cleaner", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y fr.romainvigier.MetadataCleaner" + ] + }, + { + "if": "Rnote", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y com.github.flxzt.rnote" + ] + }, + { + "if": "Shortwave", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y de.haeckerfelix.Shortwave" + ] + }, + { + "if": "Sound Recorder", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.gnome.SoundRecorder" + ] + }, + { + "if": "Firefox", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.mozilla.firefox" + ] + }, + { + "if": "Google Chrome", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y com.google.Chrome"] + }, + { + "if": "Chromium", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y org.chromium.Chromium" + ] + }, + { + "if": "Brave Browser", + "type": "command", + "commands": ["!nextBoot !noRoot flatpak install -y com.brave.Browser"] + }, + { + "if": "Microsoft Edge", + "type": "command", + "commands": [ + "!nextBoot !noRoot flatpak install -y com.microsoft.Edge" + ] + } + ] + } + } +} From 99cedeb0885ea821412863227c2189acb46b7eca Mon Sep 17 00:00:00 2001 From: MaxwellDoug Date: Wed, 25 Sep 2024 11:59:51 -0300 Subject: [PATCH 2/2] Updated First-Setup to use KDE apps for all options that have flatpak install options, leaving the rest as their gnome equivalents for now. --- .../org.vanillaos.FirstSetup/recipe.json | 142 +++++++----------- 1 file changed, 54 insertions(+), 88 deletions(-) diff --git a/includes.container/usr/share/org.vanillaos.FirstSetup/recipe.json b/includes.container/usr/share/org.vanillaos.FirstSetup/recipe.json index b0dc7bd..359757a 100644 --- a/includes.container/usr/share/org.vanillaos.FirstSetup/recipe.json +++ b/includes.container/usr/share/org.vanillaos.FirstSetup/recipe.json @@ -87,8 +87,8 @@ "default": true, "applications": [ { - "name": "Calculator", - "icon": "org.gnome.Calculator", + "name": "KCalc", + "icon": "org.kde.kcalc", "flatpak": true }, { @@ -97,18 +97,18 @@ "flatpak": true }, { - "name": "Characters", - "icon": "org.gnome.Characters", + "name": "KCharSelect", + "icon": "org.kde.kcharselect", "flatpak": true }, { - "name": "Clocks", - "icon": "org.gnome.clocks", + "name": "KClock", + "icon": "org.kde.kclock", "flatpak": true }, { - "name": "Connections", - "icon": "org.gnome.Connections", + "name": "KRDC", + "icon": "org.kde.krdc", "flatpak": true }, { @@ -117,33 +117,28 @@ "flatpak": true }, { - "name": "Disk Usage Analyzer", - "icon": "org.gnome.baobab", + "name": "FileLight", + "icon": "org.kde.filelight", "flatpak": true }, { - "name": "Document Scanner", - "icon": "org.gnome.SimpleScan", + "name": "SkanPage", + "icon": "org.kde.skanpage", "flatpak": true }, { - "name": "Document Viewer", - "icon": "org.gnome.Evince", + "name": "Okular", + "icon": "org.kde.okular", "flatpak": true }, { - "name": "File Roller", - "icon": "org.gnome.FileRoller", + "name": "Ark", + "icon": "org.kde.ark", "flatpak": true }, { - "name": "Fonts", - "icon": "org.gnome.font-viewer", - "flatpak": true - }, - { - "name": "Image Viewer", - "icon": "org.gnome.Loupe", + "name": "GwenView", + "icon": "org.kde.gwenview", "flatpak": true }, { @@ -152,18 +147,18 @@ "flatpak": true }, { - "name": "Maps", - "icon": "org.gnome.Maps", + "name": "Marble", + "icon": "org.kde.marble", "flatpak": true }, { - "name": "Music", - "icon": "org.gnome.Music", + "name": "Elisa", + "icon": "org.kde.elisa", "flatpak": true }, { "name": "Photos", - "icon": "org.gnome.Photos", + "icon": "org.kde.koko", "flatpak": true }, { @@ -172,8 +167,8 @@ "flatpak": true }, { - "name": "Text Editor", - "icon": "org.gnome.TextEditor", + "name": "Kate", + "icon": "org.kde.kate", "flatpak": true }, { @@ -182,8 +177,8 @@ "flatpak": true }, { - "name": "Weather", - "icon": "org.gnome.Weather", + "name": "KWeather", + "icon": "org.kde.kweather", "flatpak": true } ] @@ -212,11 +207,6 @@ "icon": "com.usebottles.bottles", "flatpak": true }, - { - "name": "Extension Manager", - "icon": "com.mattjakeman.ExtensionManager", - "flatpak": true - }, { "name": "Heroic Games Launcher", "icon": "com.heroicgameslauncher.hgl", @@ -316,11 +306,9 @@ ], "final": [ { - "if": "Calculator", + "if": "KCalc", "type": "command", - "commands": [ - "!nextBoot !noRoot flatpak install -y org.gnome.Calculator" - ] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.kcalc"] }, { "if": "Calendar", @@ -330,23 +318,21 @@ ] }, { - "if": "Characters", + "if": "KCharSelect", "type": "command", "commands": [ - "!nextBoot !noRoot flatpak install -y org.gnome.Characters" + "!nextBoot !noRoot flatpak install -y org.kde.kcharselect" ] }, { - "if": "Clocks", + "if": "KClock", "type": "command", - "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.clocks"] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.kclock"] }, { - "if": "Connections", + "if": "KRDC", "type": "command", - "commands": [ - "!nextBoot !noRoot flatpak install -y org.gnome.Connections" - ] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.krdc"] }, { "if": "Contacts", @@ -356,47 +342,29 @@ ] }, { - "if": "Disk Usage Analyzer", - "type": "command", - "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.baobab"] - }, - { - "if": "Document Scanner", - "type": "command", - "commands": [ - "!nextBoot !noRoot flatpak install -y org.gnome.SimpleScan" - ] - }, - { - "if": "Document Viewer", + "if": "FileLight", "type": "command", - "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Evince"] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.filelight"] }, { - "if": "Extension Manager", + "if": "SkanPage", "type": "command", - "commands": [ - "!nextBoot !noRoot flatpak install -y com.mattjakeman.ExtensionManager" - ] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.skanpage"] }, { - "if": "File Roller", + "if": "Okular", "type": "command", - "commands": [ - "!nextBoot !noRoot flatpak install -y org.gnome.FileRoller" - ] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.okular"] }, { - "if": "Fonts", + "if": "Ark", "type": "command", - "commands": [ - "!nextBoot !noRoot flatpak install -y org.gnome.font-viewer" - ] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.ark"] }, { - "if": "Image Viewer", + "if": "GwenView", "type": "command", - "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Loupe"] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.gwenview"] }, { "if": "Logs", @@ -404,19 +372,19 @@ "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Logs"] }, { - "if": "Maps", + "if": "Marble", "type": "command", - "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Maps"] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.marble"] }, { - "if": "Music", + "if": "Elisa", "type": "command", - "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Music"] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.elisa"] }, { "if": "Photos", "type": "command", - "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Photos"] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.koko"] }, { "if": "Snapshot", @@ -426,16 +394,14 @@ ] }, { - "if": "Text Editor", + "if": "Kate", "type": "command", - "commands": [ - "!nextBoot !noRoot flatpak install -y org.gnome.TextEditor" - ] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.kate"] }, { - "if": "Weather", + "if": "KWeather", "type": "command", - "commands": ["!nextBoot !noRoot flatpak install -y org.gnome.Weather"] + "commands": ["!nextBoot !noRoot flatpak install -y org.kde.kweather"] }, { "if": "Videos",