Compare commits

..

2 Commits

@ -5,69 +5,10 @@
all:
# Desktop file
(cd lubuntu/po/ && make)
(cd kubuntu/po/ && make)
(cd ubuntuunity/po && make)
# Slideshow
(cd lubuntu/branding/lubuntu/lang/ && make)
# basicwallpaper
(cd common/basicwallpaper && mkdir build && cd build && cmake .. -DCMAKE_BUILD_TYPE=Release && make)
# Lubuntu OEM setup stuff
(cd lubuntu && mkdir oemconfig && cd oemconfig && mkdir -p usr/bin && mkdir -p etc/calamares && mkdir -p usr/share/xsessions && mkdir -p usr/libexec && mkdir -p etc && mkdir -p usr/share/applications && mkdir -p home/oem/Desktop)
(cp lubuntu/calamares-logs-helper lubuntu/oemconfig/usr/bin/)
(cp lubuntu/oem/sddm.conf lubuntu/oemconfig/etc/)
(cp lubuntu/oem/sudoers.oem lubuntu/oemconfig/etc/ && chmod 400 lubuntu/oemconfig/etc/sudoers.oem)
(cp lubuntu/oem/calamares-oemfinish.sh lubuntu/oemconfig/usr/libexec/)
(cp lubuntu/oem/calamares-finish-oem lubuntu/oemconfig/usr/bin/)
(cp lubuntu/oem/calamares-finish-oem.desktop lubuntu/oemconfig/usr/share/applications/)
(cp -r lubuntu/branding lubuntu/oemconfig/etc/calamares/)
(cp -r lubuntu/oem/modules/ lubuntu/oemconfig/etc/calamares/)
(cp lubuntu/oem/settings.conf lubuntu/oemconfig/etc/calamares/)
(cp lubuntu/oem/lubuntu-oem-env/lubuntu-oem-environment.desktop lubuntu/oemconfig/usr/share/xsessions/)
(cp lubuntu/oem/lubuntu-oem-env/start-lubuntu-oem-env lubuntu/oemconfig/usr/libexec/)
(cp common/basicwallpaper/build/basicwallpaper lubuntu/oemconfig/usr/bin/)
(cp lubuntu/oem/calamares-finish-oem.desktop lubuntu/oemconfig/home/oem/Desktop/)
(fakeroot bash -c "chown -R root:root lubuntu/oemconfig && tar cvzf lubuntu/oemconfig.tar.gz lubuntu/oemconfig")
# Kubuntu OEM setup stuff
(cd kubuntu && mkdir oemconfig && cd oemconfig && mkdir -p usr/bin && mkdir -p etc/calamares && mkdir -p usr/share/xsessions && mkdir -p usr/libexec && mkdir -p etc && mkdir -p usr/share/applications && mkdir -p home/oem/Desktop)
(cp kubuntu/calamares-logs-helper kubuntu/oemconfig/usr/bin/)
(cp kubuntu/oem/sddm.conf kubuntu/oemconfig/etc/)
(cp kubuntu/oem/sudoers.oem kubuntu/oemconfig/etc/ && chmod 400 kubuntu/oemconfig/etc/sudoers.oem)
(cp kubuntu/oem/calamares-oemfinish.sh kubuntu/oemconfig/usr/libexec/)
(cp kubuntu/oem/calamares-finish-oem kubuntu/oemconfig/usr/bin/)
(cp kubuntu/oem/calamares-finish-oem.desktop kubuntu/oemconfig/usr/share/applications/)
(cp -r kubuntu/branding kubuntu/oemconfig/etc/calamares/)
(cp -r kubuntu/oem/modules/ kubuntu/oemconfig/etc/calamares/)
(cp kubuntu/oem/settings.conf kubuntu/oemconfig/etc/calamares/)
(cp kubuntu/oem/kubuntu-oem-env/kubuntu-oem-environment.desktop kubuntu/oemconfig/usr/share/xsessions/)
(cp kubuntu/oem/kubuntu-oem-env/start-kubuntu-oem-env kubuntu/oemconfig/usr/libexec/)
(cp common/basicwallpaper/build/basicwallpaper kubuntu/oemconfig/usr/bin/)
(cp kubuntu/oem/calamares-finish-oem.desktop kubuntu/oemconfig/home/oem/Desktop/)
(fakeroot bash -c "chown -R root:root kubuntu/oemconfig && tar cvzf kubuntu/oemconfig.tar.gz kubuntu/oemconfig")
# Ubuntu Unity OEM setup stuff
(cd ubuntuunity && mkdir oemconfig && cd oemconfig && mkdir -p usr/bin && mkdir -p etc/calamares && mkdir -p usr/share/xsessions && mkdir -p usr/libexec && mkdir -p etc/lightdm && mkdir -p usr/share/applications && mkdir -p home/oem/Desktop)
(cp ubuntuunity/calamares-logs-helper ubuntuunity/oemconfig/usr/bin/)
(cp ubuntuunity/oem/lightdm.conf ubuntuunity/oemconfig/etc/lightdm/)
(cp ubuntuunity/oem/sudoers.oem ubuntuunity/oemconfig/etc/ && chmod 400 kubuntu/oemconfig/etc/sudoers.oem)
(cp ubuntuunity/oem/calamares-oemfinish.sh ubuntuunity/oemconfig/usr/libexec/)
(cp ubuntuunity/oem/calamares-finish-oem ubuntuunity/oemconfig/usr/bin/)
(cp ubuntuunity/oem/calamares-finish-oem.desktop ubuntuunity/oemconfig/usr/share/applications/)
(cp -r ubuntuunity/branding ubuntuunity/oemconfig/etc/calamares/)
(cp -r ubuntuunity/oem/modules/ ubuntuunity/oemconfig/etc/calamares/)
(cp ubuntuunity/oem/settings.conf ubuntuunity/oemconfig/etc/calamares/)
(cp ubuntuunity/oem/ubuntu-unity-oem-env/ubuntu-unity-oem-environment.desktop ubuntuunity/oemconfig/usr/share/xsessions/)
(cp ubuntuunity/oem/ubuntu-unity-oem-env/start-ubuntu-unity-oem-env ubuntuunity/oemconfig/usr/libexec/)
(cp common/basicwallpaper/build/basicwallpaper ubuntuunity/oemconfig/usr/bin/)
(cp ubuntuunity/oem/calamares-finish-oem.desktop ubuntuunity/oemconfig/home/oem/Desktop/)
(fakeroot bash -c "chown -R root:root ubuntuunity/oemconfig && tar cvzf ubuntuunity/oemconfig.tar.gz ubuntuunity/oemconfig")
# Get rid of the unnecessary files
find lubuntu/ -type f -iname "*.in" | xargs rm -f
find lubuntu/ -type f -iname "Makefile" | xargs rm -f
find kubuntu/ -type f -iname "*.in" | xargs rm -f
find kubuntu/ -type f -iname "Makefile" | xargs rm -f
find ubuntuunity/ -type f -iname "*.in" | xargs rm -f
find ubuntuunity/ -type f -iname "Makefile" | xargs rm -f
rm -rf kubuntu/oemconfig
rm -rf lubuntu/oemconfig
rm -rf ubuntuunity/oemconfig
rm -rf common/basicwallpaper/build
# vim:ts=4

@ -6,8 +6,8 @@ If you want to add a new package for your flavor, here's how to do it:
2. Edit files and rename the branding directory for your flavor. All of the
configuration files are pretty self-explanatory, but they're documented
well upstream, so it shouldn't be hard to put your own spin on things.
3. Create a new binary package, and *make sure to Provides+Conflicts against
`calamares-settings-ubuntu-flavor`*. This needs to be done because all
3. Create a new binary package, and *make sure to Conflicts against all other
binary packages in this source package*. This needs to be done because all
subdirectories are installed in the same location, so this makes sure that
nobody tries to install any two binary packages at the same time.

@ -1,24 +0,0 @@
# Ubuntu Studio's Calamares Branding (archived)
This directory houses the branding Ubuntu Studio used when Calamares was still
being used as the installer, along with some additional potentially useful
configuration fragments. Ubuntu Studio has since switched to using
ubuntu-desktop-provision, and thus most of the actual configuration has been
removed.
Unless otherwise stated, the contents of this directory are licensed as follows:
Copyright (C) 2020 Ubuntu Studio Developers <ubuntu-studio-devel@lists.ubuntu.com>
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 (at your option) 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 software. If not, see <http://www.gnu.org/licenses/>.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 342 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 329 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 404 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 379 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 407 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 294 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 460 KiB

@ -1,31 +0,0 @@
---
componentName: ubuntustudio
windowExpanding: normal
windowSize: "890px,600px"
strings:
productName: Ubuntu Studio
shortProductName: Ubuntu Studio
version: 23.10
shortVersion: noble
versionedName: Ubuntu Studio
shortVersionedName: Ubuntu Studio 23.10
bootloaderEntryName: Ubuntu
productUrl: https://ubuntustudio.org/
supportUrl: https://ubuntustudio.org/support/
images:
productLogo: "logo.png"
productIcon: "icon.png"
productWelcome: "welcome.png"
slideshow: "show.qml"
slideshowAPI: 1
style:
SidebarBackground: "#1E1E1E"
SidebarText: "#BBBBBB"
SidebarTextCurrent: "#FFFFFF"
SidebarBackgroundCurrent: "#121212"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

@ -1,11 +0,0 @@
#!/usr/bin/make -f
LANGUAGES := ar ca de es eu gl be da el et fr ko pl pt pt_BR
all:
for i in $(LANGUAGES); do \
/usr/lib/qt5/bin/lrelease "calamares-lubuntu_$$i.ts"; \
rm calamares-lubuntu_$$i.ts; \
done
# vim:ts=4

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="ar">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>احصل على المساعدة</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>ايميلك</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>مُدار بواسطة تروجيتا</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>لتشغيل جميع أفلامك</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>ليبر أوفيس</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>لتحرير ولتعديل جميع مستنداتك</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>الصور</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>تظهر بواسطة نوكامس</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>أحصل على المرح!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>مع 2048 لعبة</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>دردشة اي ار سي</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>مع كواسيل اي ار سي</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>أظهر مستنداتك</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>مع عارض كيو بد دي اف</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="ca">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Obtenir Suport</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>El Teu E-Mail</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>Gestionat per Trojitá</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>Per reproduir Totes les Teves Pel·lícules</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Per Editar Tots el Teus Documents</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Imatges</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>Mostrades Amb Nomacs</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>Diverteix-te!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Amb el joc 2048</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>IRC Chat</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Amb Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Consulteu els Vostres Documents</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>Amb QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="da_DK">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Få support</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>Din e-mail</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>Styret af Trojitá</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>Til at afspille alle dine videoer</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Rediger alle dine dokumenter</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Billeder</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>Se dem med Nomacs</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>Hav det sjovt!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Med 2048 spillet</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>IRC Chat</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Med Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Se dine dokumenter</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>Med QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="de">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Unterstützung erhalten</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>Ihre E-Mail-Adresse</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>von Trojitá verwaltet</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>Um alle ihre Filme abzuspielen</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Bearbeitet all ihre Dokumente</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Bilder</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>Viel Spaß!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Mit das 2048 Spiel</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>IRC Chat</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Mit Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Ihre Dokumente anzeigen</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>Mit QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="es">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Obtén Soporte</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>Tu e-mail</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>Gestionado por Trojitá</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>Para Reproducir Todas Tus Películas</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Edita Todos Tus Documentos</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Imágenes</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>Mostradas Con Nomacs</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>¡Diviértete!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Con el juego 2048</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>Chat de IRC</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Con Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Visualiza tus Documentos</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>Con QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="fr">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Obtenir de l&apos;aide</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>Votre mail</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>Managé par Trojità</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>Pour regarder tous vos films</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Édite tous vos documents</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Images</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>Visionné avec Nomacs</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>Amusez vous !</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Avec le jeux 2018</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>Chat IRC</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Avec Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Regardez vos documents</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>Avec QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="it_IT">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Ricevi Supporto</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>La tua Mail</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>Gestito da Trojitá</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>Per Riprodurre Tutti i Tuoi Filmati</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Modifica tutti i tuoi documenti</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Immagini</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>Visualizzato con Nomacs</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>Divertiti!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Con il gioco 2048</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>Chat IRC</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Con Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Vedi i tuoi documenti</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>Con QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="no">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Få brukerstøtte</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>Din epost</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>Håndtert av Trojitá</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>For å spille alle dine filmer</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Skriv alle dine dokumenter</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Bilder</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>Vist med Nomacs</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>Ha det gøy!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Med 2048-spillet</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>IRC Chat</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Med Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Se dine dokumenter</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>Med QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="pl">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Uzyskaj wsparcie</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>Twój e-mail</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>Obsługiwany przez Trojitá</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>Odtwarzający wszystkie Twoje filmy</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Edytuje Twoje dokumenty</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Zdjęcia</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>Wyświetlane przez Nomacs</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>Baw się dobrze!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Z grą 2048</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>Czat IRC</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Dzięki Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Wyświetlaj swoje dokumenty</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>W QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="pt">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Suporte</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>O seu correio eletrónico (e-mail)</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>Gerido por Trojitá</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>Para a reprodução de todos os seus filmes</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Edita todos os seus documentos</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Imagens</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>Visualizado com Nomacs</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>Divirta-se!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Com o jogo 2048</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>Converse via IRC</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Com o Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Visualize os seus documentos</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>Com o QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="pt_BR">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation>Suporte</translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation>https://lubuntu.me</translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation>Seu correio eletrônico (e-mail)</translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation>Gerenciado por Trojitá</translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation>SMPlayer</translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation>Para reprodução dos seus filmes favoritos</translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation>LibreOffice</translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation>Edita todos os seus documentos</translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation>Imagens</translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation>Visualizadas com Nomacs</translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation>Divirta-se!</translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation>Com o jogo 2048</translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation>Converse via IRC</translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation>Com o Quassel IRC</translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation>Visualize os seus documentos</translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation>Com o QPDFView</translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="ru_RU">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="zh_CN">
<context>
<name>show</name>
<message>
<location filename="../show.qml" line="32"/>
<source>Get Support</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="56"/>
<source>https://lubuntu.me</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="90"/>
<source>Your Mail</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="114"/>
<source>Managed by Trojitá</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="148"/>
<source>SMPlayer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="172"/>
<source>To Play All of Your Movies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="206"/>
<source>LibreOffice</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="230"/>
<source>Edits All Of Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="264"/>
<source>Pictures</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="288"/>
<source>Viewed With Nomacs</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="322"/>
<source>Have Fun!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="346"/>
<source>With the 2048 game</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="380"/>
<source>IRC Chat</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="404"/>
<source>With Quassel IRC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="438"/>
<source>View Your Documents</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../show.qml" line="462"/>
<source>With QPDFView</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

@ -1,106 +0,0 @@
import QtQuick 2.0;
import calamares.slideshow 1.0;
Presentation
{
id: presentation
Timer {
interval: 20000
running: true
repeat: true
onTriggered: presentation.goToNextSlide()
}
Slide {
Image {
anchors.centerIn: parent
id: image1
x:0
y:0
width: 790
height: 520
fillMode: Image.PreserveAspectFit
smooth: true
source: "NewLook.png"
}
}
Slide {
Image {
anchors.centerIn: parent
id: image3
x: 0
y: 0
width: 790
height: 520
fillMode: Image.PreserveAspectFit
smooth: true
source: "Audio.png"
}
}
Slide {
Image {
anchors.centerIn: parent
id: image4
x: 0
y: 0
width: 790
height: 520
fillMode: Image.PreserveAspectFit
smooth: true
source: "Video.png"
}
}
Slide {
Image {
anchors.centerIn: parent
id: image5
x: 0
y: 0
width: 790
height: 520
fillMode: Image.PreserveAspectFit
smooth: true
source: "Art.png"
}
}
Slide {
Image {
anchors.centerIn: parent
id: image6
x: 0
y: 0
width: 790
height: 520
fillMode: Image.PreserveAspectFit
smooth: true
source: "Photography.png"
}
}
Slide {
Image {
anchors.centerIn: parent
id: image7
x: 0
y: 0
width: 790
height: 520
fillMode: Image.PreserveAspectFit
smooth: true
source: "Software.png"
}
}
Slide {
Image {
anchors.centerIn: parent
id: image2
x: 0
y: 0
width: 790
height: 520
fillMode: Image.PreserveAspectFit
smooth: true
source: "FindUs.png"
}
}
}

@ -1,92 +0,0 @@
/*
A branding component can ship a stylesheet (like this one)
which is applied to parts of the Calamares user-interface.
In principle, all parts can be styled through CSS.
Missing parts should be filed as issues.
The IDs are based on the object names in the C++ code.
You can use the Debug Dialog to find out object names:
- Open the debug dialog
- Choose tab *Tools*
- Click *Widget Tree* button
The list of object names is printed in the log.
Documentation for styling Qt Widgets through a stylesheet
can be found at
https://doc.qt.io/qt-5/stylesheet-examples.html
https://doc.qt.io/qt-5/stylesheet-reference.html
In Calamares, styling widget classes is supported (e.g.
using `QComboBox` as a selector).
This example stylesheet has all the actual styling commented out.
The examples are not exhaustive.
*/
/*** Generic Widgets.
*
* You can style **all** widgets of a given class by selecting
* the class name. Some widgets have specialized sub-selectors.
*/
/*
QPushButton { background-color: green; }
*/
/*** Main application window.
*
* The main application window has the sidebar, which in turn
* contains a logo and a list of items -- note that the list
* can **not** be styled, since it has its own custom C++
* delegate code.
*/
/*
#mainApp { setStyleSheet("color: white; background-color: black;"); }
#sidebarApp { }
#logoApp { }
*/
/*** Welcome module.
*
* There are plenty of parts, but the buttons are the most interesting
* ones (donate, release notes, ...). The little icon image can be
* styled through *qproperty-icon*, which is a little obscure.
* URLs can reference the QRC paths of the Calamares application
* or loaded via plugins or within the filesystem. There is no
* comprehensive list of available icons, though.
*/
/*
QPushButton#aboutButton { qproperty-icon: url(:/data/images/release.svg); }
#donateButton,
#supportButton,
#releaseNotesButton,
#knownIssuesButton { qproperty-icon: url(:/data/images/help.svg); }
*/
/*** Partitioning module.
*
* Many moving parts, which you will need to experiment with.
*/
/*
#bootInfoIcon { }
#bootInfoLable { }
#deviceInfoIcon { }
#defineInfoLabel { }
#scrollAreaWidgetContents { }
#partitionBarView { }
*/
/*** Licensing module.
*
* The licensing module paints individual widgets for each of
* the licenses. The item can be collapsed or expanded.
*/
/*
#licenseItem { }
#licenseItemFullText { }
*/

Binary file not shown.

Before

Width:  |  Height:  |  Size: 243 KiB

@ -1,119 +0,0 @@
[ColorEffects:Disabled]
Color=56,56,56
ColorAmount=0
ColorEffect=0
ContrastAmount=0.65
ContrastEffect=1
IntensityAmount=0.1
IntensityEffect=2
[ColorEffects:Inactive]
ChangeSelectionColor=true
Color=112,111,110
ColorAmount=0.025
ColorEffect=2
ContrastAmount=0.1
ContrastEffect=2
Enable=false
IntensityAmount=0
IntensityEffect=0
[Colors:Button]
BackgroundAlternate=163,212,250
BackgroundNormal=246,245,244
DecorationFocus=53,132,228
DecorationHover=53,132,228
ForegroundActive=53,132,228
ForegroundInactive=112,125,138
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=35,38,41
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[Colors:Complementary]
BackgroundAlternate=27,30,32
BackgroundNormal=42,46,50
DecorationFocus=53,132,228
DecorationHover=53,132,228
ForegroundActive=53,132,228
ForegroundInactive=161,169,177
ForegroundLink=29,153,243
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=252,252,252
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[Colors:Selection]
BackgroundAlternate=163,212,250
BackgroundNormal=53,132,228
DecorationFocus=53,132,228
DecorationHover=53,132,228
ForegroundActive=53,132,228
ForegroundInactive=112,125,138
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=255,255,255
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[Colors:Tooltip]
BackgroundAlternate=234,231,229
BackgroundNormal=246,245,244
DecorationFocus=53,132,228
DecorationHover=53,132,228
ForegroundActive=53,132,228
ForegroundInactive=112,125,138
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=35,38,41
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[Colors:View]
BackgroundAlternate=246,245,244
BackgroundNormal=255,255,255
DecorationFocus=53,132,228
DecorationHover=53,132,228
ForegroundActive=53,132,228
ForegroundInactive=112,125,138
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=35,38,41
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[Colors:Window]
BackgroundAlternate=227,229,231
BackgroundNormal=234,231,229
DecorationFocus=53,132,228
DecorationHover=53,132,228
ForegroundActive=53,132,228
ForegroundInactive=112,125,138
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=35,38,41
ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[General]
ColorScheme=UbuntuStudioLight
Name=Ubuntu Studio Light
shadeSortColumn=true
[KDE]
contrast=4
[WM]
activeBackground=234,231,229
activeBlend=227,229,231
activeForeground=35,38,41
inactiveBackground=234,231,229
inactiveBlend=234,231,229
inactiveForeground=112,125,138

@ -1,4 +0,0 @@
[General]
AutomountEnabled=false
AutomountOnLogin=false
AutomountOnPlugin=false

@ -1,45 +0,0 @@
cmake_minimum_required(VERSION 3.5)
project(basicwallpaper VERSION 0.1 LANGUAGES CXX)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(QT NAMES Qt6 Qt5 COMPONENTS Widgets REQUIRED)
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Widgets REQUIRED)
set(PROJECT_SOURCES
main.cpp
mainwindow.cpp
mainwindow.h
mainwindow.ui
)
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
qt_add_executable(basicwallpaper
MANUAL_FINALIZATION
${PROJECT_SOURCES}
)
else()
add_executable(basicwallpaper
${PROJECT_SOURCES}
)
endif()
target_link_libraries(basicwallpaper PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)
install(TARGETS basicwallpaper
BUNDLE DESTINATION .
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
if(QT_VERSION_MAJOR EQUAL 6)
qt_finalize_executable(basicwallpaper)
endif()

@ -1,288 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 6.0.2, 2024-02-14T12:14:09. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{c72e8e96-4d64-44b5-94c8-e16820d11b4b}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.PreferSingleLineComments">false</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SmartSelectionChanging">true</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="bool" key="EditorConfiguration.UseIndenter">false</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="QString" key="EditorConfiguration.ignoreFileTypes">*.md, *.MD, Makefile</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
<value type="bool" key="EditorConfiguration.skipTrailingWhitespace">true</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="DeviceType">Desktop</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{c8b6ccbc-b12c-473e-83be-23a4b6d2eb6e}</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="CMake.Build.Type">Debug</value>
<value type="QString" key="CMake.Initial.Parameters">-GUnix Makefiles
-DCMAKE_BUILD_TYPE:STRING=Debug
-DCMAKE_PROJECT_INCLUDE_BEFORE:PATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
-DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
-DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
-DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
-DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}</value>
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/arraybolt3/Projects/build-basicwallpaper-Desktop-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">all</value>
</valuelist>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">clean</value>
</valuelist>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="CMake.Build.Type">Release</value>
<value type="QString" key="CMake.Initial.Parameters">-GUnix Makefiles
-DCMAKE_BUILD_TYPE:STRING=Release
-DCMAKE_PROJECT_INCLUDE_BEFORE:PATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
-DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
-DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
-DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
-DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}</value>
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/arraybolt3/Projects/build-basicwallpaper-Desktop-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">all</value>
</valuelist>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">clean</value>
</valuelist>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
<value type="QString" key="CMake.Build.Type">RelWithDebInfo</value>
<value type="QString" key="CMake.Initial.Parameters">-GUnix Makefiles
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
-DCMAKE_PROJECT_INCLUDE_BEFORE:PATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
-DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
-DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
-DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
-DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}</value>
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/arraybolt3/Projects/build-basicwallpaper-Desktop-RelWithDebInfo</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">all</value>
</valuelist>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">clean</value>
</valuelist>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Release with Debug Information</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.3">
<value type="QString" key="CMake.Build.Type">MinSizeRel</value>
<value type="QString" key="CMake.Initial.Parameters">-GUnix Makefiles
-DCMAKE_BUILD_TYPE:STRING=MinSizeRel
-DCMAKE_PROJECT_INCLUDE_BEFORE:PATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
-DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
-DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
-DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
-DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}</value>
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/arraybolt3/Projects/build-basicwallpaper-Desktop-MinSizeRel</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">all</value>
</valuelist>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">clean</value>
</valuelist>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Minimum Size Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">4</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<value type="bool" key="Analyzer.Perf.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<valuelist type="QVariantList" key="CustomOutputParsers"/>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey"></value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">22</value>
</data>
<data>
<variable>Version</variable>
<value type="int">22</value>
</data>
</qtcreator>

@ -1,3 +0,0 @@
# basicwallpaper: Shows an image in the background across all screens
Copyright (C) 2024 Kubuntu Developers <kubuntu-devel@lists.ubuntu.com>. Licensed under the GNU GPL version 3. This license applies to all files in the repository. Inspiration taken from lubuntu-installer-prompt and pcmanfm-qt.

@ -1,28 +0,0 @@
#include "mainwindow.h"
#include <QApplication>
#include <QScreen>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QString wallpaperFile;
if (argc > 1) {
wallpaperFile = QString(argv[1]);
} else {
return 1;
}
for (QScreen *screen : QApplication::screens()) {
MainWindow *w = new MainWindow(wallpaperFile);
w->setWindowFlags(Qt::WindowStaysOnBottomHint);
w->setGeometry(screen->geometry());
w->showFullScreen();
w->show();
w->applyWallpaper();
}
return a.exec();
}

@ -1,43 +0,0 @@
#include "mainwindow.h"
#include "./ui_mainwindow.h"
#include <QDebug>
#include <QImage>
MainWindow::MainWindow(const QString &wallpaperFile, QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
m_wallpaperFile = wallpaperFile;
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::applyWallpaper()
{
QImage image(m_wallpaperFile);
if (!image.isNull()) {
qreal imgRatio = static_cast<qreal>(image.width()) / image.height();
qreal screenRatio = static_cast<qreal>(this->width()) / this->height();
QImage scaled;
if (imgRatio < screenRatio) {
scaled = image.scaledToWidth(this->width(), Qt::SmoothTransformation);
int yGap = (scaled.height() - this->height()) / 2;
scaled = scaled.copy(0, yGap, scaled.width(), this->height());
} else {
scaled = image.scaledToHeight(this->height(), Qt::SmoothTransformation);
int xGap = (scaled.width() - this->width()) / 2;
scaled = scaled.copy(xGap, 0, this->width(), scaled.height());
}
QPixmap bg = QPixmap::fromImage(scaled);
QPalette palette;
palette.setBrush(QPalette::Window, bg);
this->setPalette(palette);
} else {
qCritical() << "ERROR: Wallpaper does not exist!";
}
}

@ -1,24 +0,0 @@
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(const QString &wallpaperFile, QWidget *parent = nullptr);
~MainWindow();
void applyWallpaper();
private:
Ui::MainWindow *ui;
QString m_wallpaperFile;
};
#endif // MAINWINDOW_H

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>600</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralwidget"/>
<widget class="QMenuBar" name="menubar"/>
<widget class="QStatusBar" name="statusbar"/>
</widget>
<resources/>
<connections/>
</ui>

@ -1,3 +0,0 @@
#!/bin/bash
setxkbmap -query | awk '/layout/{ print $2 }' > /dev/shm/fixconkeys-layout
cp /usr/libexec/fixconkeys-part2 ${1}/usr/libexec/fixconkeys-part2

@ -1,5 +0,0 @@
#!/bin/bash
loadkeys "$(cat /dev/shm/fixconkeys-layout)"
setupcon --save-only
update-initramfs -c -k all
rm /usr/libexec/fixconkeys-part2

@ -6,8 +6,8 @@ baseUrl: archive.ubuntu.com
# URL used for IP address lookup
geoip:
style: "xml"
url: "https://geoip.ubuntu.com/lookup"
style: "json"
url: "https://ipapi.co/json"
# Distribution that this is based off of.
# This is so we can make safe assumptions for the contents of

@ -1,6 +1,6 @@
#!/usr/bin/env python3
# Copyright (C) 2018-2023 Simon Quigley <tsimonq2@ubuntu.com>
# Copyright (C) 2018 Simon Quigley <tsimonq2@ubuntu.com>
#
# 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
@ -19,108 +19,150 @@ import json
import libcalamares
from time import strftime
import urllib.request
from urllib.error import HTTPError, URLError
from urllib.error import HTTPError
from urllib.error import URLError
import socket
import logging
import distro
import xml.etree.ElementTree as ET
from os import remove
SUBDOMAINS_BY_COUNTRY_CODE = {
"US": "us.", "AU": "au.", "SE": "no.", "NO": "no.",
"NZ": "nz.", "NL": "nl.", "KR": "kr.", "DE": "de.",
"GE": "ge.", "PF": "pf.", "CZ": "cz.", "HR": "hr."
}
def get_sources_template():
return """# Automatically generated by Calamares on {date}.
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of {distro}.
## Ubuntu distribution repository
##
## The following settings can be adjusted to configure which packages to use from Ubuntu.
## Mirror your choices (except for URIs and Suites) in the security section below to
## ensure timely security updates.
##
## Types: Append deb-src to enable the fetching of source package.
## URIs: A URL to the repository (you may add multiple URLs)
## Suites: The following additional suites can be configured
## <name>-updates - Major bug fix updates produced after the final release of the
## distribution.
## <name>-backports - software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
## Components: Aside from main, the following components can be added to the list
## restricted - Software that may not be under a free license, or protected by patents.
## universe - Community maintained packages.
## Software from this repository is only maintained and supported by Canonical
## for machines with Ubuntu Pro subscriptions. Without Ubuntu Pro, the Ubuntu
## community provides best-effort security maintenance.
## multiverse - Community maintained of restricted. Software from this repository is
## ENTIRELY UNSUPPORTED by the Ubuntu team, and may not be under a free
## licence. Please satisfy yourself as to your rights to use the software.
## Also, please note that software in multiverse WILL NOT receive any
## review or updates from the Ubuntu security team.
##
## See the sources.list(5) manual page for further settings.
Types: deb
URIs: {url}
Suites: {codename} {codename}-updates {codename}-backports
Components: main universe restricted multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
## Ubuntu security updates. Aside from URIs and Suites,
## this should mirror your choices in the previous section.
Types: deb
URIs: http://security.ubuntu.com/ubuntu/
Suites: {codename}-security
Components: main universe restricted multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
"""
def get_country_code():
if not libcalamares.globalstorage.value("hasInternet"):
from lsb_release import get_distro_information
global sources
sources = """# Automatically generated by Calamares on DATE.
# Lines starting with "deb" are mandatory, while lines starting with "deb-src"
# are for more detailed package information.
## See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
## newer versions of DISTRIBUTION.
deb URL/ubuntu/ CODENAME main restricted
# deb-src URL/ubuntu/ CODENAME main restricted
## Major bug fix updates produced after the final release of DISTRIBUTION.
## Have you noticed a regression? Please report it!
## https://wiki.ubuntu.com/StableReleaseUpdates#Regressions
deb URL/ubuntu/ CODENAME-updates main restricted
# deb-src URL/ubuntu/ CODENAME-updates main restricted
## Software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu team.
## Also, please note that software in Universe WILL NOT receive any review or
## updates from the Ubuntu security team directly. Updates in this repository
## are provided by volunteers, but most come from Debian.
deb URL/ubuntu/ CODENAME universe
# deb-src URL/ubuntu/ CODENAME universe
deb URL/ubuntu/ CODENAME-updates universe
# deb-src URL/ubuntu/ CODENAME-updates universe
## Software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu team,
## and may not be under a free licence. Please satisfy yourself as your rights
## to use the software. Also, please note that software in Multiverse WILL NOT
## receive any review or updates from the Ubuntu security team directly.
deb URL/ubuntu/ CODENAME multiverse
# deb-src URL/ubuntu/ CODENAME multiverse
deb URL/ubuntu/ CODENAME-updates multiverse
# deb-src URL/ubuntu/ CODENAME-updates multiverse
## Software from this repository contains tested security updates from the
## Ubuntu security team.
deb http://security.ubuntu.com/ubuntu CODENAME-security main restricted
# deb-src http://security.ubuntu.com/ubuntu CODENAME-security main restricted
deb http://security.ubuntu.com/ubuntu CODENAME-security universe
# deb-src http://security.ubuntu.com/ubuntu CODENAME-security universe
deb http://security.ubuntu.com/ubuntu CODENAME-security multiverse
# deb-src http://security.ubuntu.com/ubuntu CODENAME-security multiverse
## Software from this repository may not have been tested as extensively as
## software contained in the main release, although it includes newer versions
## of some applications which may provide useful features. Also, please note
## that software in Backports WILL NOT receive any review or updates from the
## Ubuntu security team.
deb URL/ubuntu/ CODENAME-backports main restricted universe multiverse
# deb-src URL/ubuntu/ CODENAME-backports main restricted universe multiverse
## Uncomment the following two lines to add software from Canonical's
## "partner" repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu CODENAME partner
# deb-src http://archive.canonical.com/ubuntu CODENAME partner"""
SUBDOMAINS_BY_COUNTRY_CODE = {"US": "us.",
"AU": "au.",
"SE": "no.",
"NO": "no.",
"NZ": "nz.",
"NL": "nl.",
"KR": "kr.",
"DE": "de.",
"GE": "ge.",
"PF": "pf.",
"CZ": "cz.",
"HR": "hr."}
def getcountrycode():
"""
Return the two-letter country code or an empty string.
Tries to determine the country code based on the public IP address,
if the device is connected to the Internet. Otherwise it returns
an empty string.
"""
if libcalamares.globalstorage.value("hasInternet"):
geoipurl = libcalamares.job.configuration["geoip"]["url"]
try:
with urllib.request.urlopen(geoipurl, timeout=75) as http_response:
localedata = json.loads(http_response.read().decode())
except HTTPError as http_error:
logging.http_error("Data not retrieved because %s - URL: %s",
http_error, geoipurl)
except URLError as url_error:
if isinstance(url_error.reason, socket.timeout):
logging.error("Socket timed out - URL %s", geoipurl)
else:
logging.error("Non-timeout protocol error.")
else:
logging.info("Country successfully determined.")
return localedata["country"]
else:
return ""
geoip_config = libcalamares.job.configuration["geoip"]
try:
with urllib.request.urlopen(geoip_config["url"], timeout=75) as resp:
if geoip_config["style"] == "json":
return json.loads(resp.read().decode())["country_code"]
elif geoip_config["style"] == "xml":
return ET.parse(resp).getroot().find("CountryCode").text
except (HTTPError, URLError, socket.timeout):
logging.error("Failed to get country code.")
def get_subdomain_by_country(countrycode):
"""Return the subdomain for the given countrycode
or an empty string.
"""
if countrycode in SUBDOMAINS_BY_COUNTRY_CODE.keys():
return SUBDOMAINS_BY_COUNTRY_CODE[countrycode]
else:
return ""
def get_subdomain_by_country(country_code):
return SUBDOMAINS_BY_COUNTRY_CODE.get(country_code, "")
def getcodename():
"""Return the codename of the distribution, similar to lsb_release -cs"""
return get_distro_information()["CODENAME"]
def write_file(path, content):
with open(path, "w") as f:
f.write(content)
def changesources(subdomain):
"""Replace the placeholders and then create the sources.list"""
distro = libcalamares.job.configuration["distribution"]
url = "http://{}{}".format(subdomain,
libcalamares.job.configuration["baseUrl"])
global sources
sources = sources.replace("DISTRIBUTION", distro)
sources = sources.replace("CODENAME", getcodename())
sources = sources.replace("URL", url)
sources = sources.replace("DATE", strftime("%Y-%m-%d"))
def run():
country_code = get_country_code()
subdomain = get_subdomain_by_country(country_code)
base_url = "http://{}{}/ubuntu".format(subdomain, libcalamares.job.configuration["baseUrl"])
codename = distro.codename()
filepath = libcalamares.globalstorage.value("rootMountPoint")
filepath += "/etc/apt/sources.list"
with open(filepath, "r+") as sourcesfile:
sourcesfile.seek(0)
sourcesfile.write(sources)
sourcesfile.truncate()
root_mount_point = libcalamares.globalstorage.value("rootMountPoint")
sources = get_sources_template().format(date=strftime("%Y-%m-%d"), distro=libcalamares.job.configuration["distribution"], url=base_url, codename=codename)
write_file(f"{root_mount_point}/etc/apt/sources.list.d/ubuntu.sources", sources)
remove(f"{root_mount_point}/etc/apt/sources.list")
def run():
"""Autoselect a mirror and create the sources.list file."""
countrycode = getcountrycode()
subdomain = get_subdomain_by_country(countrycode)
libcalamares.globalstorage.insert("mirrorURL", base_url)
libcalamares.globalstorage.insert("ubuntuCodename", codename)
changesources(subdomain)

@ -1,10 +0,0 @@
---
dontChroot: true
timeout: 10
firmwareType:
efi:
- -cp /cdrom/casper/vmlinuz ${ROOT}/boot/vmlinuz-$(uname -r)
- -mkdir -pv ${ROOT}/media/cdrom
- -mount --bind /cdrom ${ROOT}/media/cdrom
bios:
- -cp /cdrom/casper/vmlinuz ${ROOT}/boot/vmlinuz-$(uname -r)

@ -1,2 +0,0 @@
crypttabOptions: luks,keyscript=/bin/cat
efiMountOptions: umask=0077

@ -1,8 +0,0 @@
---
region: "America"
zone: "New_York"
localeGenPath: "/etc/locale.gen"
geoip:
style: "xml"
url: "https://geoip.ubuntu.com/lookup"
selector: "TimeZone"

@ -1,8 +0,0 @@
---
# Whether to create /etc/machine-id for systemd.
systemd: true
# Whether to create /var/lib/dbus/machine-id for D-Bus.
dbus: true
# Whether /var/lib/dbus/machine-id should be a symlink to /etc/machine-id
# (ignored if dbus is false, or if there is no /etc/machine-id to point to).
dbus-symlink: true

@ -1,38 +0,0 @@
extraMounts:
- device: proc
fs: proc
mountPoint: /proc
- device: sys
fs: sysfs
mountPoint: /sys
- device: /dev
mountPoint: /dev
options: [ bind ]
- device: tmpfs
fs: tmpfs
mountPoint: /run
- device: /run/udev
mountPoint: /run/udev
options: [ bind ]
- device: efivarfs
fs: efivarfs
mountPoint: /sys/firmware/efi/efivars
efi: true
- device: /run/systemd/resolve
mountPoint: /run/systemd/resolve
options: [ bind ]
mountOptions:
- filesystem: default
options: [ defaults ]
- filesystem: btrfs
options: [ defaults, noatime, autodefrag ]
ssdOptions: [ discard, compress=lzo ]
- filesystem: ext4
ssdOptions: [ discard ]
- filesystem: jfs
ssdOptions: [ discard ]
- filesystem: xfs
ssdOptions: [ discard ]
- filesystem: swap
ssdOptions: [ discard ]

@ -1,31 +0,0 @@
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
include(FeatureSummary)
set( CMAKE_CXX_STANDARD 17 )
set( CMAKE_CXX_STANDARD_REQUIRED ON )
set( CALAMARES_VERSION_REQUIRED 3.3.0 )
find_package(ECM ${ECM_VERSION} NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_MODULE_PATH})
include(KDEInstallDirs)
find_package(KF5 REQUIRED COMPONENTS CoreAddons)
find_package(Calamares ${CALAMARES_VERSION_REQUIRED} NO_CMAKE_PACKAGE_REGISTRY)
if (NOT TARGET Calamares::calamares OR NOT TARGET Calamares::calamaresui)
find_package(Calamares ${CALAMARES_VERSION_REQUIRED} REQUIRED)
endif()
message(STATUS "Found Calamares version ${Calamares_VERSION}")
message(STATUS " libraries ${Calamares_LIB_DIRS}")
message(STATUS "")
calamares_add_plugin( pkgselect
TYPE viewmodule
EXPORT_MACRO PLUGINDLLEXPORT_PRO
SOURCES
PackageSelectViewStep.cpp
UI
pkgselect.ui
SHARED_LIB
)

@ -1,208 +0,0 @@
#include "PackageSelectViewStep.h"
#include "JobQueue.h"
#include "GlobalStorage.h"
#include "Branding.h"
#include "network/Manager.h"
#include <QVariantMap>
PackageSelectViewStep::PackageSelectViewStep( QObject* parent )
: Calamares::ViewStep( parent ),
m_packageSelections(QVariantMap()),
ui(new Ui::pkgselect)
{
m_widget = new QWidget();
ui->setupUi(m_widget);
}
PackageSelectViewStep::~PackageSelectViewStep()
{
delete ui;
delete m_widget;
}
QString
PackageSelectViewStep::prettyName() const
{
return tr( "Customize" );
}
bool PackageSelectViewStep::exists_and_true(const QString& key) const
{
return m_packageSelections.contains(key) && m_packageSelections[key].toBool() == true;
}
QWidget* PackageSelectViewStep::widget()
{
return m_widget;
}
Calamares::JobList PackageSelectViewStep::jobs() const
{
return Calamares::JobList();
}
bool PackageSelectViewStep::isNextEnabled() const
{
return true;
}
bool PackageSelectViewStep::isBackEnabled() const
{
return true;
}
bool PackageSelectViewStep::isAtBeginning() const
{
return true;
}
bool PackageSelectViewStep::isAtEnd() const
{
return true;
}
void PackageSelectViewStep::onActivate()
{
// Connect the Minimal Installation radio button
connect(ui->minimal_button, &QRadioButton::toggled, this, [this](bool checked) {
Calamares::Network::Manager network;
if (checked && network.hasInternet()) {
ui->extraparty_scroll->setVisible(false);
ui->extraparty_text->setVisible(false);
ui->mandatory_warning_label->setVisible(false);
ui->element_button->setChecked(false);
ui->thunderbird_button->setChecked(false);
ui->virtmanager_button->setChecked(false);
ui->krita_button->setChecked(false);
ui->element_button->setEnabled(false);
ui->thunderbird_button->setEnabled(false);
ui->virtmanager_button->setEnabled(false);
ui->krita_button->setEnabled(false);
}
});
// Connect the Normal Installation radio button
connect(ui->normal_button, &QRadioButton::toggled, this, [this](bool checked) {
Calamares::Network::Manager network;
if (checked && network.hasInternet()) {
ui->extraparty_scroll->setVisible(true);
ui->extraparty_text->setVisible(true);
ui->mandatory_warning_label->setVisible(true);
ui->element_button->setChecked(false);
ui->thunderbird_button->setChecked(false);
ui->virtmanager_button->setChecked(false);
ui->krita_button->setChecked(false);
ui->element_button->setEnabled(true);
ui->thunderbird_button->setEnabled(true);
ui->virtmanager_button->setEnabled(true);
ui->krita_button->setEnabled(true);
}
});
// Connect the Full Installation radio button
connect(ui->full_button, &QRadioButton::toggled, this, [this](bool checked) {
Calamares::Network::Manager network;
if (checked && network.hasInternet()) {
ui->extraparty_scroll->setVisible(true);
ui->extraparty_text->setVisible(true);
ui->mandatory_warning_label->setVisible(true);
ui->element_button->setChecked(true);
ui->thunderbird_button->setChecked(true);
ui->virtmanager_button->setChecked(true);
ui->krita_button->setChecked(true);
ui->element_button->setEnabled(false);
ui->thunderbird_button->setEnabled(false);
ui->virtmanager_button->setEnabled(false);
ui->krita_button->setEnabled(false);
}
});
// Disable many bits of functionality if network is not enabled
Calamares::Network::Manager network;
if (!network.hasInternet()) {
ui->full_button->setVisible(false);
ui->full_text->setVisible(false);
ui->left_spacer->changeSize(20, 20, QSizePolicy::Fixed, QSizePolicy::Fixed);
ui->right_spacer->changeSize(0, 0, QSizePolicy::Fixed, QSizePolicy::Fixed);
ui->additional_label->setVisible(false);
ui->updates_button->setVisible(false);
ui->updates_text->setVisible(false);
ui->extraparty_scroll->setVisible(false);
ui->extraparty_text->setVisible(false);
ui->mandatory_warning_label->setVisible(false);
ui->element_button->setChecked(false);
ui->thunderbird_button->setChecked(false);
ui->virtmanager_button->setChecked(false);
ui->krita_button->setChecked(false);
ui->element_button->setEnabled(false);
ui->thunderbird_button->setEnabled(false);
ui->virtmanager_button->setEnabled(false);
ui->krita_button->setEnabled(false);
}
// Thunderbird exists on Kubuntu already
if (Calamares::Branding::instance()->componentName() == "kubuntu") {
ui->thunderbird_button->setChecked(false);
ui->thunderbird_button->setEnabled(false);
ui->thunderbird_button->setVisible(false);
ui->thunderbird_text->setVisible(false);
ui->thunderbird_spacer->changeSize(0, 0, QSizePolicy::Fixed, QSizePolicy::Fixed);
ui->thunderbird_spacer->invalidate();
}
// Connect the storage items
/// Full/Normal/Minimal
connect(ui->minimal_button, &QRadioButton::toggled, this, &PackageSelectViewStep::updatePackageSelections);
connect(ui->normal_button, &QRadioButton::toggled, this, &PackageSelectViewStep::updatePackageSelections);
connect(ui->full_button, &QRadioButton::toggled, this, &PackageSelectViewStep::updatePackageSelections);
/// Additional Options
connect(ui->updates_button, &QRadioButton::toggled, this, &PackageSelectViewStep::updatePackageSelections);
/// Third-Party Apps
connect(ui->element_button, &QCheckBox::toggled, this, &PackageSelectViewStep::updatePackageSelections);
connect(ui->thunderbird_button, &QCheckBox::toggled, this, &PackageSelectViewStep::updatePackageSelections);
connect(ui->virtmanager_button, &QCheckBox::toggled, this, &PackageSelectViewStep::updatePackageSelections);
connect(ui->krita_button, &QCheckBox::toggled, this, &PackageSelectViewStep::updatePackageSelections);
}
void
PackageSelectViewStep::onLeave()
{
Calamares::GlobalStorage* gs = Calamares::JobQueue::instance()->globalStorage();
QVariantMap config;
for (auto i = m_packageSelections.begin(); i != m_packageSelections.end(); ++i) {
if (exists_and_true(i.key())) {
config.insert(i.key(), i.value());
}
}
gs->insert("packages", config);
}
void PackageSelectViewStep::updatePackageSelections(bool checked) {
QObject* sender_obj = sender();
if (!sender_obj) return;
QString key = sender_obj->objectName();
// snake_case -> camelCase
QStringList parts = key.split("_", Qt::SkipEmptyParts);
for (int i = 1; i < parts.size(); ++i) {
parts[i][0] = parts[i][0].toUpper();
}
QString camelCaseKey = parts.join("");
m_packageSelections[camelCaseKey] = checked;
}
CALAMARES_PLUGIN_FACTORY_DEFINITION( PackageSelectViewStepFactory, registerPlugin< PackageSelectViewStep >(); )

@ -1,52 +0,0 @@
#ifndef PACKAGESELECTVIEWSTEP_H
#define PACKAGESELECTVIEWSTEP_H
#include <QFile>
#include <QTextStream>
#include "DllMacro.h"
#include "utils/PluginFactory.h"
#include "viewpages/ViewStep.h"
#include "ui_pkgselect.h"
namespace Ui {
class pkgselect;
}
class PLUGINDLLEXPORT PackageSelectViewStep : public Calamares::ViewStep
{
Q_OBJECT
public:
explicit PackageSelectViewStep( QObject* parent = nullptr );
~PackageSelectViewStep() override;
QString prettyName() const override;
QWidget* widget() override;
Calamares::JobList jobs() const override;
bool isNextEnabled() const override;
bool isBackEnabled() const override;
bool isAtBeginning() const override;
bool isAtEnd() const override;
void onActivate() override;
void onLeave() override;
QVariantMap packageSelections() const { return m_packageSelections; }
void updatePackageSelections(bool checked);
signals:
void packageSelectionsChanged();
private:
QVariantMap m_packageSelections;
Ui::pkgselect *ui;
QWidget* m_widget;
bool exists_and_true(const QString& key) const;
};
CALAMARES_PLUGIN_FACTORY_DECLARATION( PackageSelectViewStepFactory )
#endif

@ -1,607 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>pkgselect</class>
<widget class="QWidget" name="pkgselect">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>830</width>
<height>943</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<property name="styleSheet">
<string notr="true">QRadioButton {
spacing: 13px;
}
QCheckBox {
spacing: 13px;
}
QLabel {
padding-left: 33px;
padding-right: 33px;
}</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="9" column="1">
<widget class="QRadioButton" name="minimal_button">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>21</height>
</size>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Minimal Installation</string>
</property>
</widget>
</item>
<item row="0" column="2">
<spacer name="right_spacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Minimum</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="21" column="1">
<spacer name="pushup">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row="20" column="0" colspan="3">
<widget class="QLabel" name="mandatory_warning_label">
<property name="font">
<font>
<pointsize>11</pointsize>
<weight>75</weight>
<italic>false</italic>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Note: Ubuntu and flavors are NOT responsible for third-party software installed from this list.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="14" column="1">
<widget class="QLabel" name="updates_text">
<property name="font">
<font>
<pointsize>10</pointsize>
<italic>true</italic>
</font>
</property>
<property name="text">
<string>This saves time after installation, and keeps your system secure</string>
</property>
</widget>
</item>
<item row="0" column="1">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="1">
<widget class="QRadioButton" name="full_button">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>21</height>
</size>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Full Installation</string>
</property>
</widget>
</item>
<item row="0" column="0">
<spacer name="left_spacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Minimum</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="3" column="1">
<widget class="QLabel" name="full_text">
<property name="font">
<font>
<pointsize>10</pointsize>
<italic>true</italic>
</font>
</property>
<property name="text">
<string>All applications in the Normal Installation, and all extra third-party packages listed below</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item row="8" column="1">
<spacer name="verticalSpacer_6">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item row="13" column="1">
<widget class="QCheckBox" name="updates_button">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>21</height>
</size>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Download and install updates following installation</string>
</property>
</widget>
</item>
<item row="18" column="1">
<spacer name="verticalSpacer_11">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>3</height>
</size>
</property>
</spacer>
</item>
<item row="19" column="1">
<widget class="QScrollArea" name="extraparty_scroll">
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="extraparty_scrollhouse">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>762</width>
<height>281</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<item row="8" column="1">
<widget class="QCheckBox" name="virtmanager_button">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>21</height>
</size>
</property>
<property name="text">
<string>Virtual Machine Manager</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QCheckBox" name="element_button">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>21</height>
</size>
</property>
<property name="text">
<string>Element</string>
</property>
</widget>
</item>
<item row="11" column="1">
<widget class="QCheckBox" name="krita_button">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>21</height>
</size>
</property>
<property name="text">
<string>Krita</string>
</property>
</widget>
</item>
<item row="6" column="1">
<spacer name="thunderbird_spacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="1">
<widget class="QLabel" name="element_text">
<property name="font">
<font>
<pointsize>10</pointsize>
<italic>true</italic>
</font>
</property>
<property name="text">
<string>Matrix-based end-to-end encrypted messenger and secure collaboration app</string>
</property>
</widget>
</item>
<item row="10" column="1">
<spacer name="verticalSpacer_10">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item row="9" column="1">
<widget class="QLabel" name="virtmanager_text">
<property name="font">
<font>
<pointsize>10</pointsize>
<italic>true</italic>
</font>
</property>
<property name="text">
<string>Desktop user interface for managing virtual machines through libvirt</string>
</property>
</widget>
</item>
<item row="0" column="1">
<spacer name="verticalSpacer_4">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>1</width>
<height>5</height>
</size>
</property>
</spacer>
</item>
<item row="5" column="1">
<widget class="QLabel" name="thunderbird_text">
<property name="font">
<font>
<pointsize>10</pointsize>
<italic>true</italic>
</font>
</property>
<property name="text">
<string>Email, newsfeed, chat, and calendaring client</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QCheckBox" name="thunderbird_button">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>21</height>
</size>
</property>
<property name="text">
<string>Thunderbird</string>
</property>
</widget>
</item>
<item row="3" column="1">
<spacer name="verticalSpacer_8">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item row="13" column="1">
<spacer name="pushup_tiny">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>6</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="0">
<spacer name="horizontalSpacer_12">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>5</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="12" column="1">
<widget class="QLabel" name="krita_text">
<property name="font">
<font>
<pointsize>10</pointsize>
<italic>true</italic>
</font>
</property>
<property name="text">
<string>Graphics editor designed primarily for digital art and 2D animation</string>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
<item row="10" column="1">
<widget class="QLabel" name="minimal_text">
<property name="font">
<font>
<pointsize>10</pointsize>
<italic>true</italic>
</font>
</property>
<property name="text">
<string>Only the desktop environment</string>
</property>
</widget>
</item>
<item row="15" column="1">
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="1">
<widget class="QLabel" name="apps_label">
<property name="font">
<font>
<pointsize>18</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">padding-left: 0px; padding-right: 0px;</string>
</property>
<property name="text">
<string>Installation Mode</string>
</property>
</widget>
</item>
<item row="12" column="1">
<widget class="QLabel" name="additional_label">
<property name="font">
<font>
<pointsize>18</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">padding-left: 0px; padding-right: 0px;</string>
</property>
<property name="text">
<string>Additional Options</string>
</property>
</widget>
</item>
<item row="7" column="1">
<widget class="QLabel" name="normal_text">
<property name="font">
<font>
<pointsize>10</pointsize>
<italic>true</italic>
</font>
</property>
<property name="text">
<string>Web browser, utilities, office software, games, and media players</string>
</property>
</widget>
</item>
<item row="6" column="1">
<widget class="QRadioButton" name="normal_button">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>21</height>
</size>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Normal Installation</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="16" column="1">
<widget class="QLabel" name="extraparty_text">
<property name="font">
<font>
<pointsize>18</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">padding-left: 0px; padding-right: 0px;</string>
</property>
<property name="text">
<string>Install additional third-party packages</string>
</property>
</widget>
</item>
<item row="11" column="1">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="4" column="1">
<spacer name="verticalSpacer_5">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item row="17" column="1">
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>0</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

@ -1,5 +0,0 @@
---
dontChroot: false
timeout: 30
script:
- "touch ${ROOT}/boot/initrd.img-$(uname -r)"

@ -1,7 +0,0 @@
---
dontChroot: false
timeout: 120
script:
- "sed -i 's/oem:x:1000:1000/oem:x:60999:60999/' /etc/passwd"
- "sed -i 's/oem:x:1000/oem:x:60999/' /etc/group"
- "chown -R 60999:60999 /home/oem"

@ -1,5 +0,0 @@
---
dontChroot: true
timeout: 30
script:
- /usr/libexec/fixconkeys-part1 ${ROOT}

@ -1,5 +0,0 @@
---
dontChroot: false
timeout: 10800
script:
- /usr/libexec/fixconkeys-part2

@ -1,4 +0,0 @@
---
# Setting emergency to true will make it so this module is still run
# when a prior module fails
emergency: true

@ -1,5 +0,0 @@
module snap-seed-glue
go 1.22.1
require github.com/snapcore/snapd v0.0.0-20240328101726-fdc222fc37a0

@ -1,289 +0,0 @@
package main
// Copyright (C) 2024 Simon Quigley <tsimonq2@ubuntu.com>
//
// 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 (at your option) 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.
import (
"flag"
"fmt"
"io/ioutil"
"log"
"os"
"os/exec"
"path/filepath"
"strings"
"github.com/snapcore/snapd/snap"
"github.com/snapcore/snapd/interfaces/builtin"
"gopkg.in/yaml.v2"
)
type seed struct {
Snaps []struct {
Name string `yaml:"name"`
Channel string `yaml:"channel"`
File string `yaml:"file"`
} `yaml:"snaps"`
}
func main() {
snap.SanitizePlugsSlots = builtin.SanitizePlugsSlots
var seed_directory string
flag.StringVar(&seed_directory, "seed", "/var/lib/snapd/seed", "Specify the seed directory")
flag.Parse()
snap_set := make(map[string]bool)
snaps_dir := filepath.Join(seed_directory, "snaps")
assertions_dir := filepath.Join(seed_directory, "assertions")
seed_yaml := filepath.Join(seed_directory, "seed.yaml")
ensure_seed_yaml(seed_yaml)
existing_snaps_in_yaml := load_existing_snaps(seed_yaml)
for _, snap_info := range flag.Args() {
parts := strings.SplitN(snap_info, "=", 2)
snap_name := parts[0]
channel := "stable" // Default to stable if no channel is specified
if len(parts) == 2 {
channel = parts[1]
}
process_snap_with_prereqs(snap_name, channel, &snap_set, snaps_dir, assertions_dir, seed_yaml, existing_snaps_in_yaml)
}
essentialSnaps := []string{"snapd", "bare"}
for _, snapName := range essentialSnaps {
if !existing_snaps_in_yaml[snapName] {
process_snap_with_prereqs(snapName, "stable", &snap_set, snaps_dir, assertions_dir, seed_yaml, existing_snaps_in_yaml)
}
}
update_seed_yaml(snaps_dir, seed_yaml, snap_set, existing_snaps_in_yaml)
remove_state_json(filepath.Join(seed_directory, "..", "state.json"))
ensure_assertions(assertions_dir)
validate_seed(seed_yaml)
}
func ensure_seed_yaml(seed_yaml string) {
if _, err := os.Stat(seed_yaml); os.IsNotExist(err) {
file, err := os.Create(seed_yaml)
if err != nil {
log.Fatalf("Failed to create seed.yaml: %v", err)
}
defer file.Close()
file.WriteString("snaps:\n")
}
}
func load_existing_snaps(seed_yaml string) map[string]bool {
file, err := ioutil.ReadFile(seed_yaml)
if err != nil {
log.Fatalf("Failed to read seed.yaml: %v", err)
}
var seed_data seed
if err := yaml.Unmarshal(file, &seed_data); err != nil {
log.Fatalf("Failed to parse seed.yaml: %v", err)
}
existing := make(map[string]bool)
for _, snap := range seed_data.Snaps {
existing[snap.Name] = true
}
return existing
}
func update_seed_yaml(snaps_dir, seed_yaml string, snap_set map[string]bool, existing_snaps map[string]bool) {
seed_data := load_seed_data(seed_yaml)
for snap_name := range snap_set {
if !existing_snaps[snap_name] {
snap_files, err := filepath.Glob(filepath.Join(snaps_dir, fmt.Sprintf("%s_*.snap", snap_name)))
if err != nil || len(snap_files) == 0 {
log.Printf("No snap file found for %s", snap_name)
return
}
snap_file := filepath.Base(snap_files[0])
log.Printf(snap_file)
// FIXME: should put the real name of the channel in here
seed_data.Snaps = append(seed_data.Snaps, struct {
Name string `yaml:"name"`
Channel string `yaml:"channel"`
File string `yaml:"file"`
}{snap_name, "latest/stable", snap_file})
}
}
// Marshal to YAML and write back to file
data, err := yaml.Marshal(&seed_data)
if err != nil {
log.Fatalf("Failed to marshal seed data to YAML: %v", err)
}
if err := ioutil.WriteFile(seed_yaml, data, 0644); err != nil {
log.Fatalf("Failed to write updated seed.yaml: %v", err)
}
}
func load_seed_data(seed_yaml string) seed {
file, err := ioutil.ReadFile(seed_yaml)
if err != nil {
log.Fatalf("Failed to read seed.yaml: %v", err)
}
var seed_data seed
if err := yaml.Unmarshal(file, &seed_data); err != nil {
log.Fatalf("Failed to parse seed.yaml: %v", err)
}
return seed_data
}
func remove_state_json(state_json_path string) {
if _, err := os.Stat(state_json_path); err == nil {
os.Remove(state_json_path)
}
}
func validate_seed(seed_yaml string) {
cmd := exec.Command("snap", "debug", "validate-seed", seed_yaml)
if err := cmd.Run(); err != nil {
log.Printf("Error validating seed: %v", err)
}
}
func process_snap_with_prereqs(snap_name, channel string, snap_set *map[string]bool, snaps_dir, assertions_dir, seed_yaml string, existing_snaps_in_yaml map[string]bool) {
if (*snap_set)[snap_name] {
return
}
// Download the snap if not already processed or listed in seed.yaml
if !existing_snaps_in_yaml[snap_name] {
cmd := exec.Command("snap", "download", snap_name, "--channel="+channel, "--target-directory="+snaps_dir)
if err := cmd.Run(); err != nil {
log.Printf("Error downloading snap %s from channel %s: %v", snap_name, channel, err)
return
}
}
snap_files, err := filepath.Glob(filepath.Join(snaps_dir, fmt.Sprintf("%s_*.snap", snap_name)))
if err != nil || len(snap_files) == 0 {
log.Printf("No snap file found for %s in channel %s", snap_name, channel)
return
}
snap_file := snap_files[0]
cmd := exec.Command("unsquashfs", "-n", "-d", filepath.Join(snaps_dir, fmt.Sprintf("%s_meta", snap_name)), snap_file, "meta/snap.yaml")
if err := cmd.Run(); err != nil {
log.Printf("Error extracting meta/snap.yaml from snap %s: %v", snap_name, err)
return
}
yaml_data, err := ioutil.ReadFile(filepath.Join(snaps_dir, fmt.Sprintf("%s_meta/meta/snap.yaml", snap_name)))
if err != nil {
log.Printf("Error reading snap.yaml file for %s: %v", snap_name, err)
return
}
info, err := snap.InfoFromSnapYaml(yaml_data)
if err != nil {
log.Printf("Error parsing snap.yaml data for %s: %v", snap_name, err)
return
}
(*snap_set)[snap_name] = true
tracker := snap.SimplePrereqTracker{}
missing_provider_content_tags := tracker.MissingProviderContentTags(info, nil)
for provider_snap := range missing_provider_content_tags {
if !(*snap_set)[provider_snap] {
process_snap_with_prereqs(provider_snap, "stable", snap_set, snaps_dir, assertions_dir, seed_yaml, existing_snaps_in_yaml)
}
}
if info.Base != "" && !(*snap_set)[info.Base] {
process_snap_with_prereqs(info.Base, "stable", snap_set, snaps_dir, assertions_dir, seed_yaml, existing_snaps_in_yaml)
}
assert_files, err := filepath.Glob(filepath.Join(snaps_dir, "*.assert"))
for _, file := range assert_files {
target_path := filepath.Join(assertions_dir, filepath.Base(file))
err := os.Rename(file, target_path)
if err != nil {
log.Printf("Failed to move %s to %s: %v", file, assertions_dir, err)
}
}
os.RemoveAll(filepath.Join(snaps_dir, fmt.Sprintf("%s_meta", snap_name)))
}
func ensure_assertions(assertions_dir string) {
model := "generic-classic"
brand := "generic"
series := "16"
model_assertion_path := filepath.Join(assertions_dir, "model")
account_key_assertion_path := filepath.Join(assertions_dir, "account-key")
account_assertion_path := filepath.Join(assertions_dir, "account")
// Check and generate model assertion
if _, err := os.Stat(model_assertion_path); os.IsNotExist(err) {
output, err := exec.Command("snap", "known", "--remote", "model", "series="+series, "model="+model, "brand-id="+brand).CombinedOutput()
if err != nil {
log.Fatalf("Failed to fetch model assertion: %v, Output: %s", err, string(output))
}
ioutil.WriteFile(model_assertion_path, output, 0644)
}
// Generate account-key assertion if not exists
if _, err := os.Stat(account_key_assertion_path); os.IsNotExist(err) {
signKeySha3 := grep_pattern(model_assertion_path, "sign-key-sha3-384: ")
output, err := exec.Command("snap", "known", "--remote", "account-key", "public-key-sha3-384="+signKeySha3).CombinedOutput()
if err != nil {
log.Fatalf("Failed to fetch account-key assertion: %v, Output: %s", err, string(output))
}
ioutil.WriteFile(account_key_assertion_path, output, 0644)
}
// Generate account assertion if not exists
if _, err := os.Stat(account_assertion_path); os.IsNotExist(err) {
accountId := grep_pattern(account_key_assertion_path, "account-id: ")
output, err := exec.Command("snap", "known", "--remote", "account", "account-id="+accountId).CombinedOutput()
if err != nil {
log.Fatalf("Failed to fetch account assertion: %v, Output: %s", err, string(output))
}
ioutil.WriteFile(account_assertion_path, output, 0644)
}
}
func grep_pattern(filePath, pattern string) string {
content, err := ioutil.ReadFile(filePath)
if err != nil {
log.Fatalf("Failed to read from file %s: %v", filePath, err)
}
lines := strings.Split(string(content), "\n")
for _, line := range lines {
if strings.Contains(line, pattern) {
parts := strings.SplitN(line, ":", 2)
if len(parts) == 2 {
return strings.TrimSpace(parts[1])
}
}
}
log.Fatalf("Pattern %s not found in file %s", pattern, filePath)
return ""
}

@ -1,10 +0,0 @@
kubuntu/branding/ etc/calamares/
kubuntu/calamares-launch-normal usr/bin/
kubuntu/calamares-logs-helper usr/bin/
kubuntu/kubuntu-calamares.desktop usr/share/applications/
kubuntu/modules/ etc/calamares/
kubuntu/oem/calamares-launch-oem usr/bin/
kubuntu/oem/calamares-launch-oem.desktop usr/share/applications/
kubuntu/oem/calamares-oemprep.sh usr/libexec/
kubuntu/oemconfig.tar.gz etc/calamares/
kubuntu/settings.conf etc/calamares/

@ -1,7 +0,0 @@
# sudo will always be present in the target system
calamares-settings-kubuntu: desktop-command-not-in-package sudo *
# there will be no manpage for any of this in the foreseeable future
calamares-settings-kubuntu: no-manual-page *
# We're just extracting a log file and preserving it for the user to look at
# after the installation, this is normal.
calamares-settings-kubuntu: uses-dpkg-database-directly [usr/bin/calamares-logs-helper]

@ -1,11 +1,5 @@
lubuntu/branding/ etc/calamares/
lubuntu/calamares-launch-normal usr/bin/
lubuntu/calamares-logs-helper usr/bin/
lubuntu/lubuntu-calamares.desktop usr/share/applications/
lubuntu/lubuntu-installer.svg usr/share/icons/hicolor/scalable/apps/
lubuntu/modules/ etc/calamares/
lubuntu/oem/calamares-launch-oem usr/bin/
lubuntu/oem/calamares-launch-oem.desktop usr/share/applications/
lubuntu/oem/calamares-oemprep.sh usr/libexec/
lubuntu/oemconfig.tar.gz etc/calamares/
lubuntu/settings.conf etc/calamares/

@ -1,7 +1,3 @@
# sudo will always exist in the target system
calamares-settings-lubuntu: desktop-command-not-in-package sudo *
# there will be no manpage for any of this in the foreseeable future
calamares-settings-lubuntu: no-manual-page *
# We're just extracting a log file and preserving it for the user to look at
# after the installation, this is normal.
calamares-settings-lubuntu: uses-dpkg-database-directly [usr/bin/calamares-logs-helper]
# The .desktop file uses bash to run firefox as the local
# user. bash is included in the system.
calamares-settings-lubuntu: desktop-command-not-in-package usr/share/applications/lubuntu-calamares.desktop bash

@ -1,4 +0,0 @@
# this is an internal implementation detail, no manpage needed
calamares-settings-ubuntu-common: no-manual-page [usr/bin/calamares_snap_install]
# this is normal and not a problem
calamares-settings-ubuntu-common: executable-in-usr-lib [usr/lib/x86_64-linux-gnu/calamares/modules/automirror/main.py]

@ -1,12 +0,0 @@
ubuntuunity/branding/ etc/calamares/
ubuntuunity/calamares-launch-normal usr/bin/
ubuntuunity/calamares-logs-helper usr/bin/
ubuntuunity/kvantum.kvconfig etc/xdg/Kvantum/
ubuntuunity/modules/ etc/calamares/
ubuntuunity/oem/calamares-launch-oem usr/bin/
ubuntuunity/oem/calamares-launch-oem.desktop usr/share/applications/
ubuntuunity/oem/calamares-oemprep.sh usr/libexec/
ubuntuunity/oemconfig.tar.gz etc/calamares/
ubuntuunity/settings.conf etc/calamares/
ubuntuunity/ubuntu-unity-calamares.desktop usr/share/applications/
ubuntuunity/ubuntu-unity-installer.svg usr/share/icons/hicolor/scalable/apps/

@ -1,7 +0,0 @@
# sudo will always be present in the target system
calamares-settings-ubuntu-unity: desktop-command-not-in-package sudo *
# there will be no manpage for any of this in the foreseeable future
calamares-settings-ubuntu-unity: no-manual-page *
# We're just extracting a log file and preserving it for the user to look at
# after the installation, this is normal.
calamares-settings-ubuntu-unity: uses-dpkg-database-directly [usr/bin/calamares-logs-helper]

735
debian/changelog vendored

@ -1,737 +1,8 @@
calamares-settings-ubuntu (1:24.10.5) oracular; urgency=medium
calamares-settings-ubuntu (1:20.04.2.1) focal; urgency=medium
* Update Kubuntu slideshow for 24.10 (LP: #2080925)
* Switch to Canonical's GeoIP service (LP: #1899854).
-- Rik Mills <rikmills@kde.org> Sat, 28 Sep 2024 21:46:11 +0100
calamares-settings-ubuntu (1:24.10.4) oracular; urgency=medium
* Fix welcome image for Kubuntu, Lubuntu, and Ubuntu Unity. (LP: #2080925)
* Set root partition name properly for Kubuntu, Lubuntu, and Ubuntu Unity.
(LP: #2065602)
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Tue, 24 Sep 2024 22:23:11 -0500
calamares-settings-ubuntu (1:24.10.3) oracular; urgency=medium
* Fix pkgselect UI becoming centered when minimal install mode is selected.
(LP: #2076303)
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Thu, 08 Aug 2024 14:25:24 -0500
calamares-settings-ubuntu (1:24.10.2) oracular; urgency=medium
* kubuntu: Change donate URL to point to Kubuntu's donation page
* kubuntu: Use networkcheck.kde.org for checking for an Internet connection
* kubuntu: Do not recommend that the user have an Internet connection during
first-time user setup after an OEM installation
* ubuntuunity: Do not recommend that the user have an Internet connection
during first-time user setup after an OEM installation
* all: Change the UID of the OEM configuration user to 60999.
- This is done because otherwise the OEM configuration user is given UID
1000. This results in the first real user on the machine having UID
1001, which could cause issues in a single-user deployment where the
user must have or is assumed to have UID 1000. Setting the OEM
configuration user's UID to 60999 results in the first real user having
UID 1000. This is similar (though not identical) to Ubiquity's behavior
with the OEM configuration user.
* kubuntu: Use QT_QPA_PLATFORMTHEME="kde" rather than
QT_STYLE_OVERRIDE="Breeze" for the OEM first-time setup session.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Wed, 12 Jun 2024 23:26:13 -0500
calamares-settings-ubuntu (1:24.10.1) oracular; urgency=medium
* Welcome to Oracular Oriole!
-- Simon Quigley <tsimonq2@ubuntu.com> Tue, 30 Apr 2024 15:24:38 -0500
calamares-settings-ubuntu (1:24.04.39) noble; urgency=medium
* Fix permissions on /home/oem when doing OEM installations. (LP: #2063403)
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Thu, 25 Apr 2024 00:01:37 -0500
calamares-settings-ubuntu (1:24.04.38) noble; urgency=high
* Do not remove zram-config on Ubuntu Unity, it does not exist in the first
place (LP: #2063108).
-- Simon Quigley <tsimonq2@ubuntu.com> Mon, 22 Apr 2024 07:10:28 -0500
calamares-settings-ubuntu (1:24.04.37) noble; urgency=medium
* Correctly lengthen timeouts for network and initramfs package commands.
(LP: #2060429)
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Fri, 19 Apr 2024 18:52:09 -0500
calamares-settings-ubuntu (1:24.04.36) noble; urgency=medium
* Don't show Thunderbird as an installable third-party app on Kubuntu.
(LP: #2062438)
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Fri, 19 Apr 2024 17:38:06 -0500
calamares-settings-ubuntu (1:24.04.35) noble; urgency=medium
* Remove timeouts for network-related package commands. (LP: #2062106)
* Remove timeouts for update-initramfs. (LP: #2060429)
-- Walter Lapchynski <wxl@ubuntu.com> Fri, 19 Apr 2024 21:23:54 +0000
calamares-settings-ubuntu (1:24.04.34) noble; urgency=medium
* Add icon on Desktop to finish OEM install. (LP: #2060928)
-- Walter Lapchynski <wxl@ubuntu.com> Fri, 19 Apr 2024 19:18:59 +0000
calamares-settings-ubuntu (1:24.04.33) noble; urgency=medium
* Fix slideshow image sizes for Kubuntu.
* Fix the size of the logo in the upper-left corner for Kubuntu.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Thu, 18 Apr 2024 19:28:02 -0500
calamares-settings-ubuntu (1:24.04.32) noble; urgency=medium
* Remove the third-party driver installation checkbox from pkgselect, its
functionality was not implemented.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Wed, 17 Apr 2024 23:18:12 -0500
calamares-settings-ubuntu (1:24.04.31) noble; urgency=medium
* Add Kubuntu branding. (LP: #2060845)
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Tue, 16 Apr 2024 12:57:56 -0500
calamares-settings-ubuntu (1:24.04.30) noble; urgency=medium
* Don't keep lubuntu-snap-installation-monitor installed on the minimal
option (LP: #2061318).
-- Simon Quigley <tsimonq2@ubuntu.com> Tue, 16 Apr 2024 10:24:00 -0500
calamares-settings-ubuntu (1:24.04.29) noble; urgency=medium
[ Aaron Rainbolt ]
* Change Kubuntu's Calamares sidebar color.
[ Walter Lapchynski ]
* Remove after_bootloader contextual process. (LP: #2061681)
-- Walter Lapchynski <wxl@ubuntu.com> Tue, 16 Apr 2024 01:10:47 +0000
calamares-settings-ubuntu (1:24.04.28) noble; urgency=medium
* Run apt updates before installing packages. (LP: #2061150)
-- Walter Lapchynski <wxl@ubuntu.com> Sat, 13 Apr 2024 00:44:32 +0000
calamares-settings-ubuntu (1:24.04.27) noble; urgency=medium
* Run the pkgselect contextualprocesses after packages in Kubuntu and Ubuntu
Unity (LP: #2060879)
-- Simon Quigley <tsimonq2@ubuntu.com> Thu, 11 Apr 2024 02:49:44 -0500
calamares-settings-ubuntu (1:24.04.26) noble; urgency=medium
* Make the pkgselect module actually work on Kubuntu and Ubuntu Unity.
(LP: #2060879)
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Wed, 10 Apr 2024 16:16:21 -0500
calamares-settings-ubuntu (1:24.04.25) noble; urgency=medium
* Be completely sure apt will not try to prompt the user.
* Bump the timeout limits to 15 minutes for both pkgselect
contextualprocess modules.
* Allow fixconkeys-part2 a 5 minute window to run, which should be
enough to run update-initramfs (LP: #2060429).
* Adjust spacers accordingly on no network.
-- Simon Quigley <tsimonq2@ubuntu.com> Tue, 09 Apr 2024 03:15:53 -0500
calamares-settings-ubuntu (1:24.04.24) noble; urgency=medium
* Don't try to remove the nonexistant zram-config package from a Kubuntu
installation.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Mon, 08 Apr 2024 21:07:08 -0500
calamares-settings-ubuntu (1:24.04.23) noble; urgency=medium
* Set GOCACHE to stay within the build directory
-- Simon Chopin <schopin@ubuntu.com> Wed, 03 Apr 2024 19:40:50 +0200
calamares-settings-ubuntu (1:24.04.22) noble; urgency=medium
* Add missing build dependency on golang-go.
-- Simon Quigley <tsimonq2@ubuntu.com> Mon, 01 Apr 2024 15:28:24 -0500
calamares-settings-ubuntu (1:24.04.21) noble; urgency=medium
[ Simon Quigley ]
* Revamp pkgselect and enable it for everyone (LP: #2056061).
* Wraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaap.
* No-network UX improvements for pkgselect (LP: #2048727).
[ Aaron Rainbolt ]
* Don't try to start Unity after the OEM environment exits on Ubuntu Unity,
this has to be done by logging in via LightDM.
* Fix a couple of goofs with post-install package purging.
[ Walter Lapchynski ]
* Make links work. (LP: #1981473)
-- Simon Quigley <tsimonq2@ubuntu.com> Thu, 28 Mar 2024 23:30:34 -0500
calamares-settings-ubuntu (1:24.04.20) noble; urgency=medium
* Fix LUKS passphrase unlocker for non-US keyboard layouts.
* Disable pkgselect module on Kubuntu, it's not ready for use and wasn't
intentionally enabled.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Thu, 21 Mar 2024 13:32:53 -0500
calamares-settings-ubuntu (1:24.04.19) noble; urgency=medium
* Add Ubuntu Unity configuration. (LP: #2055799)
* Disable GeoIP in a couple missed places.
* Don't tell the user that they've disabled OEM configuration mode when they
chose to not disable it.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Sun, 17 Mar 2024 20:14:00 +0000
calamares-settings-ubuntu (1:24.04.18) noble; urgency=medium
* GeoIP in welcome module disabled.
-- Walter Lapchynski <wxl@ubuntu.com> Wed, 13 Mar 2024 18:16:06 +0000
calamares-settings-ubuntu (1:24.04.17) noble; urgency=medium
[ Neal Gompa ]
* debian/control: Define the flavor packages as swappable packages
[ Aaron Rainbolt ]
* Wipe Ubuntu Studio's configuration while preserving branding, Studio now
uses ubuntu-desktop-provision.
* Migrate from users.conf password setting "nonEmpty: true" to
"minLength: 1" to enforce non-empty passwords.
- This is not a new feature, we had non-empty passwords being enforced in
the past and didn't intentionally undo this, but Calamares dropped the
"nonEmpty: true" setting we were using.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Sun, 10 Mar 2024 18:10:03 -0500
calamares-settings-ubuntu (1:24.04.16) noble; urgency=medium
* Actually fix the autologin bug.
* Don't kick the user out of first-run configuration mode if they don't
complete it the first time around.
* Fix a bug that caused the first-run setup wizard to not run even after
instructing it to.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Thu, 15 Feb 2024 10:36:34 -0600
calamares-settings-ubuntu (1:24.04.15) noble; urgency=medium
* Add Lubuntu OEM config.
* Fix a bug that could interfere with autologin setup during first-run
configuration after an OEM install.
* Add a simple wallpaper display engine for the first-run configuration
wizard.
* Don't run kdialog as root.
* Make OEM file cleanup more thorough.
* Update copyright file.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Wed, 14 Feb 2024 12:11:34 -0600
calamares-settings-ubuntu (1:24.04.14) noble; urgency=medium
* Add Kubuntu OEM config.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Wed, 07 Feb 2024 17:02:27 -0600
calamares-settings-ubuntu (1:24.04.13) noble; urgency=medium
* Add Kubuntu config.
* Update Lubuntu config to create an unencrypted /boot partition when
encryption is enabled.
* Enforce the use of Calamares 3.3.1-0ubuntu3 or later to ensure that needed
encryption-related features are present.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Fri, 02 Feb 2024 15:32:10 -0600
calamares-settings-ubuntu (1:24.04.12) noble; urgency=medium
* Be compliant with the current state of the deb822 Ubuntu implementation
specification.
-- Simon Quigley <tsimonq2@ubuntu.com> Thu, 18 Jan 2024 16:27:43 -0600
calamares-settings-ubuntu (1:24.04.11) noble; urgency=medium
* Update welcome slide for Noble.
-- Dan Simmons <kc2bez@lubuntu.me> Sat, 30 Dec 2023 16:26:04 -0500
calamares-settings-ubuntu (1:24.04.10) noble; urgency=medium
* Use new icon for Lubuntu's installer, and improve theming.
-- Simon Quigley <tsimonq2@ubuntu.com> Sat, 23 Dec 2023 18:20:50 -0600
calamares-settings-ubuntu (1:24.04.9) noble; urgency=medium
* Remove muon from the list of packages to purge when doing a minimal
installation, it no longer exists in Noble.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Fri, 08 Dec 2023 01:16:24 +0000
calamares-settings-ubuntu (1:24.04.8) noble; urgency=medium
* Use lxqt-sudo instead of sudo, to pick up theming.
* Even if modules fail, try to perform the unmount.
* Explicitly depend on lubuntu-installer-prompt, which provides a default
workflow on the live system. Remove this package at the end of the install
as well.
* Go back to fullscreen.
* Add a full installation radio button, and disable the bottom checkboxes if
minimal install is selected.
* Update snaps used for Krita.
* Install the QML file to the proper directory.
* Add some testing code to the QML file to make it do what we'd like.
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 22 Nov 2023 18:30:39 -0600
calamares-settings-ubuntu (1:24.04.7) noble; urgency=medium
* Copy the Calamares installation log file from $HOME rather than /root.
(LP: #2044006)
* Update a Lintian override now that we're using sudo rather than pkexec to
launch Calamares in Lubuntu.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Mon, 20 Nov 2023 12:21:41 -0600
calamares-settings-ubuntu (1:24.04.6) noble; urgency=medium
* Use sudo -E to launch Calamares so that Lubuntu theming is preserved.
-- Aaron Rainbolt <arraybolt3@gmail.com> Sun, 19 Nov 2023 16:26:18 -0600
calamares-settings-ubuntu (1:24.04.5) noble; urgency=medium
* Fixed an FTBFS on !(amd64).
-- Aaron Rainbolt <arraybolt3@gmail.com> Wed, 15 Nov 2023 21:12:05 -0600
calamares-settings-ubuntu (1:24.04.4) noble; urgency=medium
* Fixed the pkgselect module's CMakeLists.txt file.
* Removed some unnecessary path segments from debian/rules.
* Unset the executable bit on files that shouldn't be executable.
* Exported the LC_ALL=C.UTF-8 and DEB_BUILD_MAINT_OPTIONS = hardening =+all
environment variables in debian/rules since we're building a shared
library in here now.
* Removed trailing whitespace from changelog.
* Added some lintian-overrides for the lack of a manual page and an
executable Python script in /usr/lib
-- Aaron Rainbolt <arraybolt3@gmail.com> Wed, 15 Nov 2023 18:33:39 -0600
calamares-settings-ubuntu (1:24.04.3) noble; urgency=medium
* Revert a failed FTBFS fix.
-- Aaron Rainbolt <arraybolt3@gmail.com> Wed, 15 Nov 2023 17:01:22 -0600
calamares-settings-ubuntu (1:24.04.2) noble; urgency=medium
* Fix FTBFS on !(amd64).
-- Simon Quigley <tsimonq2@ubuntu.com> Tue, 14 Nov 2023 14:34:09 -0600
calamares-settings-ubuntu (1:24.04.1) noble; urgency=medium
* Fix Vcs-*.
* Add a Package Select module, allowing for fine-tuned customization of the
installed system.
* Migrate to deb822 sources, removing the sources.list file pre-populated by
livecd-rootfs. Main and Universe deb sources are enabled by default,
Restricted and Multiverse are opt-in via the installer checkbox.
* Welcome to Noble!
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 20 Oct 2023 13:39:32 -0500
calamares-settings-ubuntu (1:23.10.4) mantic; urgency=medium
* Remove the Partners repository as an option.
* Use geoip.ubuntu.com by default.
-- Simon Quigley <tsimonq2@ubuntu.com> Sun, 08 Oct 2023 11:53:28 -0500
calamares-settings-ubuntu (1:23.10.3) mantic; urgency=medium
* No-change rebuild.
-- Walter Lapchynski <wxl@ubuntu.com> Sun, 10 Sep 2023 10:05:21 -0700
calamares-settings-ubuntu (1:23.10.2) mantic; urgency=medium
* Update welcome image for Mantic in Lubuntu.
-- Walter Lapchynski <wxl@ubuntu.com> Sun, 10 Sep 2023 09:03:28 -0700
calamares-settings-ubuntu (1:23.10.1) mantic; urgency=medium
* Welcome to the Mantic Minotaur!
* Add ext4, btrfs, xfs file system options on erase disk for Lubuntu.
-- Dan Simmons <kc2bez@lubuntu.me> Mon, 14 Aug 2023 20:10:37 -0400
calamares-settings-ubuntu (1:23.04.12) lunar; urgency=medium
* Don't allow the first user to be created with a blank password in either
Lubuntu or Ubuntu Studio. (LP: #2016436)
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Sun, 16 Apr 2023 17:34:56 -0500
calamares-settings-ubuntu (1:23.04.11) lunar; urgency=medium
* Fixed an invalid "SidebarTextSelect" field in Lubuntu's branding.desc -
this is now called "SidebarTextCurrent".
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Mon, 20 Mar 2023 17:47:40 -0500
calamares-settings-ubuntu (1:23.04.10) lunar; urgency=medium
* Fix Ubuntu Studio sidebar colors
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Mon, 20 Mar 2023 11:49:08 -0700
calamares-settings-ubuntu (1:23.04.9) lunar; urgency=medium
* Update ubuntustudio slideshow
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Sat, 18 Mar 2023 08:46:57 -0700
calamares-settings-ubuntu (1:23.04.8) lunar; urgency=medium
* Made the slideshow loop again. (Slow systems were ending up on the "The
installation should finish soon" screen when the installation was only 8%
done, and then were staying on that screen.)
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Thu, 16 Mar 2023 22:31:01 -0500
calamares-settings-ubuntu (1:23.04.7) lunar; urgency=medium
* Updated copyright file.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Wed, 15 Mar 2023 03:53:07 -0500
calamares-settings-ubuntu (1:23.04.6) lunar; urgency=medium
* Updated the lubuntu installer slideshow.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Mon, 13 Mar 2023 19:40:55 -0500
calamares-settings-ubuntu (1:23.04.5) lunar; urgency=medium
* Ensure the langpacks for GNOME and KDE applications are installed too.
This increases the end user install by approximately 25 MB, and saves them
the trouble of having to hunt for it later.
-- Simon Quigley <tsimonq2@ubuntu.com> Tue, 07 Mar 2023 13:16:32 -0700
calamares-settings-ubuntu (1:23.04.4) lunar; urgency=medium
* Switch from using the lsb_release python module to the distro module, as
the python module for lsb_release no longer exists in Lunar.
(LP: #2008685)
* Bumped Standards-Version to 4.6.2, no changes necessary.
* Added an explicit Depends on python3-distro.
* Ran wrap-and-sort.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Tue, 28 Feb 2023 19:27:13 -0600
calamares-settings-ubuntu (1:23.04.3) lunar; urgency=medium
* Fixed a syntax error that led to incorrect sidebar coloring (LP: #1991251).
* Set Calamares to launch in windowed mode, avoiding a welcome image scaling
issue.
* Updated Lintian overrides to work with Lintian again.
* Removed unnecessary Breaks lines from both calamares-settings-lubuntu and
calamares-settings-ubuntustudio. Conflicts is sufficient here.
* Fixed broken Lintian override in Lubuntu.
* Removed trailing whitespace from changelog.
* Bumped Standards-Version to 4.6.1, no changes necessary.
* Added 'Rules-Requires-Root: no'.
* Added Lintian overrides for missing manpages.
* Added Lintian overrides for direct usage of the dpkg database - this is
just log file extraction.
* Fixed changelog section for version 1:22.10.12.
-- Aaron Rainbolt <arraybolt3@ubuntu.com> Wed, 23 Nov 2022 16:08:10 -0600
calamares-settings-ubuntu (1:23.04.2) lunar; urgency=medium
* Allow swap for Ubuntu Studio (LP: #1996646)
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Tue, 15 Nov 2022 17:37:14 -0800
calamares-settings-ubuntu (1:23.04.1) lunar; urgency=medium
* Welcome to the Lunar Lobster!
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 28 Oct 2022 14:26:09 -0500
calamares-settings-ubuntu (1:22.10.12) kinetic; urgency=medium
[ Erich Eickmeyer ]
* Fix for black Ubuntu Studio sidebar (LP: #1991251)
[ Aaron Rainbolt ]
* Fixed a syntax error that led to incorrect sidebar coloring (LP: #1991251).
* Set Calamares to launch in windowed mode, avoiding a welcome image scaling
issue.
-- Aaron Rainbolt <arraybolt3@gmail.com> Tue, 04 Oct 2022 20:39:43 -0500
calamares-settings-ubuntu (1:22.10.11) kinetic; urgency=medium
* Tackled edge case for if libreoffice-help-$LOCALE doesn't exist but
libreoffice-l10n-$LOCALE does exist (required for LibreOffice
localization to work with languages like Icelandic)
-- Aaron Rainbolt <arraybolt3@gmail.com> Fri, 05 Aug 2022 13:19:50 -0500
calamares-settings-ubuntu (1:22.10.10) kinetic; urgency=medium
* Fixed LibreOffice localization bug (LP: #1970270).
-- Aaron Rainbolt <arraybolt3@gmail.com> Mon, 25 Jul 2022 23:47:11 -0500
calamares-settings-ubuntu (1:22.10.9) kinetic; urgency=medium
* Remove remaining conflicting ubuntustudio files existing in common
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Tue, 28 Jun 2022 11:48:34 -0700
calamares-settings-ubuntu (1:22.10.8) kinetic; urgency=medium
* Remove file in ubuntustudio settings duplicated in common
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Mon, 27 Jun 2022 17:15:06 -0700
calamares-settings-ubuntu (1:22.10.7) kinetic; urgency=medium
* Major oops in last changelog entry.
-- Simon Quigley <tsimonq2@ubuntu.com> Sun, 26 Jun 2022 22:17:37 -0500
calamares-settings-ubuntu (1:22.10.6) kinetic; urgency=medium
* Move much of the common modules to the common package.
-- Simon Quigley <tsimonq2@ubuntu.com> Sun, 26 Jun 2022 22:10:37 -0500
calamares-settings-ubuntu (1:22.10.5) kinetic; urgency=medium
* Fix desktop file typo in exec line.
-- Dan Simmons <kc2bez@lubuntu.me> Sun, 12 Jun 2022 14:45:37 -0400
calamares-settings-ubuntu (1:22.10.4) kinetic; urgency=medium
* Adjust desktop file to use pkexec so it starts.
* Point to the right log file now that we start as root.
-- Dan Simmons <kc2bez@lubuntu.me> Sat, 11 Jun 2022 16:06:53 -0400
calamares-settings-ubuntu (1:22.10.3) kinetic; urgency=medium
* Fixed contextual and shell processes for Lubuntu.
* Fixed contextual and shell processed for Ubuntu Studio.
* Updated Ubuntu Studio settings for Calamres 3.3.
-- Aaron Rainbolt <arraybolt3@gmail.com> Thu, 09 Jun 2022 19:27:24 -0500
calamares-settings-ubuntu (1:22.10.2) kinetic; urgency=medium
* Update settings for Calamares 3.3.
-- Aaron Rainbolt <arraybolt3@gmail.com> Wed, 08 Jun 2022 18:48:23 -0500
calamares-settings-ubuntu (1:22.10.1) kinetic; urgency=medium
* Welcome to the Kinetic Kudu!
* Fix manual btrfs notifications (LP: #1966774).
-- Simon Quigley <tsimonq2@ubuntu.com> Thu, 28 Apr 2022 10:12:01 -0500
calamares-settings-ubuntu (1:22.04.4) jammy; urgency=medium
* Change calamares to use Ubuntu Studio Light colors
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Thu, 24 Mar 2022 09:50:18 -0700
calamares-settings-ubuntu (1:22.04.3) jammy; urgency=medium
* Fix for kded automount issue (LP: #1965658)
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Tue, 22 Mar 2022 15:18:58 -0700
calamares-settings-ubuntu (1:22.04.2) jammy; urgency=medium
* Update Ubuntu Studio logo, slideshow (LP: #1965645)
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Mon, 21 Mar 2022 08:39:17 -0700
calamares-settings-ubuntu (1:22.04.1) jammy; urgency=medium
* Welcome to Jammy Jellyfish!
- Update Branding to 22.04.
- Update desktop file.
* Bump Standards-Version to 4.6.0, no changes needed.
-- Dan Simmons <kc2bez@lubuntu.me> Sun, 14 Nov 2021 11:24:15 -0500
calamares-settings-ubuntu (1:21.10.2) impish; urgency=medium
* Update desktop files for proper version. (LP: #1944778)
* Update branding for proper version.
-- Dan Simmons <kc2bez@lubuntu.me> Sat, 25 Sep 2021 07:47:25 -0400
calamares-settings-ubuntu (1:21.10.1) impish; urgency=medium
* ubuntustudio/modules/packages.conf
- Remove zram-config from packages to remove to prevent crash
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Tue, 14 Sep 2021 17:22:11 -0700
calamares-settings-ubuntu (1:21.04.2) hirsute; urgency=medium
* Append -D6 to desktop exec to bring log level to preferred level.
(LP: #1917360)
-- Dan Simmons <kc2bez@lubuntu.me> Mon, 01 Mar 2021 15:37:29 -0500
calamares-settings-ubuntu (1:21.04.1) hirsute; urgency=medium
[ apt-ghetto ]
* Fix GeoIP parsing for Lubuntu in welcome module.
* Use https for the GeoIP lookup
[ Dan Simmons ]
* Welcome to the Hirsute Hippo!
* Set sambashare user as a system user. (LP: #1857364)
* Add swapfile as an option and set it as the initial choice
(LP: 1881191)
* Update d/copyright.
-- Dan Simmons <kc2bez@lubuntu.me> Sun, 03 Jan 2021 12:38:33 -0500
calamares-settings-ubuntu (1:20.10.11) groovy; urgency=medium
* Switch to Canonical's GeoIP service.
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 14 Oct 2020 18:23:51 -0500
calamares-settings-ubuntu (1:20.10.10) groovy; urgency=medium
* Lowered Ubuntu Studio RAM requirements due to popular demand/confusion
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Sat, 26 Sep 2020 09:45:12 -0700
calamares-settings-ubuntu (1:20.10.9) groovy; urgency=medium
* Ubuntu Studio
- Update color for sidebar
- Update Video and Photography slides
-- Erich Eickmeyer <eeickmeyer@ubuntu.com> Sat, 19 Sep 2020 13:47:18 -0700
calamares-settings-ubuntu (1:20.10.8) groovy; urgency=medium
* Ubuntu Studio
- Check for /etc/apt/sources.list.d/dvd.list and remove if exists
-- Erich Eickmeyer <erich@ericheickmeyer.com> Thu, 04 Jun 2020 16:44:43 -0700
calamares-settings-ubuntu (1:20.10.7) groovy; urgency=medium
[ Erich Eickmeyer ]
* Ubuntu Studio
- Darken sidebar to match new version of materia theme
[ Dan Simmons ]
* Lubuntu
- Adjust Lubuntu desktop file for Groovy.
* Ubuntu Common
- Add dependencies for cryptsetup, keyutils, needed for LUKS
installation and qml-modules for slideshow.
-- Dan Simmons <kc2bez@lubuntu.me> Wed, 03 Jun 2020 18:47:13 -0400
calamares-settings-ubuntu (1:20.10.6) groovy; urgency=medium
* Ubuntu Studio - Actual Fixes for legacy BIOS installs
- Blacklist dvd.list from squashfs rsync
- Use new shellprocess script to do audio.conf.disabled rename
-- Erich Eickmeyer <erich@ericheickmeyer.com> Sat, 30 May 2020 22:35:45 -0700
calamares-settings-ubuntu (1:20.10.5) groovy; urgency=medium
* Ubuntu Studio
- Revert previous fix - caused regression
-- Erich Eickmeyer <erich@ericheickmeyer.com> Fri, 29 May 2020 08:34:15 -0700
calamares-settings-ubuntu (1:20.10.4) groovy; urgency=medium
* Ubuntu Studio
- Apply fixes in previous upload to legacy BIOS systems
-- Erich Eickmeyer <erich@ericheickmeyer.com> Thu, 28 May 2020 16:20:56 -0700
calamares-settings-ubuntu (1:20.10.3) groovy; urgency=medium
* Ubuntu Studio
- Fix for leftover dvd.list file in /etc/apt/sources.list.d
- Fix for disabled /etc/security/limits.d/audio.conf
- Replace two slideshow images
-- Erich Eickmeyer <erich@ericheickmeyer.com> Fri, 22 May 2020 13:12:21 -0700
calamares-settings-ubuntu (1:20.10.2) groovy; urgency=medium
* Fix for calamares-logs-helper looking in wrong home folder
-- Erich Eickmeyer <erich@ericheickmeyer.com> Thu, 21 May 2020 12:54:52 -0700
calamares-settings-ubuntu (1:20.10.1) groovy; urgency=medium
[ Erich Eickmeyer ]
* Added Ubuntu Studio
* Welcome to the Groovy Gorilla!
[ apt-ghetto ]
* Fix AttributeError in automirror module (LP: #1875476)
[ Dan Simmons ]
* Adjust Ubuntu Studio translations.
* Add groovy to Lubuntu branding.
* Drop debian/compat use debhelper-compat=13, no changes needed.
-- Dan Simmons <kc2bez@lubuntu.me> Wed, 20 May 2020 20:40:13 -0400
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 14 Oct 2020 18:37:09 -0500
calamares-settings-ubuntu (1:20.04.2) focal; urgency=medium

1
debian/compat vendored

@ -0,0 +1 @@
12

64
debian/control vendored

@ -3,80 +3,30 @@ Section: devel
Priority: optional
Maintainer: Lubuntu Developers <lubuntu-devel@lists.ubuntu.com>
Uploaders: Simon Quigley <tsimonq2@ubuntu.com>
Build-Depends: calamares (>= 3.3.5),
cmake,
debhelper-compat (= 13),
extra-cmake-modules,
golang-github-snapcore-snapd-dev (>= 2.62),
golang-go,
golang-gopkg-yaml.v2-dev,
Build-Depends: debhelper (>= 12),
intltool,
libkf5coreaddons-dev,
libqt5svg5-dev,
libyaml-cpp-dev,
qtbase5-dev,
qtdeclarative5-dev,
qttools5-dev,
qttools5-dev-tools
Standards-Version: 4.6.2
Homepage: https://code.launchpad.net/~ubuntu-qt-code/+git/calamares-settings-ubuntu
Vcs-Browser: https://git.lubuntu.me/Lubuntu/calamares-settings-ubuntu/
Vcs-Git: https://git.lubuntu.me/Lubuntu/calamares-settings-ubuntu.git
Rules-Requires-Root: no
Package: calamares-settings-kubuntu
Architecture: all
Depends: calamares-settings-ubuntu-common (>= ${binary:Version}),
${misc:Depends}
Conflicts: calamares-settings-ubuntu-flavor
Provides: calamares-settings-ubuntu-flavor
Description: Kubuntu Calamares Settings and Branding
This package contains the Calamares settings and branding for Kubuntu.
As part of the branding the installer slideshow is contained within.
The settings ensure a proper Kubuntu desktop is installed with the
KDE Plasma desktop environment.
Standards-Version: 4.5.0
Homepage: https://code.launchpad.net/ubuntu-calamares-settings
Vcs-Git: https://git.launchpad.net/ubuntu-calamares-settings
Vcs-Browser: https://git.launchpad.net/ubuntu-calamares-settings
Package: calamares-settings-lubuntu
Architecture: all
Depends: calamares-settings-ubuntu-common (>= ${binary:Version}),
${misc:Depends}
Recommends: lubuntu-installer-prompt
Conflicts: calamares-settings-ubuntu-flavor
Provides: calamares-settings-ubuntu-flavor
Description: Lubuntu Calamares Settings and Branding
This package contains the Calamares settings and branding for Lubuntu.
As part of the branding the installer slideshow is contained within.
The settings ensure a proper Lubuntu desktop is installed with the
LXQt desktop environment.
Package: calamares-settings-ubuntu-unity
Architecture: all
Depends: calamares-settings-ubuntu-common (>= ${binary:Version}),
qt5-style-kvantum,
qt5-style-kvantum-themes,
${misc:Depends}
Conflicts: calamares-settings-ubuntu-flavor
Provides: calamares-settings-ubuntu-flavor
Description: Ubuntu Unity Calamares Settings and Branding
This package contains the Calamares settings and branding for Ubuntu Unity.
As part of the branding the installer slideshow is contained within.
The settings ensure a proper Ubuntu Unity desktop is installed with the
Unity desktop environment.
Package: calamares-settings-ubuntu-common
Architecture: any
Depends: calamares (>= 3.2.14~),
cryptsetup,
kdialog,
keyutils,
python3,
python3-distro,
qml-module-qtquick-window2,
qml-module-qtquick2,
squashfs-tools,
sudo,
${misc:Depends},
${shlibs:Depends}
python3,
${misc:Depends}
Description: Common Calamares Settings
This package contains the common Calamares settings for all flavors.
There is also a automirror Python script to set sources based on

29
debian/copyright vendored

@ -2,10 +2,7 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files: *
Copyright: 2014 Rohan Garg <shadeslayer@systems>
2020 Ubuntu Studio Developers <ubuntu-studio-devel@lists.ubuntu.com>
2024 Kubuntu Developers <kubuntu-devel@lists.ubuntu.com>
2024 Ubuntu Unity Developers
2017-2024 Lubuntu Developers <lubuntu-devel@lists.ubuntu.com>
2017-2018 Lubuntu Developers <lubuntu-devel@lists.ubuntu.com>
License: GPL-3+
This package is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -22,27 +19,3 @@ License: GPL-3+
.
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
Files: ubuntuunity/ubuntu-unity-installer.svg
Copyright: 2014 Uri Herrera <uri_herrera@nitrux.in> and others
2024 Ubuntu Unity Developers
License: LGPL-3+
This package is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published
by the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
.
This package 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 Lesser General Public License for more details.
.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>
.
On Debian systems, the complete text of the GNU Lesser General
Public License version 3 can be found in "/usr/share/common-licenses/LGPL-3".
Comment:
Adapted from the Breeze icon theme. See
https://develop.kde.org/frameworks/breeze-icons for more information about
Breeze icons.

40
debian/rules vendored

@ -1,46 +1,14 @@
#!/usr/bin/make -f
export LC_ALL=C.UTF-8
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
export GOPATH=/usr/share/gocode
export GO111MODULE=off
export GOCACHE=$(CURDIR)/.gocache
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
PKGSELECT = "common/modules/pkgselect"
MODULES_DIR = "debian/calamares-settings-ubuntu-common/usr/lib/$(DEB_HOST_MULTIARCH)/calamares/modules"
%:
dh $@
override_dh_auto_configure:
(cd $(PKGSELECT) && mkdir build && cd build && cmake ..)
override_dh_auto_build:
make;
(cd $(PKGSELECT)/build && $(MAKE))
(cd common/snap-seed-glue && go build -gcflags="all=-N -l" -ldflags="-compressdwarf=false" -o snap-seed-glue main.go)
override_dh_auto_clean:
dh_auto_clean
rm -rf $(GOCACHE)
override_dh_auto_install:
(cd $(PKGSELECT)/build && $(MAKE) DESTDIR=$(CURDIR)/debian/calamares-settings-ubuntu-common/ install)
override_dh_missing:
dh_missing
mkdir -pv $(MODULES_DIR)
cp -vr common/modules/automirror $(MODULES_DIR)
mkdir -pv debian/calamares-settings-ubuntu-common/etc/calamares/modules
cp -vr common/modules/*.conf debian/calamares-settings-ubuntu-common/etc/calamares/modules
mkdir -pv debian/calamares-settings-ubuntu-common/usr/lib/$(DEB_HOST_MULTIARCH)/calamares/modules
cp -vr common/modules/* debian/calamares-settings-ubuntu-common/usr/lib/$(DEB_HOST_MULTIARCH)/calamares/modules
chmod -R 755 debian/calamares-settings-ubuntu-common/usr/lib/
chmod 644 $(MODULES_DIR)/automirror/automirror.conf
chmod 644 $(MODULES_DIR)/automirror/module.desc
chmod 644 $(MODULES_DIR)/pkgselect/libcalamares_viewmodule_pkgselect.so
chmod 644 $(MODULES_DIR)/pkgselect/module.desc
mkdir -pv debian/calamares-settings-ubuntu-common/usr/bin/
cp -v common/snap-seed-glue/snap-seed-glue debian/calamares-settings-ubuntu-common/usr/bin/snap-seed-glue
mkdir -pv debian/calamares-settings-ubuntu-common/usr/libexec/
cp -v common/fixconkeys-part1 debian/calamares-settings-ubuntu-common/usr/libexec/fixconkeys-part1
cp -v common/fixconkeys-part2 debian/calamares-settings-ubuntu-common/usr/libexec/fixconkeys-part2
chmod 644 debian/calamares-settings-ubuntu-common/usr/lib/$(DEB_HOST_MULTIARCH)/calamares/modules/automirror/automirror.conf
chmod 644 debian/calamares-settings-ubuntu-common/usr/lib/$(DEB_HOST_MULTIARCH)/calamares/modules/automirror/module.desc

@ -1,21 +0,0 @@
# Kubuntu's Calamares Settings
This directory houses the Calamares settings for Kubuntu.
Unless otherwise stated, the contents of this directory are licensed as follows:
Copyright (C) 2018 Lubuntu Developers <lubuntu-devel@lists.ubuntu.com>
Copyright (C) 2024 Kubuntu Developers <kubuntu-devel@lists.ubuntu.com>
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 (at your option) 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 software. If not, see <http://www.gnu.org/licenses/>.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

@ -1,29 +0,0 @@
---
componentName: kubuntu
windowExpanding: fullscreen
strings:
productName: Kubuntu
shortProductName: Kubuntu
version: 24.10
shortVersion: oracular
versionedName: Kubuntu
shortVersionedName: Kubuntu 24.10
bootloaderEntryName: Kubuntu
productUrl: https://kubuntu.org/
supportUrl: https://kubuntu.org/contact/
images:
productLogo: "logo.png"
productIcon: "icon.png"
productWelcome: "welcome.png"
slideshow: "show.qml"
slideshowAPI: 1
style:
SidebarBackground: "#6C7B93"
SidebarText: "#FFFFFF"
SidebarTextCurrent: "#0068C8"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

@ -1,165 +0,0 @@
import QtQuick 2.0;
import calamares.slideshow 1.0;
Presentation
{
id: presentation
Timer {
interval: 15000
running: true
repeat: true
onTriggered: presentation.goToNextSlide()
}
Slide {
Image {
id: image1
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "01_Easy_Install.png"
}
}
Slide {
Image {
id: image2
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "02_Customizable_Desktop.png"
}
}
Slide {
Image {
id: image3
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "03_Built-in_Applications.png"
}
}
Slide {
Image {
id: image4
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "04_Performant.png"
}
}
Slide {
Image {
id: image5
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "05_Secure_and_Private.png"
}
}
Slide {
Image {
id: image6
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "06_Community_Support.png"
}
}
Slide {
Image {
id: image7
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "07_Free_and_Open_Source.png"
}
}
Slide {
Image {
id: image8
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "08_Software_Compatibility.png"
}
}
Slide {
Image {
id: image9
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "09_Beautiful_Aesthetics.png"
}
}
Slide {
Image {
id: image10
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "10_Kubuntu_Focus.png"
}
}
Slide {
Image {
id: image11
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "11_Testimonials_of_Success.png"
}
}
Slide {
Image {
id: image12
anchors.centerIn: parent
anchors.verticalCenterOffset: - parent.y / 3.6
height: parent.masterHeight * 0.95
width: parent.masterWidth * 0.95
fillMode: Image.PreserveAspectFit
smooth: true
source: "12_Get_Involved.png"
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 123 KiB

@ -1,16 +0,0 @@
#!/bin/bash
#
# Launch Calamares normally.
if [ -e '/etc/calamares/OEM_MODE_ACTIVATED' ]; then
msg="$(cat <<EOL
The installer was previously run in OEM mode. Please reboot to reset the
configuration and try again.
EOL
)";
kdialog --msgbox "${msg}";
exit 1;
fi
export BROWSER='sudo -H -u kubuntu firefox'
calamares -D8;

@ -1,24 +0,0 @@
#!/bin/sh
set -ex
root=$1
install_dir=$root/var/log/installer
[ -d $install_dir ] || mkdir -p $install_dir
cp $HOME/.cache/calamares/session.log $install_dir/debug
cp /cdrom/.disk/info $install_dir/media-info
cp /var/log/casper.log $install_dir/casper.log
cp /var/log/syslog $install_dir/syslog
gzip --stdout $root/var/lib/dpkg/status > $install_dir/initial-status.gz
# OEM id isn't a thing, when in OEM mode ubiquity would also archive that.
# https://github.com/calamares/calamares/issues/943
chmod -v 600 $install_dir/*
# Make these world readable, they can absolutely not contain anything relevant
# to security.
chmod -v 644 $install_dir/initial-status.gz
chmod -v 644 $install_dir/media-info

@ -1,12 +0,0 @@
[Desktop Entry]
Type=Application
Version=1.0
_Name=Install Kubuntu 24.10
_GenericName=Install Kubuntu
Exec=sudo -E /usr/bin/calamares-launch-normal
_Comment=Calamares — System Installer
Icon=system-software-install
Terminal=false
StartupNotify=true
Categories=Qt;System;
Keywords=installer;calamares;system;

@ -1,6 +0,0 @@
---
baseUrl: archive.ubuntu.com
distribution: Kubuntu
geoip:
style: "xml"
url: "https://geoip.ubuntu.com/lookup"

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save