17 KiB
Executable file
Installation
TABLE OF CONTENTS
Prerequisites
It's necessary to have KDE Plasma already installed on your system (plasma-workspace and plasma-desktop) in order to get all the Plasma-specific dependencies for AeroThemePlasma.
Before installing AeroThemePlasma, it's important to know which display server you're running on (Wayland or X11). This can be checked using Plasma's Info Center page in the settings. It's recommended, but optional, to run AeroThemePlasma on X11 for now, as it's generally the more stable and feature rich experience (certain restrictions on the Wayland session make some effects and features impossible to achieve, this should hopefully be addressed in the future).
Arch Linux
Required packages:
pacman -S git cmake extra-cmake-modules ninja curl unzip qt6-virtualkeyboard qt6-multimedia qt6-5compat qt6-wayland plasma-wayland-protocols plasma5support kvantum sddm sddm-kcm base-devel plasma-nm plasma-pa plasma-workspace plasma-desktop
Since Plasma 6.4, the X11 session has been separated from the main codebase. On Arch Linux, additional dependencies for X11 include:
kwin-x11plasma-x11-session
KSysGuard has been officially deprecated by KDE, however an unofficial port exists for Qt6, which can be installed using the AUR package on Arch-based distros.
Note: Dependencies for other distros besides Arch Linux have been provided by contributors and aren't updated frequently, which may result in incorrect or missing dependencies.
Fedora KDE
Required Packages:
dnf install gcc gcc-c++ cmake make extra-cmake-modules plasma-workspace-devel libksysguard-devel unzip kvantum qt6-qtmultimedia-devel qt6-qt5compat-devel libplasma-devel qt6-qtbase-devel qt6-qtwayland-devel plasma-activities-devel kf6-kpackage-devel kf6-kglobalaccel-devel qt6-qtsvg-devel wayland-devel plasma-wayland-protocols kf6-ksvg-devel kf6-kcrash-devel kf6-kguiaddons-devel kf6-kcmutils-devel kf6-kio-devel kdecoration-devel kf6-ki18n-devel kf6-knotifications-devel kf6-kirigami-devel kf6-kiconthemes-devel cmake gmp-ecm-devel kf5-plasma-devel libepoxy-devel kwin-devel kf6-karchive kf6-karchive-devel plasma-wayland-protocols-devel qt6-qtbase-private-devel qt6-qtbase-devel kf6-knewstuff-devel kf6-knotifyconfig-devel kf6-attica-devel kf6-krunner-devel kf6-kdbusaddons-devel kf6-sonnet-devel plasma5support-devel plasma-activities-stats-devel polkit-qt6-1-devel qt-devel libdrm-devel kf6-kitemmodels-devel kf6-kstatusnotifieritem-devel kf6-frameworkintegration-devel
On Fedora, additional dependencies for X11 include:
kwin-x11kwin-x11-devel
openSUSE Leap / Tumbleweed
Required packages:
zypper install cmake make ninja gcc gcc-c++ gmp-ecm-devel kf6-extra-cmake-modules qt6-base-devel qt6-quick-devel qt6-svg-devel qt6-quickcontrols2-devel kf6-kwindowsystem-devel kf6-karchive-devel kf6-kirigami-devel kf6-kbookmarks-devel kf6-kcodecs-devel kf6-kcolorscheme-devel kf6-kcompletion-devel kf6-kconfig-devel kf6-kconfigwidgets-devel kf6-kcoreaddons-devel kf6-kguiaddons-devel kf6-ki18n-devel kf6-kio-devel kf6-kitemviews-devel kf6-kjobwidgets-devel kf6-kservice-devel kf6-kwidgetsaddons-devel kf6-kxmlgui-devel kf6-solid-devel kf6-kglobalaccel-devel kf6-kiconthemes-devel kf6-knotifications-devel kf6-kpackage-devel kf6-ksvg-devel plasma6-activities-devel plasma-wayland-protocols qt6-wayland-devel qt6-quicktest-devel qt6-gui-private-devel kdecoration6-devel kf6-kcmutils-devel qt6-uitools-devel kf6-kcrash-devel libepoxy-devel kwin6-devel kwin6-x11-devel kf6-qqc2-desktop-style-devel knotifications-devel kf6-kauth-devel libplasma6-devel plasma5support6-devel plasma6-activities-stats-devel plasma6-workspace-devel
In openSUSE, additional dependencies for X11 include:
kwin6-x11-devel
Ubuntu 25.10
apt install build-essential cmake ninja-build curl libqt6virtualkeyboard6 libqt6multimedia6 libqt6core5compat6 libplasma5support6 libkdecorations3-dev libkf6colorscheme-dev libkf6i18n-dev libkf6iconthemes-dev libkf6kcmutils-dev libkirigami-dev libkf6kio-dev libkf6notifications-dev libkf6svg-dev libkf6crash-dev libkf6globalaccel-dev libplasma-dev libplasmaactivities-dev libxcb-composite0-dev libxcb-randr0-dev libxcb-shm0-dev libxcb-damage0-dev libepoxy-dev libqt6svg6-dev kwin-dev plasma-wayland-protocols libkf5qqc2desktopstyle-dev libkf6qqc2desktopstyle-dev libplasma5support-dev libkf6auth-dev libkf6newstuff-dev libkf6notifyconfig-dev libkf6attica-dev libkf6runner-dev libkf6dbusaddons-dev libkf6sonnet-dev libkf6xmlgui-dev libkf6coreaddons-dev libkf6widgetsaddons-dev libkf6guiaddons-dev qt6-base-dev qt6-5compat-dev qml-module-org-kde-qqc2desktopstyle libplasmaactivitiesstats-dev plasma-workspace-dev libkf6statusnotifieritem-dev qml-module-org-kde-kirigami-addons-sounds qml6-module-org-kde-kirigamiaddons-sounds
On Ubuntu, additional dependencies for X11 include:
kwin-x11kwin-x11-dev
Migration notice
AeroThemePlasma has moved to an installation method based on CMake, meant to simplify the entire process, as well as make it easier for distro packaging in the future. The old install scripts are deprecated and no longer work. It's highly recommended to first uninstall the old instance of AeroThemePlasma following these steps, before pulling in new changes from this repo:
- Run the uninstall script:
$ bash migration-uninstall.sh
- To undo the font rendering modifications, delete the
~/.config/fontconfig/fonts.conffile provided by the previous versions of ATP. - Remove the line
QML_DISABLE_DISTANCEFIELD=1from/etc/environment
It's advisable to also consult Uninstalling AeroThemePlasma (old) for more details.
Getting started
Arch Linux
The following packages are now on the AUR:
aerothemeplasma-desktop-git
aerothemeplasma-desktop-x11-git
aerothemeplasma-icons-git
aerothemeplasma-sounds-git
aeroshell-workspace-git
aeroshell-kwin-components-x11-git
aeroshell-kwin-components-git
aeroshell-smodglow-x11-git
aeroshell-smod-git
aeroshell-libplasma-git
uac-polkit-agent-git
They can be installed using any AUR helper of your choice:
yay -S aerothemeplasma-desktop-x11 uac-polkit-agent aerothemeplasma-desktop aeroshell-libplasma aeroshell-workspace aeroshell-kwin-components aeroshell-smod aeroshell-smodglow-x11 aerothemeplasma-sounds aerothemeplasma-icons
If you've previously installed ATP from source, it's likely that you will be met with errors on installation as a result of file conflicts on your filesystem. It's recommended to uninstall ATP from source before moving to the AUR packages.
From source
To download this repository, clone it with git:
$ git clone https://gitgud.io/wackyideas/aerothemeplasma.git aerothemeplasma
$ cd aerothemeplasma
It's highly recommended to use git for downloading AeroThemePlasma as updating becomes much easier.
Run the following script:
$ bash install.sh [--skip-x11] # --skip-x11 to skip building X11 components
NOTE: The --ninja argument has been replaced for CMAKE_GENERATOR. Set CMAKE_GENERATOR=Ninja before running the script if you wish to use Ninja instead. Like so:
$ CMAKE_GENERATOR=Ninja bash install.sh # pass any other arguments after this
This will clone every repository needed for AeroThemePlasma and build everything from source.
You can also run the install script like this:
$ chmod +x install.sh && ./install.sh
NOTE: If you happen to experience font rendering issues with HiDPI in QML applications after logging in, open the file named aerothemeplasmarc within ~/.config/, and add the following contents into it:
[General]
qmlDisableDistanceField=0
Make sure to not accidentally delete any other already existing stuff inside the file. Afterwards, restart your session and you should see your font look normal again.
NOTE FOR OTHER DISTROS
The script relies on LIBEXEC_DIR and UAC_LIBEXEC_DIR in order to determine the location of /usr/$LIBEXEC_DIR/plasma-dbus-run-session-if-needed and /usr/$UAC_LIBEXEC_DIR/polkit-kde-authentication-agent-1 respectively. By default, both are set to lib. If you're installing ATP on a distribution where this is different, such as Fedora, these values need to be set to the appropriate values for your specific distribution. For example, on Fedora, LIBEXEC_DIR should be libexec, and UAC_LIBEXEC_DIR should be libexec/kf6:
$ LIBEXEC_DIR=libexec UAC_LIBEXEC_DIR=libexec/kf6 bash install.sh --ninja
Additionally, for distros that don't ship the X11 version of KWin, pass the argument --skip-x11 to the install script in order to avoid building components that depend on X11.
The script will ask for admin privileges for file installation. Do NOT run any of the provided install scripts with sudo/doas or as root.
It's highly recommended to keep the generated build files, so uninstalling AeroThemePlasma and its dependencies can be done using sudo make uninstall or sudo ninja uninstall in each build directory. A backup of all install_manifest.txt files (that list all files that have been installed on the system) is stored in the manifest folder.
Updating AeroThemePlasma
Update and do git pull on the cloned repository to get new changes:
$ cd /path/to/aerothemeplasma
$ git pull
Re-run the install script as described in Getting started. The script will automatically pull changes for all cloned repositories and rebuild them. In case something needs to be rebuilt completely, simply delete the repository folder causing the build error, and re-run the install script.
When doing a full system upgrade, KWin effects and libplasma modifications tend to stop working. Re-running the install script after a full system upgrade is required for them to work again (assuming no breaking upstream changes happen).
Uninstalling AeroThemePlasma
Uninstalling AeroThemePlasma can be done by running the following script:
$ bash uninstall.sh
This will go through almost every build directory and run sudo make uninstall or sudo ninja uninstall in those directories. After this, the libplasma package should be reinstalled using your distro's package manager.
# On Arch Linux
$ sudo pacman -S libplasma
Fonts
On Arch Linux, use this script to extract fonts and install them as an Arch package from a valid Windows 7 ISO. A 32-bit Windows 7 ISO is recommended for faster download speeds.
Optional
- For Wine users it's recommended to install the VistaVG Ultimate msstyles theme.
- Add the following to
~/.bashrcto get bash to look more like the command prompt on Windows:
PS1='C:${PWD//\//\\\\}> '
echo -e "Microsoft Windows [Version 6.1.7600]\nCopyright (c) 2009 Microsoft Corporation. All rights reserved.\n"
-
In the terminal emulator of your choice (e.g Konsole), set the font to TerminalVector, size 9pt. Disable smooth font rendering and bold text, reduce the line spacing and margins to 0px, set the cursor shape to underline, and enable cursor blinking.
-
Install PlymouthVista which supports Windows 7 boot animations, and features a more detailed setup guide.
-
Install ExecBin for a more accurate "Run..." application.
GTK
AeroThemePlasma officially doesn't have any kind of maintenance, development or support for GTK applications. Instead, check out Windows 7 Better by Gamer95875, which is the recommended set of themes that works best with AeroThemePlasma.
Uninstalling AeroThemePlasma (old)
This section is meant for users migrating away from older versions of AeroThemePlasma (Before Plasma 6.6).
AeroThemePlasma provides an uninstall script that undoes much of what's installed on the system. The script assumes that all of the CMake build files are still present in the repo, most importantly the install_manifest.txt files generated as a result of installing compiled parts of ATP. If these files are missing from the repo, they need to be regenerated by once again rerunning the necessary scripts like this:
$ bash compile.sh --skip-libplasma [--wayland] [--ninja]
$ bash install_plasmoids.sh --skip-kpackages [--ninja]
Once this is done, the script is simply executed:
$ bash uninstall.sh
This should be run outside of the AeroThemePlasma session, preferrably in a regular Plasma session. The script will ask for confirmation to uninstall components of the system. Please check that none of the locations are ill-formed before accepting each prompt, especially those that require additional privileges to uninstall. In case this happens to you, report it as an issue ASAP.
Afterwards, libplasma and polkit-kde-agent should be reinstalled using your distro's package manager. For example, on Arch Linux:
sudo pacman -S libplasma polkit-kde-agent
Manual uninstallation
The script performs the following steps in order to uninstall ATP. Uninstalling ATP should be done outside of the ATP session itself. Log into the Plasma session before performing any of these steps.
CMake
- Perform
sudo make uninstallorsudo ninja uninstallin the following directories if applicable:
kwin/decoration/build
plasma/sddm/login-sessions/build
plasma/aerothemeplasma-kcmloader/build
plasma/plasmoids/src/systemtray_src/build
plasma/plasmoids/src/notifications_src/build
plasma/plasmoids/src/volume_src/build
plasma/plasmoids/src/sevenstart_src/build
plasma/plasmoids/src/seventasks_src/build
plasma/plasmoids/src/desktopcontainment/build
kwin/effects_cpp/kde-effects-aeroglassblur/build
kwin/effects_cpp/kwin-effect-smodsnap-v2/build
kwin/effects_cpp/smodglow/build
kwin/effects_cpp/aeroglide/build
kwin/effects_cpp/startupfeedback/build
# For Wayland builds
kwin/effects_cpp/kde-effects-aeroglassblur/build-wl
kwin/effects_cpp/kwin-effect-smodsnap-v2/build-wl
kwin/effects_cpp/smodglow/build-wl
kwin/effects_cpp/aeroglide/build-wl
kwin/effects_cpp/startupfeedback/build-wl
Plasmoids
- Perform
kpackagetool6 -t "Plasma/Applet" -r "plasmoid_id"for each plasmoid, replacingplasmoid_idwith the following:
io.gitgud.wackyideas.battery
io.gitgud.wackyideas.desktopcontainment
io.gitgud.wackyideas.digitalclocklite
io.gitgud.wackyideas.keyboardlayout
io.gitgud.wackyideas.networkmanagement
io.gitgud.wackyideas.panel
io.gitgud.wackyideas.SevenStart
io.gitgud.wackyideas.seventasks
io.gitgud.wackyideas.volume
io.gitgud.wackyideas.win7showdesktop
Plasma components
- Perform the following commands:
kpackagetool6 -t "Plasma/LookAndFeel" -r "authui7"
kpackagetool6 -t "Plasma/LayoutTemplate" -r "io.gitgud.wackyideas.taskbar"
kpackagetool6 -t "Plasma/Theme" -r "Seven-Black"
kpackagetool6 -t "Plasma/Shell" -r "io.gitgud.wackyideas.desktop"
- Delete
~/.local/share/color-schemes/Aero.colors - Delete
~/.config/Kvantum/Windows7Aero - Delete the sound themes from
~/.local/share/sounds:
'Windows 7'
'Windows 7 Afternoon'
'Windows 7 Calligraphy'
'Windows 7 Characters'
'Windows 7 Cityscape'
'Windows 7 Delta'
'Windows 7 Festival'
'Windows 7 Garden'
'Windows 7 Heritage'
'Windows 7 Landscape'
'Windows 7 Quirky'
'Windows 7 Raga'
'Windows 7 Savanna'
'Windows 7 Sonata'
- Delete the icon theme at
~/.local/share/icons/Windows 7 Aero - Delete the following files at
~/.local/share/mime/packages:
application-vnd.microsoft.portable-executable.xml
application-x-ms-dll.xml
application-x-msdownload.xml
application-x-ms-ne-executable.xml
and run update-mime-database ~/.local/share/mime to refresh MIME associations
KWin components
- Perform
kpackagetool6 -t "KWin/Effect" -r "effect_id"for each effect, replacingeffect_idwith the following:
dimscreenaero
fadingpopupsaero
loginaero
seventasks-thumbnails
smodpeekeffect
squashaero
- Perform the following:
kpackagetool6 -t "KWin/Script" -r "smodpeekscript"
kpackagetool6 -t "KWin/WindowSwitcher" -r "flip3d"
kpackagetool6 -t "KWin/WindowSwitcher" -r "thumbnail_seven"
- Delete the outline at
~/.local/share/kwin/outline - Delete the symlinks
~/.local/share/kwin-x11and~/.local/share/kwin-wayland - Delete the branding at
~/.config/kdedefaults/kcm-about-distrorcand the logo (~/.config/kdedefaults/kcminfo.png)
Other components
-
Delete the cursor theme at
/usr/share/icons/aero-drop -
Delete the SDDM theme at
/usr/share/sddm/themes/sddm-theme-mod -
Delete the SMOD files at
/usr/share/smodand~/.local/share/smod -
Delete
/opt/aerothemeplasma -
To undo the font rendering modifications, delete the ~/.config/fontconfig/fonts.conf file provided by the previous versions of ATP.
-
Remove the line QML_DISABLE_DISTANCEFIELD=1 from /etc/environment