diff --git a/README b/README index c0f6e30..954088b 100644 --- a/README +++ b/README @@ -1,90 +1,79 @@ Author: Martin Koller, kollix@aon.at First release: Oktober 2017 liquidshell is an alternative to plasmashell It does not use QtQuick but instead uses QtWidgets. Main Features: - Wallpaper per virtual desktop - No animations, no CPU hogging, low Memory footprint - Instant startup - No use of activities (I never used nor needed them) - QtWidgets based, therefore follows widget style from systemsettings - Icons are used from your globally defined icon theme from systemsettings - Colors are used from your globally defined color theme from systemsettings - Can additionally be styled with css by passing the commandline option -stylesheet filename.css (see included example stylesheet.css) - uses existing KDE Frameworks dialogs for most configurations, e.g. StartMenu, Virtual Desktops, Bluetooth, Network - Just one bottom DesktopPanel, containing: StartMenu (allowing drag of entries into konqueror/dolphin to configure QuickLaunch or AppMenu entries) QuickLaunch (showing icons for .desktop files from a configurable folder) AppMenu (showing .desktop files in a menu from a configurable folder, defaults to users desktop folder) Pager (for switching virtual desktops) WindowList (Popup showing all open windows on all desktops) TaskBar (showing windows on the current desktop, allowing drag of an entry onto the Pager to move to a different desktop) LockLogout SysLoad widget including CPU, Memory, Swap and Network bars, live updated tooltip SysTray with integrated Network-, Notifications-, Device Notifier-, Bluetooth-, Battery- display. It also features PackageKit software updates integration. The DeviceList also shows devices connected and paired with KDEConnect. Display of StatusNotifier items from other applications (no legacy embedded icons yet). Notifications kept in a history list for some minutes, including timestamp and text selectable per mouse (very handy for copy/paste of TAC numbers from online banking received via SMS and transferred to KDE via kdeconnect) Clock widget (with calendar popup, tooltip for selected cities) The main motivation was to have a reliable desktop shell which does not hog the CPU or RAM. It should be slick and have just the features I need in my daily work. No need having all the bells and whistles anyone can think of. Just have a plain, solid, fast workhorse. How to start liquidshell instead of plasmashell ----------------------------------------------- -just copy org.kde.liquidshell.desktop into your ~/.config/autostart/ folder - -To avoid the start of plasmashell, create a file -~/.config/autostart/plasmashell.desktop - -(or ~/.config/autostart/org.kde.plasmashell.desktop - depending on what's the name in -/etc/xdg/autostart/ as it seems this was changed recently) - -with the following 2 lines as content: -[Desktop Entry] -Hidden=true - +Select "Liquidshell" from the list of possible session types on your login screen Building from source -------------------- mkdir build cd build cmake .. make Configuration ------------------------ To change the appearance details (beside the widget style, fonts, icon theme and color scheme selected via the systemsettings), you can use the commandline option -stylesheet filename.css to provide a Qt CSS widget stylesheet. For some examples see the included stylesheet.css file. For details about the syntax and possible options see http://doc.qt.io/qt-5/stylesheet.html ############# To explicitely disable the Software-Updater (packagekit based), set the ~/.config/liquidshellrc config file entry: [SoftwareUpdates] enabled=false The config file and a default entry will be created at first run of liquidshell ############# To explicitely disable icons shown on the Pager buttons, set the ~/.config/liquidshellrc config file entry: [Pager] showIcons=true The config file and a default entry will be created at first run of liquidshell diff --git a/liquidshell-session.desktop b/liquidshell-session.desktop new file mode 100644 index 0000000..c1c34bb --- /dev/null +++ b/liquidshell-session.desktop @@ -0,0 +1,6 @@ +[Desktop Entry] +Type=XSession +Exec=/usr/bin/start_liquidshell +TryExec=/usr/bin/start_liquidshell +DesktopNames=KDE +Name=Liquidshell diff --git a/org.kde.liquidshell.desktop b/org.kde.liquidshell.desktop index d1afb3e..2de3610 100644 --- a/org.kde.liquidshell.desktop +++ b/org.kde.liquidshell.desktop @@ -1,28 +1,29 @@ [Desktop Entry] Exec=liquidshell X-DBUS-StartupType=Unique Name=Liquid Desktop Workspace Name[ca]=Espai de treball de l'escriptori Liquid Name[ca@valencia]=Espai de treball de l'escriptori Liquid Name[cs]=Pracovní plocha Liquid Name[de]=Liquid-Arbeitsflächenbereich Name[en_GB]=Liquid Desktop Workspace Name[es]=Espacio de trabajo de escritorio Liquid Name[fi]=Liquid Desktop -työtila Name[fr]=Espace de travail du bureau Liquid Name[gl]=Espazo de traballo de escritorio Liquid Name[it]=Spazio di lavoro Liquid Desktop Name[nl]=Liquid bureaubladwerkruimte Name[pl]=Płynna przestrzeń pracy pulpitu Name[pt]=Área de Trabalho Liquid Name[pt_BR]=Espaço de trabalho Liquid Name[ru]=Рабочая среда Liquid Name[sk]=Pracovná plocha Liquid Name[sv]=Liquid arbetsområde för skrivbordet Name[uk]=Робочий простір Ліквід для комп'ютерів Name[x-test]=xxLiquid Desktop Workspacexx Type=Application X-KDE-StartupNotify=false OnlyShowIn=KDE; X-KDE-autostart-phase=0 NoDisplay=true +Hidden=false diff --git a/start_liquidshell b/start_liquidshell new file mode 100644 index 0000000..66ad1a4 --- /dev/null +++ b/start_liquidshell @@ -0,0 +1,45 @@ +#!/bin/bash +# disable plasmashell and enable liquidshell instead + +if [ ${XDG_CONFIG_HOME} ] +then + configDir=$XDG_CONFIG_HOME; +else + configDir=${HOME}/.config; #this is the default, http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html +fi + +if [ -f /etc/xdg/autostart/plasmashell.desktop ] +then + plasmaFileName=$configDir/autostart/plasmashell.desktop +else + plasmaFileName=$configDir/autostart/org.kde.plasmashell.desktop +fi + +liquidFileName=$configDir/autostart/org.kde.liquidshell.desktop + +mkdir -p $configDir/autostart + +test -f $liquidFileName +liquidNotExists=$? +if [ $liquidNotExists -eq 1 ] +then + cp /usr/share/applications/org.kde.liquidshell.desktop $configDir/autostart +else + sed -i -e "s/Hidden=true/Hidden=false/" $liquidFileName +fi + +cat > $plasmaFileName <