Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:plasmaregataos
regataos-base
regataos-base.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File regataos-base.spec of Package regataos-base
%define system_version 24 Name: regataos-base Version: 24.0 Release: 0 Url: https://regataos.com/ Summary: Base files for Regata OS Group: System/GUI/KDE BuildRequires: xz BuildRequires: desktop-file-utils BuildRequires: update-desktop-files BuildRequires: hicolor-icon-theme BuildRequires: -post-build-checks BuildRequires: systemd-devel BuildRequires: grep BuildRequires: fdupes BuildRequires: plasma6-desktop BuildRequires: plasma6-desktop-emojier BuildRequires: plasma6-desktop-lang BuildRequires: plasma6-workspace BuildRequires: plasma6-workspace-devel BuildRequires: plasma6-theme-openSUSE BuildRequires: plasma6-sddm-theme-openSUSE BuildRequires: sddm-qt6-branding-upstream License: MIT Source1: regataos-base-%{version}.tar.xz Source2: libcrypto.so.10-and-libssl.so.10.tar.xz Source3: regataos-auto-update.sh Source4: regataos-update.sh # For Plasma Desktop Requires: plasma6-theme-openSUSE Requires: plasma6-sddm-theme-openSUSE Requires: plasma6-disks Requires: plasma6-disks-lang Requires: plasma6-integration-plugin Requires: plasma6-integration-plugin-lang Requires: plasma6-pa Requires: plasma6-pa-lang Requires: plasma6-thunderbolt Requires: plasma6-thunderbolt-lang Requires: plasma6-desktop Requires: plasma6-desktop-lang Requires: plasma6-desktop-emojier Requires: plasma6-workspace Requires: plasma6-workspace-lang Requires: plasma6-workspace-libs Requires: plasma6-vault Requires: plasma6-vault-backend-cryfs Requires: plasma6-vault-backend-encfs Requires: plasma6-vault-backend-gocryptfs Requires: plasma6-vault-lang Requires: plasma6-session Requires: plasma6-session-x11 Requires: plasma6-firewall Requires: plasma6-firewall-lang Requires: plasma6-print-manager Requires: plasma6-print-manager-lang Requires: plasma6-nm Requires: plasma6-nm-fortisslvpn Requires: plasma6-nm-iodine Requires: plasma6-nm-l2tp Requires: plasma6-nm-lang Requires: plasma6-nm-libreswan Requires: plasma6-nm-openconnect Requires: plasma6-nm-openvpn Requires: plasma6-nm-pptp Requires: plasma6-nm-ssh Requires: plasma6-nm-sstp Requires: plasma6-nm-strongswan Requires: plasma6-nm-vpnc Requires: plasma6-systemmonitor Requires: plasma6-systemmonitor-lang Requires: sddm-kcm6 Requires: sddm-kcm6-lang Requires: sddm-qt6 Requires: sddm-qt6-branding-upstream Requires: libPlasma6 Requires: libPlasma6-lang Requires: libplasma6-desktoptheme Requires: libplasma6-components Requires: kdeplasma6-addons Requires: kdeplasma6-addons-lang Requires: oxygen6 Requires: oxygen6-cursors Requires: oxygen6-style-lang Requires: ocean-sound-theme6 Requires: breeze6 Requires: breeze6-decoration Requires: breeze6-wallpapers Requires: yast2-theme-breeze Requires: gtk2-metatheme-breeze6 Requires: gtk3-metatheme-breeze6 Requires: gtk4-metatheme-breeze6 Requires: metatheme-breeze6-common Requires: qqc2-breeze-style6 Requires: libQt6Svg6 Requires: libQt6Sql6 Requires: libQt6WebChannel6 Requires: kwayland6 Requires: kwayland-integration6 Requires: libKF6NotifyConfig6 Requires: libKF6NotifyConfig6-lang Requires: kcm_tablet Requires: kcm_tablet-lang Requires: qt6-virtualkeyboard Requires: xdg-desktop-portal-kde6 Requires: xdg-desktop-portal-kde6-lang Requires: kaccounts-providers Requires: kaccounts-providers-lang Requires: kaccounts-integration Requires: kaccounts-integration-lang Requires: libKF6NetworkManagerQt6 Requires: kf6-kcoreaddons Requires: kf6-kcoreaddons-imports Requires: kf6-kcoreaddons-lang Requires: systemsettings6 Requires: systemsettings6-lang Requires: plasma-applet-weather-widget Requires: plasma-applet-weather-widget-lang Requires: kio-gdrive Requires: kio-gdrive-lang Requires: kde-oxygen-fonts Requires: libksysguard6 Requires: libksysguard6-lang Requires: libksysguard6-imports Requires: libksysguard6-plugins Requires: plasma-framework Requires: plasma-framework-lang Requires: plasma-framework-components Requires: kde-gtk-config6 Requires: kde-gtk-config6-gtk3 Requires: kf6-kio Requires: kf6-kio-lang Requires: kio_kamera Requires: kio_kamera-lang Requires: kio-extras Requires: kio-extras-lang Requires: kio_iso Requires: baloo-widgets Requires: baloo-widgets-lang Requires: kf6-baloo-imports Requires: kf6-baloo-file Requires: kf6-baloo-kioslaves Requires: kf6-baloo-tools Requires: libKF6Baloo6-lang Requires: kwin6 Requires: kwin6-lang Requires: kwin6-x11 Requires: kf6-kded Requires: kf6-kded-lang Requires: bluedevil6 Requires: bluedevil6-lang Requires: libphonon4qt5 Requires: phonon4qt5-lang Requires: phonon-vlc-lang Requires: phonon-vlc-qt5 Requires: phonon-vlc-qt6 Requires: phononsettings-qt6 Requires: kmime Requires: kmag Requires: kmag-lang Requires: kinfocenter6 Requires: kinfocenter6-lang Requires: kscreen6 Requires: kscreen6-lang Requires: kscreen6-plasmoid Requires: kwalletd6 Requires: kwalletd6-lang Requires: kf6-kquickcharts Requires: qt6-platformtheme-gtk3 Requires: qt6-platformtheme-xdgdesktopportal Requires: kf6-kirigami Requires: kf6-kirigami-lang Requires: kf6-kirigami Requires: kf6-kirigami-lang Requires: kf6-qqc2-desktop-style Requires: kirigami-addons6 Requires: kirigami-addons6-lang Requires: kpmcore Requires: kpmcore-lang Requires: kscreenlocker6 Requires: kscreenlocker6-lang Requires: kio_kamera Requires: kio_kamera-lang Requires: bluez-cups Requires: bluez-obexd Requires: kf6-bluez-qt Requires: kf6-bluez-qt-imports Requires: kdenetwork-filesharing Requires: kdenetwork-filesharing-lang Requires: libproxy1-config-kde Requires: powerdevil6 Requires: powerdevil6-lang Requires: qt6-imageformats Requires: libKPim6AkonadiContactCore6 Requires: libKF6Archive6-lang Requires: libKF6Bookmarks6-lang Requires: libKF6CalendarEvents6-lang Requires: libKF6Codecs6-lang Requires: libKF6ColorScheme6-lang Requires: libKF6Completion6-lang Requires: libKF6ConfigCore6-lang Requires: libKF6ConfigWidgets6-lang Requires: libKF6Contacts6-lang Requires: libKF6DBusAddons6-lang Requires: libKF6DNSSD6-lang Requires: libKF6GlobalAccel6-lang Requires: libKF6Holidays6-lang Requires: libKF6I18n6-lang Requires: libKF6IconThemes6-lang Requires: libKF6ItemViews6-lang Requires: libKF6JobWidgets6-lang Requires: libKF6KCMUtils6-lang Requires: libKF6NewStuffCore6-lang Requires: libKF6Notifications6-lang Requires: libKF6Parts6-lang Requires: libKF6Pty6-lang Requires: libKF6Screen8-lang Requires: libKF6Solid6-lang Requires: libKF6SonnetCore6-lang Requires: libKF6StatusNotifierItem6-lang Requires: libKF6Su6-lang Requires: libKF6SyntaxHighlighting6-lang Requires: libKF6TextWidgets6-lang Requires: libKF6UnitConversion6-lang Requires: libKF6WidgetsAddons6-lang Requires: libKF6WindowSystem6-lang Requires: libKF6XmlGui6-lang Requires: libKPim6AkonadiMime6-lang Requires: libKPim6Mime6-lang Requires: libKPim6TextEdit6-lang Requires: grantleetheme-lang Requires: kcalutils-lang Requires: kidentitymanagement-lang Requires: milou6-lang Requires: kmenuedit6-lang Requires: libPlasma5Support6-lang Requires: libKPim6SMTP6-lang Requires: akonadi-contacts-lang Requires: kidentitymanagement-lang Requires: libKPim6AkonadiMime6-lang Requires: libKPim6Mime6-lang Requires: libKPim6TextEdit6-lang Requires: kcalutils-lang Requires: libkgapi6-lang Requires: python311-PyQt6 # Apps for Plasma Desktop Requires: okular Requires: okular-lang Requires: dolphin Requires: dolphin-plugins Requires: dolphin-plugins-lang Requires: dolphin-part Requires: dolphin-part-lang Requires: gwenview Requires: gwenview-lang Requires: spectacle Requires: spectacle-lang Requires: ark Requires: ark-lang Requires: kcalc Requires: kcalc-lang Requires: kcharselect Requires: kcharselect-lang Requires: krdc Requires: krdc-lang Requires: krfb Requires: krfb-lang Requires: kdeconnect-kde Requires: kdeconnect-kde-lang Requires: kwrite Requires: partitionmanager-lang Requires: partitionmanager Requires: skanlite Requires: skanlite-lang Requires: kgamma6 Requires: kgamma6-lang Requires: konsole Requires: konsole-part Requires: konsole-part-lang Requires: kate Requires: kate-plugins Requires: kate-lang Requires: kalarm Requires: kalarm-lang Requires: psmisc Requires: psmisc-lang Requires: lshw Requires: lshw-lang Requires: translation-update Requires: samba-winbind Requires: samba-winbind-32bit Requires: libcnotify1 Requires: notification-daemon Requires: notification-daemon-lang Requires: libdbus-c++-1-1 Requires: libdbus-c++-1-1-32bit Requires: libglut3-32bit Requires: libonig4 Requires: luit Requires: libevdev-tools Requires: libevemu3 Requires: libframe6 Requires: typelib-1_0-AppIndicator3-0_1 Requires: evemu Requires: libgrail6 Requires: libgeis1 Requires: libinput-tools Requires: libinput-udev Requires: onboard Requires: onboard-data Requires: onboard-lang Requires: chromium-plugin-widevinecdm Requires: regataos-yast2 Requires: regataos-numlockx Requires: regataos-store Requires: libncurses6 Requires: libncurses6-32bit Requires: sane-backends Requires: sane-backends-autoconfig Requires: libksane-lang Requires: mintstick Requires: regataos-grub2-theme Requires: p7zip-full Requires: pavucontrol-qt Requires: pavucontrol-qt-lang Requires: libgtkmm-2_4-1 Requires: libgtkmm-2_4-1-32bit Requires: libgtkmm-3_0-1 Requires: libgtkmm-3_0-1-32bit Requires: wxWidgets-lang Requires: libtiff6 Requires: libturbojpeg0 Requires: libjpeg-turbo Requires: libwx_baseu-suse3_0_5 Requires: libwx_gtk2u_core-suse3_0_5 Requires: samba-python3 Requires: NetworkManager-fortisslvpn Requires: NetworkManager-fortisslvpn-lang Requires: NetworkManager-bluetooth Requires: NetworkManager-wifi Requires: NetworkManager-wwan Requires: NetworkManager-ovs Requires: NetworkManager-tui Requires: NetworkManager-cloud-setup Requires: NetworkManager-connection-editor Requires: NetworkManager-pppoe Requires: python3-pyfg Requires: openfortivpn Requires: gutenprint Requires: sane-backends Requires: sane-backends-32bit Requires: printer-driver-brlaser Requires: splix Requires: hplip-hpijs Requires: hplip-sane Requires: cups-backend-kerberized-smb Requires: cups-filters Requires: libcupscgi1 Requires: libcupsimage2 Requires: patterns-server-printing Requires: gnome-keyring-lang Requires: gcr-lang Requires: OpenPrintingPPDs Requires: OpenPrintingPPDs-ghostscript Requires: OpenPrintingPPDs-hpijs Requires: OpenPrintingPPDs-postscript Requires: poppler-tools Requires: libopenssl10 Requires: libpcsclite1 Requires: pcsc-tools Requires: pcsc-lite Requires: pcsc-ccid Requires: opensc Requires: update-desktop-files Requires: qtcurve-gtk2 Requires: qtcurve-qt5 Requires: dwarves Requires: libbpf0 Requires: libbpf0-32bit Requires: libdwarves1 Requires: libdwarves1-32bit Requires: bluez-auto-enable-devices Requires: bluez-tools Requires: libhidapi-hidraw0 Requires: libhidapi-libusb0 Requires: typelib-1_0-WebKit2-4_0 Requires: typelib-1_0-JavaScriptCore-4_0 Requires: typelib-1_0-Soup-2_4 Requires: fprintd Requires: fprintd-lang Requires: fprintd-pam Requires: libfprint-2-2 Requires: typelib-1_0-FPrint-2_0 Requires: typelib-1_0-GUsb-1_0 Requires: system-config-printer Requires: system-config-printer-applet Requires: libsgutils2-1_47-2 Requires: sg3_utils Requires: mediainfo Requires: smartmontools Requires: gamescope Requires: clinfo Requires: flatpak-kcm6 Requires: flatpak-kcm6-lang Requires: openconnect Requires: openconnect-lang Requires: regataos-help Requires: plymouth-branding-openSUSE Requires: wallpaper-branding-openSUSE Requires: firewall-config Requires: firewalld Requires: firewalld-lang Requires: firewall-macros Requires: susefirewall2-to-firewalld Requires: python3-firewall Requires: espeak Requires: libxcb-xinput0 Requires: libxcb-xinput0-32bit Requires: xinput Requires: xsetmode Requires: xsetpointer Requires: myspell-pt_BR Requires: myspell-en_US Requires: regataos-prime Requires: libmpv2 Requires: gnutls Requires: libappindicator1 Requires: libappindicator3-1 Requires: libtcmalloc4 Requires: libprofiler0 Requires: gperftools Requires: libFAudio0 Requires: libFAudio0-32bit Requires: gsettings-desktop-schemas-lang Requires: dmraid Requires: os-prober Requires: grub2-snapper-plugin Requires: grub2-systemd-sleep-plugin Requires: libassimp5 Requires: noto-coloremoji-fonts Requires: emojione-color-font Requires: noto-emoji-fonts Requires: twemoji-color-font Requires: unicode-emoji Requires: libkaccounts6-2 Requires: ladspa Requires: pipewire Requires: pipewire-pulseaudio Requires: pipewire-lang Requires: pipewire-tools Requires: pipewire-modules Requires: pipewire-module-x11-0_3 Requires: pipewire-alsa Requires: pipewire-alsa-32bit Requires: pipewire-media-session Requires: pipewire-media-session-lang Requires: pipewire-spa-plugins-0_2 Requires: pipewire-spa-tools Requires: libKPipeWire6-lang Requires: wireplumber Requires: gstreamer-plugin-pipewire Requires: libpipewire-0_3-0 Requires: xdg-desktop-portal-wlr Requires: xdg-desktop-portal-lang Requires: xwaylandvideobridge6 Provides: khotkeys5 = 6.0 Obsoletes: khotkeys5 < 6.0 Provides: khotkeys5-lang = 6.0 Obsoletes: khotkeys5-lang < 6.0 Requires: ffmpeg-5 Provides: ffmpeg-5-mini-libs = 5.1.2023 Obsoletes: ffmpeg-5-mini-libs < 5.1.2023 Provides: ffmpeg-4 = 4.4.2023 Obsoletes: ffmpeg-4 < 4.4.2023 Requires: libzypp Provides: libzypp.so.1702()(64bit) Provides: libzypp.so.1702(ZYPP_plain)(64bit) Provides: libtirpc.so.1()(64bit) Provides: libcrypto.so.10()(64bit) Provides: libcrypto.so.10(OPENSSL_1.0.1_EC)(64bit) Provides: libcrypto.so.10(libcrypto.so.10)(64bit) Provides: libcrypto.so.10(OPENSSL_1.0.1)(64bit) Provides: libcrypto.so.10(OPENSSL_1.0.2)(64bit) Provides: libssl.so.10()(64bit) Provides: libssl.so.10(OPENSSL_1.0.1)(64bit) Provides: libssl.so.10(OPENSSL_1.0.1_EC)(64bit) Provides: libssl.so.10(OPENSSL_1.0.2)(64bit) Provides: libssl.so.10(libssl.so.10)(64bit) Provides: ncurses-compat-libs Provides: libavcodec57(unrestricted) Provides: libtinfo.so.6(NCURSES6_TINFO_5.0.19991023) Provides: libowcrypt.so.1()(64bit) Provides: libowcrypt.so.1(OW_CRYPT_1.0)(64bit) Provides: boost-filesystem Provides: libuuid BuildRoot: %{_tmppath}/%{name}-%{version}-build %description These are the operating system base files Regata OS. %build %install mkdir -p %{buildroot}/opt/regataos-base cp -f %{SOURCE1} %{buildroot}/opt/regataos-base/regataos-base-%{version}.tar.xz cp -f %{SOURCE2} %{buildroot}/opt/regataos-base/libcrypto.so.10-and-libssl.so.10.tar.xz mkdir -p %{buildroot}%{_bindir} install -Dm 755 %{SOURCE3} %{buildroot}%{_bindir}/regataos-auto-update.sh mkdir -p %{buildroot}/usr/share/regataos install -Dm 755 %{SOURCE4} %{buildroot}/usr/share/regataos/regataos-update.sh export NO_BRP_CHECK_RPATH=true %post # Update default settings #Check for iso creation if test -e "/usr/share/regataos/create-iso.txt"; then # Update default settings if test -e "/opt/regataos-base/regataos-base-%{version}.tar.xz"; then tar Jxvf "/opt/regataos-base/regataos-base-%{version}.tar.xz" -C / fi # Fix libcurl-gnutls.so.4 ln -sf /usr/lib64/libcurl.so.4 /usr/lib64/libcurl-gnutls.so.4 ln -sf /usr/lib/libcurl.so.4 /usr/lib/libcurl-gnutls.so.4 # Fix libcrypto.so.10 ln -sf /lib64/libcrypto.so.1.0.0 /usr/lib64/libcrypto.so.10 ln -sf /lib/libcrypto.so.1.0.0 /usr/lib/libcrypto.so.10 # Silent boot if test ! -e /etc/sysctl.d/20-quiet-printk.conf ; then echo "kernel.printk = 3 3 3 3" > /etc/sysctl.d/20-quiet-printk.conf fi if test ! -e /etc/systemd/system/getty@tty1.service.d/skip-prompt.conf ; then mkdir -p /etc/systemd/system/getty@tty1.service.d/ echo -e '[Service]\nExecStart=-/usr/bin/agetty --skip-login' | tee /etc/systemd/system/getty@tty1.service.d/skip-prompt.conf fi # Add user in vboxusers group getent group vboxusers >/dev/null || groupadd -r vboxusers getent group vboxguest >/dev/null || groupadd -r vboxguest getent group vboxsf >/dev/null || groupadd -r vboxsf %service_add_post regataos-update.service systemctl enable regataos-update.service || true systemctl stop regataos-update.service || true %service_add_post regataos-auto-update.service systemctl enable regataos-auto-update.service || true systemctl stop regataos-auto-update.service || true # Fix pulseaudio fix_pulse=$(cat /etc/pulse/system.pa) if [[ $fix_pulse != *"load-module module-allow-passthrough"* ]]; then echo "load-module module-allow-passthrough" >> /etc/pulse/system.pa fi if [[ $(cat /etc/bash.bashrc | grep SDL_AUDIODRIVER) != *"SDL_AUDIODRIVER=pulseaudio"* ]]; then echo "export SDL_AUDIODRIVER=pulseaudio" >> /etc/bash.bashrc fi # Disabling these services helps in reducing boot time systemctl disable wicked.service systemctl disable wickedd-dhcp6.service systemctl disable wickedd-auto4.service systemctl disable wickedd-dhcp4.service systemctl disable wickedd.service systemctl disable wickedd-nanny.service systemctl disable lvm2-monitor.service # Reduce systemd timeout if [[ $(grep -r "DefaultTimeoutStopSec=5s" "/etc/systemd/system.conf") == *"DefaultTimeoutStopSec=5s"* ]]; then sed -i 's/DefaultTimeoutStopSec=5s/DefaultTimeoutStopSec=10s/' "/etc/systemd/system.conf" else if [[ $(grep -r "DefaultTimeoutStopSec=10s" "/etc/systemd/system.conf") != *"DefaultTimeoutStopSec=10s"* ]]; then echo "DefaultTimeoutStopSec=10s" >> "/etc/systemd/system.conf" fi fi # Fix for the ping command chmod 755 /bin/ping else # Update default settings if test -e "/opt/regataos-base/regataos-base-%{version}.tar.xz"; then tar Jxvf "/opt/regataos-base/regataos-base-%{version}.tar.xz" -C / fi if test -e /opt/regataos-base/libcrypto.so.10-and-libssl.so.10.tar.xz ; then tar xf /opt/regataos-base/libcrypto.so.10-and-libssl.so.10.tar.xz -C /usr/local/lib64/ fi if test -e /usr/share/libreoffice/share/config/images_breeze.zip ; then rm -f /usr/share/libreoffice/share/config/images_galaxy.zip ln -sf /usr/share/libreoffice/share/config/images_breeze.zip /usr/share/libreoffice/share/config/images_galaxy.zip fi if test -e /usr/share/icons/breeze-dark/apps/48/libreoffice-startcenter.svg ; then rm -f /usr/share/icons/breeze-dark/apps/48/libreoffice-startcenter.svg fi if test -e /usr/share/icons/breeze/apps/48/libreoffice-startcenter.svg ; then rm -f /usr/share/icons/breeze/apps/48/libreoffice-startcenter.svg fi if test -e /usr/share/applications/YaST2/sw_single.desktop ; then rm -f /usr/share/applications/YaST2/sw_single.desktop fi if test -e /usr/share/wallpapers/openSUSEdefault ; then rm -rf /usr/share/wallpapers/openSUSEdefault fi if test -e /usr/share/plasma/look-and-feel/org.openSUSE ; then rm -rf /usr/share/plasma/look-and-feel/org.openSUSE fi if test -e /usr/share/plasma/layout-templates/org.opensuse.desktop.defaultPanel ; then rm -rf /usr/share/plasma/layout-templates/org.opensuse.desktop.defaultPanel fi if test -e /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel ; then rm -rf /usr/share/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel fi if test -e "/usr/share/plasma/look-and-feel/org.kde.breezetwilight.desktop" ; then rm -rf "/usr/share/plasma/look-and-feel/org.kde.breezetwilight.desktop" fi if test -e "/usr/share/plasma/look-and-feel/org.openSUSE.desktop" ; then rm -rf "/usr/share/plasma/look-and-feel/org.openSUSE.desktop" fi if test -e "/usr/share/plasma/layout-templates/org.kde.plasma.desktop.appmenubar" ; then rm -rf "/usr/share/plasma/layout-templates/org.kde.plasma.desktop.appmenubar" fi if test -e "/usr/share/plasma/desktoptheme/openSUSElight" ; then rm -rf "/usr/share/plasma/desktoptheme/openSUSE" rm -rf "/usr/share/plasma/desktoptheme/openSUSEdark" rm -rf "/usr/share/plasma/desktoptheme/openSUSEdefault" rm -rf "/usr/share/plasma/desktoptheme/openSUSElight" fi if test -e "/usr/share/color-schemes/openSUSE.colors" ; then rm -rf "/usr/share/color-schemes/openSUSE.colors" rm -rf "/usr/share/color-schemes/OpenSUSEdark.colors" rm -rf "/usr/share/color-schemes/OpenSUSEdarkalternate.colors" fi # Fix MS Office Online if test -e /opt/msoffice-online/msoffice-online.tar.xz ; then tar xf /opt/msoffice-online/msoffice-online.tar.xz -C / cp -f /opt/magma/magma /opt/magma/magma-msoffice-online ln -sf /opt/magma/magma-msoffice-online /usr/bin/magma-msoffice-online fi # Fix libcurl-gnutls.so.4 ln -sf /usr/lib64/libcurl.so.4 /usr/lib64/libcurl-gnutls.so.4 ln -sf /usr/lib/libcurl.so.4 /usr/lib/libcurl-gnutls.so.4 # Fix libcrypto.so.10 ln -sf /lib64/libcrypto.so.1.0.0 /usr/lib64/libcrypto.so.10 ln -sf /lib/libcrypto.so.1.0.0 /usr/lib/libcrypto.so.10 # Fix Insync and possibly other programs if test ! -e /etc/pki/tls/certs/ca-bundle.crt ; then mkdir -p /etc/pki/tls/certs ln -sf /etc/ssl/ca-bundle.pem /etc/pki/tls/certs/ca-bundle.crt fi # Fix sudoers file chown root:root /etc/sudoers chmod 600 /etc/sudoers # Fix applications folder chown root:root /usr chown root:root /usr/lib chown root:root /usr/share chown root:root /usr/share/applications # Fix cups kmsg=$(grep -r "SystemGroup users" /etc/cups/) if [[ $kmsg != *"SystemGroup users"* ]]; then sed -i 's/SystemGroup root/SystemGroup users root/' /etc/cups/cups-files.conf echo "" >> /etc/cups/cupsd.conf echo "SystemGroup users root" >> /etc/cups/cupsd.conf fi # Silent boot if test ! -e /etc/sysctl.d/20-quiet-printk.conf ; then echo "kernel.printk = 3 3 3 3" > /etc/sysctl.d/20-quiet-printk.conf fi if test ! -e /etc/systemd/system/getty@tty1.service.d/skip-prompt.conf ; then mkdir -p /etc/systemd/system/getty@tty1.service.d/ echo -e '[Service]\nExecStart=-/usr/bin/agetty --skip-login' | tee /etc/systemd/system/getty@tty1.service.d/skip-prompt.conf fi # Add user in vboxusers group getent group vboxusers >/dev/null || groupadd -r vboxusers getent group vboxguest >/dev/null || groupadd -r vboxguest getent group vboxsf >/dev/null || groupadd -r vboxsf user=$(users | awk '{print $1}') usermod -a -G vboxusers $user usermod -a -G vboxguest $user usermod -a -G vboxsf $user # Disable btrfs quota for / # sudo btrfs quota disable / %service_add_post regataos-update.service systemctl enable regataos-update.service || true systemctl stop regataos-update.service || true %service_add_post regataos-auto-update.service systemctl enable regataos-auto-update.service || true systemctl stop regataos-auto-update.service || true # Configure firewalld systemctl enable firewalld.service || true systemctl start firewalld.service || true firewall-cmd --permanent --zone=public --add-service=kdeconnect-kde firewall-cmd --permanent --zone=internal --add-service=kdeconnect-kde firewall-cmd --permanent --zone=home --add-service=kdeconnect-kde firewall-cmd --permanent --zone=work --add-service=kdeconnect-kde firewall-cmd --permanent --zone=public --add-service={samba,samba-client} firewall-cmd --permanent --zone=internal --add-service={samba,samba-client} firewall-cmd --permanent --zone=home --add-service={samba,samba-client} firewall-cmd --permanent --zone=work --add-service={samba,samba-client} firewall-cmd --permanent --zone=public --add-service={ipp,ipp-client,mdns} firewall-cmd --permanent --zone=internal --add-service={ipp,ipp-client,mdns} firewall-cmd --permanent --zone=home --add-service={ipp,ipp-client,mdns} firewall-cmd --permanent --zone=work --add-service={ipp,ipp-client,mdns} firewall-cmd --reload # Fix cups for printers cupsctl --remote-admin --remote-any --share-printers --user-cancel-any systemctl restart cups # Make remote CUPS printers available locally #systemctl enable cups-browsed.service #systemctl start cups-browsed.service # replace showdesktop with minimizeall sed -i 's/plugin=org.kde.plasma.showdesktop/plugin=org.kde.plasma.minimizeall/' /home/*/.config/plasma-org.kde.plasma.desktop-appletsrc if test -e /usr/share/applications/YaST2/live-installer.desktop ; then echo "In Live Mode" echo "" >> /etc/sudoers echo "visitante ALL=NOPASSWD: ALL" >> /etc/sudoers fi # Detect hybrid graphics #Detect "device 2" and configure xorg device=$(inxi -G | egrep -i "Card-2|Device-2") if [[ $device == *"AMD"* ]]; then rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-intel.conf rm -f /usr/share/X11/xorg.conf.d/20-intel.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf elif [[ $device == *"ATI"* ]]; then rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-intel.conf rm -f /usr/share/X11/xorg.conf.d/20-intel.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf elif [[ $device == *"NVIDIA"* ]]; then rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-intel.conf rm -f /usr/share/X11/xorg.conf.d/20-intel.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf elif [[ $device == *"GeForce"* ]]; then rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-intel.conf rm -f /usr/share/X11/xorg.conf.d/20-intel.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf elif [[ $device == *"Intel"* ]]; then rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-intel.conf rm -f /usr/share/X11/xorg.conf.d/20-intel.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf else #Detect driver and configure xorg driver=$(lshw -class display) if [[ $driver == *"driver=intel"* ]]; then rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf cp -f /usr/share/regataos/gpu/20-intel.conf /etc/X11/xorg.conf.d/20-intel.conf cp -f /usr/share/regataos/gpu/20-intel.conf /usr/share/X11/xorg.conf.d/20-intel.conf elif [[ $driver == *"driver=i915"* ]]; then rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf cp -f /usr/share/regataos/gpu/20-intel.conf /etc/X11/xorg.conf.d/20-intel.conf cp -f /usr/share/regataos/gpu/20-intel.conf /usr/share/X11/xorg.conf.d/20-intel.conf elif [[ $driver == *"driver=i965"* ]]; then rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf cp -f /usr/share/regataos/gpu/20-intel.conf /etc/X11/xorg.conf.d/20-intel.conf cp -f /usr/share/regataos/gpu/20-intel.conf /usr/share/X11/xorg.conf.d/20-intel.conf elif [[ $driver == *"driver=iris"* ]]; then rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf cp -f /usr/share/regataos/gpu/20-intel.conf /etc/X11/xorg.conf.d/20-intel.conf cp -f /usr/share/regataos/gpu/20-intel.conf /usr/share/X11/xorg.conf.d/20-intel.conf elif [[ $driver == *"driver=nvidia"* ]]; then rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-intel.conf rm -f /usr/share/X11/xorg.conf.d/20-intel.conf rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf cp -f /usr/share/regataos/gpu/20-nvidia.conf /etc/X11/xorg.conf.d/20-nvidia.conf cp -f /usr/share/regataos/gpu/20-nvidia.conf /usr/share/X11/xorg.conf.d/20-nvidia.conf elif [[ $driver == *"driver=amdgpu"* ]]; then rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-intel.conf rm -f /usr/share/X11/xorg.conf.d/20-intel.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf cp -f /usr/share/regataos/gpu/20-amdgpu.conf /etc/X11/xorg.conf.d/20-amdgpu.conf cp -f /usr/share/regataos/gpu/20-amdgpu.conf /usr/share/X11/xorg.conf.d/20-amdgpu.conf elif [[ $driver == *"driver=nouveau"* ]]; then rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-intel.conf rm -f /usr/share/X11/xorg.conf.d/20-intel.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf cp -f /usr/share/regataos/gpu/20-nouveau.conf /etc/X11/xorg.conf.d/20-nouveau.conf cp -f /usr/share/regataos/gpu/20-nouveau.conf /usr/share/X11/xorg.conf.d/20-nouveau.conf else rm -f /etc/X11/xorg.conf.d/20-amdgpu.conf rm -f /usr/share/X11/xorg.conf.d/20-amdgpu.conf rm -f /etc/X11/xorg.conf.d/20-radeon.conf rm -f /usr/share/X11/xorg.conf.d/20-radeon.conf rm -f /etc/X11/xorg.conf.d/20-intel.conf rm -f /usr/share/X11/xorg.conf.d/20-intel.conf rm -f /etc/X11/xorg.conf.d/20-nvidia.conf rm -f /usr/share/X11/xorg.conf.d/20-nvidia.conf rm -f /etc/X11/xorg.conf.d/20-nouveau.conf rm -f /usr/share/X11/xorg.conf.d/20-nouveau.conf echo "ERROR: Unsupported VGA controller" fi fi # Set version of the Regata OS new_version=%{version} detect_system_lang_1=$(grep -r LANG /home/*/.config/plasma-localerc) detect_system_lang_2=$(cat /home/*/.config/user-dirs.locale) if [ ! -z $detect_system_lang_1 ]; then system_lang=$(echo $detect_system_lang_1) elif [ ! -z $detect_system_lang_2 ]; then system_lang=$(echo $detect_system_lang_2) else "The user's language cannot be detected." fi if [[ $system_lang == *"pt"* ]]; then echo "[General]" > "/etc/xdg/kcm-about-distrorc" echo "LogoPath=/usr/share/regataos/regataos-110px.png" >> "/etc/xdg/kcm-about-distrorc" echo "Website=http://www.regataos.com.br/" >> "/etc/xdg/kcm-about-distrorc" echo "Variant=Versão %{system_version}" >> "/etc/xdg/kcm-about-distrorc" else echo "[General]" > "/etc/xdg/kcm-about-distrorc" echo "LogoPath=/usr/share/regataos/regataos-110px.png" >> "/etc/xdg/kcm-about-distrorc" echo "Website=http://www.regataos.com.br/" >> "/etc/xdg/kcm-about-distrorc" echo "Variant=Version %{system_version}" >> "/etc/xdg/kcm-about-distrorc" fi # Fix network #sudo rm -f /etc/resolv.conf #sudo rm -f /etc/resolv.conf.netconfig #sudo systemctl stop network.service #sudo systemctl --force enable NetworkManager.service #sudo systemctl restart network.service update-desktop-database # Fix emoji ln -sf /usr/share/fontconfig/emoji-fonts.conf /usr/share/fonts-config/emoji-fonts.conf sudo fc-cache -f # Fix pulseaudio fix_pulse=$(cat /etc/pulse/system.pa) if [[ $fix_pulse != *"load-module module-allow-passthrough"* ]]; then echo "load-module module-allow-passthrough" >> /etc/pulse/system.pa fi if [[ $(cat /etc/bash.bashrc | grep SDL_AUDIODRIVER) != *"SDL_AUDIODRIVER=pulseaudio"* ]]; then echo "export SDL_AUDIODRIVER=pulseaudio" >> /etc/bash.bashrc fi # Fix for plasma 5 themes if [[ $(cat /etc/bash.bashrc | grep QT_QUICK_CONTROLS_STYLE) == *"QT_QUICK_CONTROLS_STYLE=plasma"* ]]; then sed -i '/QT_QUICK_CONTROLS_STYLE/d' /etc/bash.bashrc fi # Disabling these services helps in reducing boot time systemctl disable wicked.service systemctl disable wickedd-dhcp6.service systemctl disable wickedd-auto4.service systemctl disable wickedd-dhcp4.service systemctl disable wickedd.service systemctl disable wickedd-nanny.service systemctl disable lvm2-monitor.service # Reduce systemd timeout if [[ $(grep -r "DefaultTimeoutStopSec=5s" "/etc/systemd/system.conf") == *"DefaultTimeoutStopSec=5s"* ]]; then sed -i 's/DefaultTimeoutStopSec=5s/DefaultTimeoutStopSec=10s/' "/etc/systemd/system.conf" else if [[ $(grep -r "DefaultTimeoutStopSec=10s" "/etc/systemd/system.conf") != *"DefaultTimeoutStopSec=10s"* ]]; then echo "DefaultTimeoutStopSec=10s" >> "/etc/systemd/system.conf" fi fi # Regata OS Minority Report #Start the installation ID creation process. #sudo node /usr/share/regataos/minority-report/updateExpirationDate.js # Fix for the ping command chmod 755 /bin/ping # Fix kernel name in grub kernel_version=$(uname -r) kernel_fixed_version1=$(uname -r | sed 's/\./\\./g') kernel_fixed_version2=$(uname -r | cut -d"-" -f -1) check_kernel_version=$(grep -r "with Linux $kernel_version" /boot/grub2/grub.cfg) if [[ $check_kernel_version == *"with Linux $kernel_version"* ]]; then sed -i "s/with Linux $kernel_fixed_version1/with Linux $kernel_fixed_version2/g" "/boot/grub2/grub.cfg" fi # Remove NVIDIA driver from blacklist rm -f "/etc/zypp/locks" fi # Disable the kernel's "split-lock" feature to help with the # performance of some games and applications. checkSplitLock=$(grep -r "split_lock_detect=off" /etc/default/grub) if [[ $checkSplitLock != *"split_lock_detect=off"* ]]; then sed -i 's/quiet splash/quiet splash split_lock_detect=off/' /etc/default/grub sudo grub2-mkconfig -o /boot/grub2/grub.cfg fi # Fix for "error while loading shared libraries: libjack.so.0" if test ! -e "/usr/lib64/libjack.so.0"; then ln -sf /usr/lib64/pipewire-0.3/jack/libjack.so.0 /usr/lib64/libjack.so.0 fi if test ! -e "/usr/lib/libjack.so.0"; then ln -sf /usr/lib/pipewire-0.3/jack/libjack.so.0 /usr/lib/libjack.so.0 fi # Remove ghost file org.opensuse.yast.OnlineUpdate.desktop checkFile=$(grep -r "Exec=" "/usr/share/applications/YaST2/org.opensuse.yast.OnlineUpdate.desktop") if [[ $checkFile != *"Exec"* ]]; then rm -f "/usr/share/applications/YaST2/org.opensuse.yast.OnlineUpdate.desktop" fi # Fix "org.kde.plasma.minimizeall" plasmoid if test -e "/usr/share/plasma/plasmoids/org.kde.plasma.minimizeall/contents/ui/main.qml"; then rm -rf "/usr/share/plasma/plasmoids/org.kde.plasma.minimizeall/contents" fi if test -e "/usr/share/plasma/plasmoids/org.kde.plasma.minimizeall/metadata.desktop"; then rm -f "/usr/share/plasma/plasmoids/org.kde.plasma.minimizeall/metadata.desktop" fi # Fix for look and feel of Plasma check_systemsettings_file=$(grep -r "regataos-plasma-settings" "/usr/share/applications/systemsettings.desktop") if [[ $check_systemsettings_file != *"regataos-plasma-settings"* ]]; then sed -i 's/Exec=systemsettings/Exec=regataos-plasma-settings systemsettings/' "/usr/share/applications/systemsettings.desktop" fi check_kcm_lookandfeel_file=$(grep -r "regataos-plasma-settings" "/usr/share/applications/kcm_lookandfeel.desktop") if [[ $check_kcm_lookandfeel_file != *"regataos-plasma-settings"* ]]; then sed -i 's/Exec=systemsettings kcm_lookandfeel/Exec=regataos-plasma-settings systemsettings kcm_lookandfeel/' "/usr/share/applications/kcm_lookandfeel.desktop" fi if test -e "/usr/share/applications/org.qt.qdbusviewer6.desktop"; then qdbusviewer6DesktopFile=$(cat "/usr/share/applications/org.qt.qdbusviewer6.desktop") if [[ $(echo "$qdbusviewer6DesktopFile") != *"NoDisplay"* ]]; then echo "NoDisplay=true" >> "/usr/share/applications/org.qt.qdbusviewer6.desktop" fi fi # Fix menu icon user=$(users | awk '{print $1}') if test -e "/home/$user/.config/plasma-org.kde.plasma.desktop-appletsrc"; then sed -i 's/start-here-branding/suse/g' /home/*/.config/plasma-org.kde.plasma.desktop-appletsrc fi %clean %files %defattr(-,root,root) /opt/regataos-base /opt/regataos-base/regataos-base-%{version}.tar.xz /opt/regataos-base/libcrypto.so.10-and-libssl.so.10.tar.xz /usr/share/regataos /usr/share/regataos/regataos-update.sh %{_bindir} %{_bindir}/regataos-auto-update.sh %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor