Browse Source

mit allem Müll

patience
Alf Gaida 4 years ago
parent
commit
353a2fa363
100 changed files with 4795 additions and 20 deletions
  1. 123
    0
      bootstrap
  2. 4
    3
      debian/control
  3. 11
    8
      debian/copyright
  4. 25
    0
      debian/get-template
  5. 2
    2
      debian/patience-kde-livesettings.install
  6. 4
    5
      debian/patience-kde-settings.install
  7. 0
    1
      debian/patience-kde-settings.postinst
  8. 1
    1
      debian/source/format
  9. 5
    0
      debtemplate/changelog
  10. 44
    0
      debtemplate/control
  11. 30
    0
      debtemplate/copyright
  12. 25
    0
      debtemplate/get-template
  13. 2
    0
      debtemplate/livesettings.install
  14. 1
    0
      debtemplate/livesettings.lintian-overrides
  15. 30
    0
      debtemplate/livesettings.postinst
  16. 28
    0
      debtemplate/livesettings.preinst
  17. 11
    0
      debtemplate/livesettings.service
  18. 13
    0
      debtemplate/rules
  19. 4
    0
      debtemplate/settings.install
  20. 41
    0
      debtemplate/settings.postinst
  21. 3
    0
      etc/dconf/db/local.d/plank
  22. 2
    0
      etc/dconf/profile/user
  23. 6
    0
      etc/default/grub.d/siduction.cfg
  24. 8
    0
      etc/gtk-2.0/gtkrc
  25. 2
    0
      etc/kde-user-profile
  26. 123
    0
      etc/kdeglobals_sss
  27. 6
    0
      etc/polkit-1/localauthority/50-local.d/org.freedesktop.NetworkManager.pkla
  28. 6
    0
      etc/skel/config/kactivitymanagerdrc
  29. 2
    0
      etc/skel/config/plank/dock1/launchers/siduction-irc.dockitem
  30. 2
    0
      etc/skel/config/plank/dock1/launchers/zim.dockitem
  31. 39
    0
      etc/skel/config/plank/dock1/settings
  32. 186
    0
      etc/skel/config/plasma-org.kde.plasma.desktop-appletsrc
  33. 3
    0
      etc/skel/dmrc
  34. 3
    0
      etc/skel/gitconfig
  35. 13
    0
      etc/skel/gitignore
  36. 64
    0
      etc/skel/local/share/konsole/DarkPastels.colorscheme
  37. 64
    0
      etc/skel/local/share/konsole/Linux.colorscheme
  38. 14
    0
      etc/skel/local/share/konsole/Shell.profile
  39. 33
    0
      etc/xdg/kdeglobals
  40. 3
    0
      etc/xdg/ksplashrc
  41. 2
    0
      etc/xdg/plasmarc
  42. 113
    0
      functions.sh
  43. 68
    0
      kde-cheatcodes
  44. 4
    0
      kde-settings.js
  45. 3
    0
      live/share/config/kdesurc
  46. 80
    0
      org.patience.desktop/contents/components/BreezeBlock.qml
  47. 29
    0
      org.patience.desktop/contents/components/BreezeHeading.qml
  48. 27
    0
      org.patience.desktop/contents/components/BreezeLabel.qml
  49. 91
    0
      org.patience.desktop/contents/components/InfoPane.qml
  50. 53
    0
      org.patience.desktop/contents/components/KeyboardLayoutButton.qml
  51. 102
    0
      org.patience.desktop/contents/components/LogoutOptions.qml
  52. 191
    0
      org.patience.desktop/contents/components/LogoutScreen.qml
  53. 130
    0
      org.patience.desktop/contents/components/UserDelegate.qml
  54. 53
    0
      org.patience.desktop/contents/components/UserList.qml
  55. 104
    0
      org.patience.desktop/contents/components/UserSelect.qml
  56. BIN
      org.patience.desktop/contents/components/artwork/background.png
  57. BIN
      org.patience.desktop/contents/components/artwork/logout_primary.svgz
  58. BIN
      org.patience.desktop/contents/components/artwork/restart_primary.svgz
  59. BIN
      org.patience.desktop/contents/components/artwork/shutdown_primary.svgz
  60. 23
    0
      org.patience.desktop/contents/defaults
  61. 200
    0
      org.patience.desktop/contents/desktopswitcher/DesktopSwitcher.qml
  62. 337
    0
      org.patience.desktop/contents/lockscreen/LockScreen.qml
  63. 258
    0
      org.patience.desktop/contents/loginmanager/Main.qml
  64. BIN
      org.patience.desktop/contents/loginmanager/breeze.jpg
  65. 16
    0
      org.patience.desktop/contents/loginmanager/metadata.desktop
  66. 2
    0
      org.patience.desktop/contents/loginmanager/theme.conf
  67. 63
    0
      org.patience.desktop/contents/logout/Logout.qml
  68. 58
    0
      org.patience.desktop/contents/osd/Osd.qml
  69. 83
    0
      org.patience.desktop/contents/osd/OsdItem.qml
  70. 0
    0
      org.patience.desktop/contents/previews/desktopswitcher.png
  71. BIN
      org.patience.desktop/contents/previews/lockscreen.png
  72. 0
    0
      org.patience.desktop/contents/previews/loginmanager.png
  73. BIN
      org.patience.desktop/contents/previews/preview.png
  74. 0
    0
      org.patience.desktop/contents/previews/runcommand.png
  75. BIN
      org.patience.desktop/contents/previews/splash.png
  76. 0
    0
      org.patience.desktop/contents/previews/userswitcher.png
  77. 0
    0
      org.patience.desktop/contents/previews/windowdecoration.png
  78. 0
    0
      org.patience.desktop/contents/previews/windowswitcher.png
  79. 184
    0
      org.patience.desktop/contents/runcommand/RunCommand.qml
  80. 100
    0
      org.patience.desktop/contents/splash/Splash.qml
  81. BIN
      org.patience.desktop/contents/splash/images/siduction.svgz
  82. 0
    0
      org.patience.desktop/contents/userswitcher/UserSwitcher.qml
  83. 0
    0
      org.patience.desktop/contents/windowdecoration/WindowDecoration.qml
  84. 158
    0
      org.patience.desktop/contents/windowswitcher/WindowSwitcher.qml
  85. 17
    0
      org.patience.desktop/metadata.desktop
  86. 104
    0
      template/crap/apps/color-schemes/Siduction.colors
  87. 81
    0
      template/crap/apps/desktoptheme/oxygen/colors
  88. 182
    0
      template/crap/apps/desktoptheme/oxygen/metadata.desktop
  89. 130
    0
      template/crap/apps/dolphin/dolphinui.rc
  90. 5
    0
      template/crap/apps/homerun/favoriteapps.xml
  91. 25
    0
      template/crap/apps/konsole/Shell.profile
  92. 64
    0
      template/crap/apps/konsole/Siduction.colorscheme
  93. 19
    0
      template/crap/apps/plasma-desktop/init/00-defaultLayout.js
  94. 29
    0
      template/crap/apps/plasma/layout-templates/org.kde.plasma-desktop.defaultPanel/contents/layout.js
  95. 26
    0
      template/crap/apps/plasma/plasmoids/lockout/contents/config/main.xml
  96. 117
    0
      template/crap/apps/plasma/plasmoids/lockout/contents/ui/config.ui
  97. 26
    0
      template/crap/apps/plasma/plasmoids/lockout/contents/ui/data.js
  98. 238
    0
      template/crap/apps/plasma/plasmoids/lockout/contents/ui/lockout.qml
  99. 214
    0
      template/crap/apps/plasma/plasmoids/lockout/metadata.desktop
  100. 0
    0
      template/crap/apps/plasma/plasmoids/org.kde.homerun-kicker/contents/config/main.xml

+ 123
- 0
bootstrap View File

@@ -0,0 +1,123 @@
#!/bin/bash
set -e


source ./functions.sh

source_version_info
debian_changelog
cleanup_old_builds
debian_cleanup
debian_foo_basics
basic_control kde
debian_rules

# debian

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@FLAVOUR\@/${FLAVOUR}/g" \
./debtemplate/copyright \
> ./debian/copyright

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/get-template \
> ./debian/get-template
chmod 755 ./debian/get-template


sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/settings.install \
> ./debian/${CODENAME_SAFE}-kde-settings.install

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/settings.postinst \
> ./debian/${CODENAME_SAFE}-kde-settings.postinst

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/livesettings.install \
> ./debian/${CODENAME_SAFE}-kde-livesettings.install

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/livesettings.lintian-overrides \
> ./debian/${CODENAME_SAFE}-kde-livesettings.lintian-overrides

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/livesettings.postinst \
> ./debian/${CODENAME_SAFE}-kde-livesettings.postinst

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/livesettings.preinst \
> ./debian/${CODENAME_SAFE}-kde-livesettings.preinst

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/livesettings.service \
> ./debian/${CODENAME_SAFE}-kde-livesettings.service

## templating

[ -d "./etc" ] && rm -rf ./etc
[ -d "./live" ] && rm -rf ./live
[ -d "./org.${CODENAME_SAFE}.desktop" ] && rm -rf org.${CODENAME_SAFE}.desktop

cp -r ./template/etc .

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DESCRIPTION\@/${DESCRIPTION}/g" \
./template/etc/xdg/kdeglobals \
> ./etc/xdg/kdeglobals

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DESCRIPTION\@/${DESCRIPTION}/g" \
./template/etc/xdg/ksplashrc \
> etc/xdg/ksplashrc



cp -r ./template/kde-cheatcodes .
cp -r ./template/kde-settings.js .
cp -r ./template/live .


## hacking the look-and-feel
cp -r ./template/org.CODENAME_SAFE.desktop ./org.${CODENAME_SAFE}.desktop

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DESCRIPTION\@/${DESCRIPTION}/g" \
./template/org.CODENAME_SAFE.desktop/contents/defaults \
> ./org.${CODENAME_SAFE}.desktop/contents/defaults

sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DESCRIPTION\@/${DESCRIPTION}/g" \
./template/org.CODENAME_SAFE.desktop/metadata.desktop \
> ./org.${CODENAME_SAFE}.desktop/metadata.desktop



#sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
# -e "s/\@DISPLAY\@/${DISPLAY}/g" \
# ./template/usr/share/apps/desktoptheme/oxygen/metadata.desktop \
# > ./usr/share/apps/desktoptheme/oxygen/metadata.desktop

#sed -e "s/\@DESCRIPTION\@/${DESCRIPTION}/g" \
# -e "s/\@DISPLAY\@/${DISPLAY}/g" \
# ./template/usr/share/config/kdeglobals \
# > ./usr/share/config/kdeglobals

#sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
# -e "s/\@DISPLAY\@/${DISPLAY}/g" \
# template/usr/share/config/ksplashrc \
# > ./usr/share/config/ksplashrc


grub_template kde


exit 0

+ 4
- 3
debian/control View File

@@ -8,10 +8,11 @@ Uploaders: Torsten Wohlfarth <towo@siduction.org>,
Build-Depends: debhelper (>= 9),
dh-systemd
Standards-Version: 3.9.8
Homepage: http://bugs.siduction.org/projects/siduction-settings
Vcs-Git: git://git.siduction.org/code/siduction-settings.git
Vcs-Browser: http://git.siduction.org/?p=code/siduction-settings.git;a=summary
Homepage: https://git.siduction.org/extra/settings-kde
Vcs-Git: https://git.siduction.org/extra/settings-kde.git
Vcs-Browser: https://git.siduction.org/extra/settings-kde.git

# kde Settings
Package: patience-kde-settings
Architecture: all
Depends: ${misc:Depends},

+ 11
- 8
debian/copyright View File

@@ -1,19 +1,22 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: siduction-settings
Source: http://git.siduction.org/?p=code/siduction-settings.git;a=summary

Upstream-Name: settings-kde
Source: https://git.siduction.org/extra/settings-kde.git

Files: *
Copyright: 2012-2015 Alf Gaida <agaida@siduction.org>
Copyright: 2012-2016 Alf Gaida <agaida@siduction.org>
2012-2015 Ovidiu Angelescu <convbsd@siduction.net>
2011-2012 Ferdinand Thommes <devil@siduction.org>
2011-2012 Torsten Wohlfarth <towo@siduction.org>
License: GPL-2.0+
License: GPL-2.0

Files: debian/*
Copyright: 2012-2016 Alf Gaida <agaida@siduction.org>
License: GPL-2.0

License: GPL-2.0+
License: GPL-2.0
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
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
the Free Software Foundation version 2 of the License.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of

+ 25
- 0
debian/get-template View File

@@ -0,0 +1,25 @@
#!/bin/bash
# Copyright 2016 Alf Gaida <agaida@siduction.org>
# License: WTFPL-2

source VERSION

[ -d ./debtemplate ] && rm -rf debtemplate

git checkout templates -- bootstrap
git checkout templates -- debtemplate
git checkout templates -- functions.sh
git checkout templates -- template

[ -f ./debian/rules ] && ./bootstrap && echo 'Bootstrap first run ...'
[ ! -f ./debian/rules ] && ./bootstrap && echo 'Bootstrap second run ...'

# [ -f ./debian/rules ] && rm -f bootstrap
# [ -f ./debian/rules ] && rm -rf debtemplate
# [ -f ./debian/rules ] && rm -f functions.sh
# [ -f ./debian/rules ] && rm -rf template


[ ! -f ./debian/rules ] && echo 'Something went wrong, debian/rules not created! Check bootstrap!'

git add .

+ 2
- 2
debian/patience-kde-livesettings.install View File

@@ -1,2 +1,2 @@
kde/live/share usr/share/patience-kde-settings/
kde/kde-cheatcodes usr/share/patience-kde-settings
live/share usr/share/patience-kde-settings/
kde-cheatcodes usr/share/patience-kde-settings

+ 4
- 5
debian/patience-kde-settings.install View File

@@ -1,5 +1,4 @@
kde/etc/* usr/share/patience-kde-settings/etc
kde/share usr/share/patience-kde-settings/
kde/*.js usr/share/patience-kde-settings/

kde/org.siduction.desktop usr/share/plasma/look-and-feel
*.js usr/share/patience-kde-settings
etc usr/share/patience-kde-settings/
#theme/* ' usr/share/patience-kde-settings/share/
org.patience.desktop usr/share/plasma/look-and-feel

+ 0
- 1
debian/patience-kde-settings.postinst View File

@@ -13,7 +13,6 @@ case "$1" in
cp -af /usr/share/patience-kde-settings/etc/gtk-2.0 /etc
## kde ##
cp -af /usr/share/patience-kde-settings/etc/kde-user-profile /etc
cp -af /usr/share/patience-kde-settings/etc/kde4rc /etc
## policyḱit-1 ##
cp -af /usr/share/patience-kde-settings/etc/polkit-1 /etc
## skel ##

+ 1
- 1
debian/source/format View File

@@ -1 +1 @@
3.0 (native)
1.0

+ 5
- 0
debtemplate/changelog View File

@@ -0,0 +1,5 @@
@CODENAME_SAFE@-@FLAVOUR@-settings (@VERSION@) @DISTRIBUTION@; urgency=medium

* Initial Release.

-- Alf Gaida <agaida@siduction.org> Thu, 16 Jul 2015 01:57:36 +0200

+ 44
- 0
debtemplate/control View File

@@ -0,0 +1,44 @@
Source: @CODENAME_SAFE@-@FLAVOUR@-settings
Section: misc
Priority: optional
Maintainer: Alf Gaida <agaida@siduction.org>
Uploaders: Torsten Wohlfarth <towo@siduction.org>,
Ferdinand Thommes <devil@siduction.org>,
Ovidiu Angelescu <convbsd@siduction.net>
Build-Depends: debhelper (>= 9),
dh-systemd
Standards-Version: 3.9.8
Homepage: https://git.siduction.org/extra/settings-@FLAVOUR@
Vcs-Git: https://git.siduction.org/extra/settings-@FLAVOUR@.git
Vcs-Browser: https://git.siduction.org/extra/settings-@FLAVOUR@.git

# @FLAVOUR@ Settings
Package: @CODENAME_SAFE@-@FLAVOUR@-settings
Architecture: all
Depends: ${misc:Depends},
@CODENAME_SAFE@-common-settings
Recommends: xdg-browser-launcher
Description: @DISPLAY@ settings in installed mode
Provides default settings for appearance and applications of the K Desktop
Environment.
.
This overrides @DISPLAY@'s defaults used for new users, all settings remain
configurable by the local user and don't override already existing user
profiles.

Package: @CODENAME_SAFE@-@FLAVOUR@-livesettings
Architecture: all
Depends: ${misc:Depends},
kwin-x11 | kwin-wayland,
plasma-workspace,
sidu-installer (>= 2014.01.10),
siduction-icons,
@CODENAME_SAFE@-@FLAVOUR@-artwork,
@CODENAME_SAFE@-@FLAVOUR@-settings,
@CODENAME_SAFE@-common-livesettings,
@CODENAME_SAFE@-sddm-livesettings
| @CODENAME_SAFE@-ligthdm-gtk-livesettings
| @CODENAME_SAFE@-gdm3-livesettings
Description: @DISPLAY@ settings in live mode
Provides default settings for appearance and applications of the K Desktop
Environment in live mode.

+ 30
- 0
debtemplate/copyright View File

@@ -0,0 +1,30 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: settings-@FLAVOUR@
Source: https://git.siduction.org/extra/settings-@FLAVOUR@.git

Files: *
Copyright: 2012-2016 Alf Gaida <agaida@siduction.org>
2012-2015 Ovidiu Angelescu <convbsd@siduction.net>
2011-2012 Ferdinand Thommes <devil@siduction.org>
2011-2012 Torsten Wohlfarth <towo@siduction.org>
License: GPL-2.0

Files: debian/*
Copyright: 2012-2016 Alf Gaida <agaida@siduction.org>
License: GPL-2.0

License: GPL-2.0
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
the Free Software Foundation version 2 of the License.
.
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 General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>
.
On Debian systems, the complete text of the GNU General
Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".

+ 25
- 0
debtemplate/get-template View File

@@ -0,0 +1,25 @@
#!/bin/bash
# Copyright 2016 Alf Gaida <agaida@siduction.org>
# License: WTFPL-2

source VERSION

[ -d ./debtemplate ] && rm -rf debtemplate

git checkout templates -- bootstrap
git checkout templates -- debtemplate
git checkout templates -- functions.sh
git checkout templates -- template

[ -f ./debian/rules ] && ./bootstrap && echo 'Bootstrap first run ...'
[ ! -f ./debian/rules ] && ./bootstrap && echo 'Bootstrap second run ...'

# [ -f ./debian/rules ] && rm -f bootstrap
# [ -f ./debian/rules ] && rm -rf debtemplate
# [ -f ./debian/rules ] && rm -f functions.sh
# [ -f ./debian/rules ] && rm -rf template


[ ! -f ./debian/rules ] && echo 'Something went wrong, debian/rules not created! Check bootstrap!'

git add .

+ 2
- 0
debtemplate/livesettings.install View File

@@ -0,0 +1,2 @@
live/share usr/share/@CODENAME_SAFE@-kde-settings/
kde-cheatcodes usr/share/@CODENAME_SAFE@-kde-settings

+ 1
- 0
debtemplate/livesettings.lintian-overrides View File

@@ -0,0 +1 @@
@CODENAME_SAFE@-kde-livesettings: init.d-script-call-internal-API etc/init.d/kde-cheatcodes

+ 30
- 0
debtemplate/livesettings.postinst View File

@@ -0,0 +1,30 @@
#!/bin/sh
# postinst script for #PACKAGE#

set -e

set_sddm_session() {
sed -e "s/User=/User=siducer/g" \
-e "s/Session=/Session=plasma.desktop/g" \
/etc/sddm-*.conf \
> /etc/sddm.conf
}


case "$1" in
configure)
set_sddm_session
;;

abort-upgrade|abort-remove|abort-deconfigure)
;;

*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac

#DEBHELPER#

exit 0

+ 28
- 0
debtemplate/livesettings.preinst View File

@@ -0,0 +1,28 @@
#!/bin/sh
# preinst script for #PACKAGE#

set -e

case "$1" in
install|upgrade)
if ! ischroot; then
if [ ! -d /fll ] ; then
echo '############################################################'
echo 'Installing this package is only allowed in live systems!'
echo 'Aborting installation.'
echo '############################################################'
exit 1
fi
fi
;;
abort-upgrade)
;;
*)
echo "preinst called with unknown argument \`$1'" >&2
exit 1
;;
esac

#DEBHELPER#

exit 0

+ 11
- 0
debtemplate/livesettings.service View File

@@ -0,0 +1,11 @@
[Unit]
Description=KDE cheatcodes in live media
ConditionPathExists=/usr/share/@CODENAME_SAFE@-kde-settings/
After=@CODENAME_SAFE@-common-livesettings.service

[Service]
Type=oneshot
ExecStart=/usr/share/@CODENAME_SAFE@-kde-settings/kde-cheatcodes start

[Install]
WantedBy=graphical.target

+ 13
- 0
debtemplate/rules View File

@@ -0,0 +1,13 @@
#!/usr/bin/make -f

export DH_VERBOSE=1

%:
dh $@ --with systemd

override_dh_installinit:
dh_systemd_enable
dh_installinit

override_dh_install:
dh_install --fail-missing

+ 4
- 0
debtemplate/settings.install View File

@@ -0,0 +1,4 @@
*.js usr/share/@CODENAME_SAFE@-kde-settings
etc usr/share/@CODENAME_SAFE@-kde-settings/
#theme/* ' usr/share/@CODENAME_SAFE@-kde-settings/share/
org.@CODENAME_SAFE@.desktop usr/share/plasma/look-and-feel

+ 41
- 0
debtemplate/settings.postinst View File

@@ -0,0 +1,41 @@
#!/bin/sh
# postinst script for #PACKAGE#

set -e

case "$1" in
configure)
## dconf ##
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/dconf /etc
## grub ##
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/default /etc
## gtk-2.0 ##
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/gtk-2.0 /etc
## kde ##
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/kde-user-profile /etc
## policyḱit-1 ##
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/polkit-1 /etc
## skel ##
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/skel/dmrc /etc/skel/.dmrc
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/skel/config /etc/skel/.config
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/skel/gitconfig /etc/skel/.gitconfig
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/skel/gitignore /etc/skel/.gitignore
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/skel/local /etc/skel/.local
## xdg ##
cp -af /usr/share/@CODENAME_SAFE@-kde-settings/etc/xdg /etc
## settings ##
dconf update
;;

abort-upgrade|abort-remove|abort-deconfigure)
;;

*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac

#DEBHELPER#

exit 0

+ 3
- 0
etc/dconf/db/local.d/plank View File

@@ -0,0 +1,3 @@
[net/launchpad/plank/docks/dock1]
position='top'
icon-size=32

+ 2
- 0
etc/dconf/profile/user View File

@@ -0,0 +1,2 @@
user-db:user
system-db:local

+ 6
- 0
etc/default/grub.d/siduction.cfg View File

@@ -0,0 +1,6 @@
GRUB_TERMINAL_OUTPUT=gfxterm
GRUB_GFXMODE=1280x1024
GRUB_GFXPAYLOAD_LINUX=1280x1024
GRUB_THEME=/usr/share/grub/themes/patience/theme.txt

GRUB_DISTRIBUTOR="siduction 2016.1.0 patience (kde)"

+ 8
- 0
etc/gtk-2.0/gtkrc View File

@@ -0,0 +1,8 @@
include "/usr/share/themes/Adwaita/gtk-2.0/gtkrc"
gtk-font-name="DejaVu Sans Book 9"
gtk-theme-name="Adwaita"
gtk-icon-theme-name="oxygen"
gtk-fallback-icon-theme="gnome"
gtk-toolbar-style=GTK_TOOLBAR_ICONS
gtk-menu-images=1
gtk-button-images=1

+ 2
- 0
etc/kde-user-profile View File

@@ -0,0 +1,2 @@
[General]
groups=

+ 123
- 0
etc/kdeglobals_sss View File

@@ -0,0 +1,123 @@
[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=189,195,199
BackgroundNormal=239,240,241
DecorationFocus=61,174,233
DecorationHover=147,206,233
ForegroundActive=61,174,233
ForegroundInactive=127,140,141
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=49,54,59
ForegroundPositive=39,174,96
ForegroundVisited=127,140,141

[Colors:Selection]
BackgroundAlternate=29,153,243
BackgroundNormal=61,174,233
DecorationFocus=61,174,233
DecorationHover=147,206,233
ForegroundActive=252,252,252
ForegroundInactive=239,240,241
ForegroundLink=253,188,75
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=239,240,241
ForegroundPositive=39,174,96
ForegroundVisited=189,195,199

[Colors:Tooltip]
BackgroundAlternate=77,77,77
BackgroundNormal=49,54,59
DecorationFocus=61,174,233
DecorationHover=147,206,233
ForegroundActive=61,174,233
ForegroundInactive=189,195,199
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=239,240,241
ForegroundPositive=39,174,96
ForegroundVisited=127,140,141

[Colors:View]
BackgroundAlternate=239,240,241
BackgroundNormal=252,252,252
DecorationFocus=61,174,233
DecorationHover=147,206,233
ForegroundActive=61,174,233
ForegroundInactive=127,140,141
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=49,54,59
ForegroundPositive=39,174,96
ForegroundVisited=127,140,141

[Colors:Window]
BackgroundAlternate=189,195,199
BackgroundNormal=239,240,241
DecorationFocus=61,174,233
DecorationHover=147,206,233
ForegroundActive=61,174,233
ForegroundInactive=127,140,141
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=246,116,0
ForegroundNormal=49,54,59
ForegroundPositive=39,174,96
ForegroundVisited=127,140,141

[General]
BrowserApplication=firefox
ColorScheme=Breeze
Name=Breeze
XftAntialias=true
XftHintStyle=hintmedium
XftSubPixel=none
shadeSortColumn=true
widgetStyle=Breeze

[Icons]
Theme=breeze

[KDE]
ChangeCursor=true
ColorScheme=Breeze
LookAndFeelPackage=org.siduction.desktop
contrast=4
widgetStyle=Breeze

[KFileDialog Settings]
Breadcrumb Navigation=true

[Paths]
Trash=$HOME/Desktop/Trash/

[WM]
activeBackground=71,80,87
activeBlend=255,255,255
activeForeground=239,240,241
inactiveBackground=239,240,241
inactiveBlend=75,71,67
inactiveForeground=189,195,199

+ 6
- 0
etc/polkit-1/localauthority/50-local.d/org.freedesktop.NetworkManager.pkla View File

@@ -0,0 +1,6 @@
[nm-applet]
Identity=unix-group:netdev
Action=org.freedesktop.NetworkManager.*
ResultAny=yes
ResultInactive=no
ResultActive=yes

+ 6
- 0
etc/skel/config/kactivitymanagerdrc View File

@@ -0,0 +1,6 @@
[activities]
b064bca9-c706-47d6-b30c-62464bb6fcfa=Standard

[main]
currentActivity=b064bca9-c706-47d6-b30c-62464bb6fcfa
runningActivities=b064bca9-c706-47d6-b30c-62464bb6fcfa

+ 2
- 0
etc/skel/config/plank/dock1/launchers/siduction-irc.dockitem View File

@@ -0,0 +1,2 @@
[PlankItemsDockItemPreferences]
Launcher=file:///usr/share/applications/siduction-irc.desktop

+ 2
- 0
etc/skel/config/plank/dock1/launchers/zim.dockitem View File

@@ -0,0 +1,2 @@
[PlankItemsDockItemPreferences]
Launcher=file:///usr/share/applications/zim.desktop

+ 39
- 0
etc/skel/config/plank/dock1/settings View File

@@ -0,0 +1,39 @@
[PlankDockPreferences]
#Whether to show only windows of the current workspace.
CurrentWorkspaceOnly=false
#The size of dock icons (in pixels).
IconSize=32
#If 0, the dock won't hide. If 1, the dock intelligently hides. If 2, the dock auto-hides. If 3, the dock dodges active maximized windows. If 4, the dock dodges every window.
HideMode=1
#Time (in ms) to wait before unhiding the dock.
UnhideDelay=0
#Time (in ms) to wait before hiding the dock.
HideDelay=0
#The plug-name of the monitor for the dock to show on (e.g. DVI-I-1, HDMI1, LVDS1). Leave this empty to keep on the primary monitor.
Monitor=
#List of *.dockitem files on this dock. DO NOT MODIFY
DockItems=siduction-irc.dockitem;;zim.dockitem;
#The position for the dock on the monitor. If 0, left. If 1, right. If 2, top. If 3, bottom.
Position=2
#The dock's position offset from center (in percent).
Offset=0
#The name of the dock's theme to use.
Theme=Siduction
#The alignment for the dock on the monitor's edge. If 0, panel-mode. If 1, left-aligned. If 2, right-aligned. If 3, centered.
Alignment=3
#The alignment of the items in this dock if panel-mode is used. If 1, left-aligned. If 2, right-aligned. If 3, centered.
ItemsAlignment=3
#Whether to prevent drag'n'drop actions and lock items on the dock.
LockItems=false
#Whether to use pressure-based revealing of the dock if the support is available.
PressureReveal=false
#Whether to show only pinned applications. Useful for running more then one dock.
PinnedOnly=false
#Whether to automatically pin an application if it seems useful to do.
AutoPinning=true
#Whether to show the item for the dock itself.
ShowDockItem=false
#Whether the dock will zoom when hovered.
ZoomEnabled=false
#The dock's icon-zoom (in percent).
ZoomPercent=150

+ 186
- 0
etc/skel/config/plasma-org.kde.plasma.desktop-appletsrc View File

@@ -0,0 +1,186 @@
[ActionPlugins][0]
MidButton;NoModifier=org.kde.paste
RightButton;NoModifier=org.kde.contextmenu
wheel:Vertical;NoModifier=org.kde.switchdesktop

[ActionPlugins][1]
MidButton;NoModifier=org.kde.paste
RightButton;NoModifier=org.kde.contextmenu

[ActionPlugins][127]
RightButton;NoModifier=org.kde.contextmenu

[Containments][1]
activityId=
formfactor=2
immutability=1
lastScreen=0
location=4
plugin=org.kde.panel
wallpaperplugin=org.kde.image

[Containments][1][Applets][18]
immutability=1
plugin=org.kde.plasma.icon

[Containments][1][Applets][18][Configuration][General]
applicationName=Dolphin
genericName=Dateiverwaltung
iconName=system-file-manager
url=file:///usr/share/applications/org.kde.dolphin.desktop

[Containments][1][Applets][19][Configuration][General]
applicationName=xdg-browser-launcher
genericName=Generic Web Browser
iconName=xdg-browser-launcher
url=file:///usr/share/applications/siduction/xdg-browser-launcher.desktop

[Containments][1][Applets][20]
immutability=1
plugin=org.kde.plasma.icon

[Containments][1][Applets][20][Configuration][ConfigDialog]
DialogHeight=540
DialogWidth=720

[Containments][1][Applets][20][Configuration][General]
applicationName=Konsole
genericName=Terminal
iconName=utilities-terminal
url=file:///usr/share/applications/org.kde.konsole.desktop

[Containments][1][Applets][21]
immutability=1
plugin=org.kde.plasma.icon

[Containments][1][Applets][21][Configuration][General]
applicationName=Firefox
genericName=Webbrowser
iconName=firefox
url=file:///usr/share/applications/firefox.desktop

[Containments][1][Applets][23]
immutability=1
plugin=org.kde.plasma.digitalclock

[Containments][1][Applets][23][Configuration][Appearance]
showSeconds=true

[Containments][1][Applets][23][Configuration][ConfigDialog]
DialogHeight=540
DialogWidth=720

[Containments][1][Applets][3]
immutability=1
plugin=org.kde.plasma.pager

[Containments][1][Applets][30]
immutability=1
plugin=org.kde.plasma.kickerdash

[Containments][1][Applets][30][Configuration][ConfigDialog]
DialogHeight=540
DialogWidth=720

[Containments][1][Applets][30][Configuration][General]
customButtonImage=file:///usr/share/icons/hicolor/scalable/siduction.svg
favoriteApps=preferred://browser,Kontact.desktop,systemsettings.desktop,org.kde.dolphin.desktop,org.kde.kate.desktop
useCustomButtonImage=true

[Containments][1][Applets][30][Shortcuts]
global=Alt+F1

[Containments][1][Applets][30]
immutability=1
plugin=org.kde.plasma.kickerdash

[Containments][1][Applets][30][Configuration][ConfigDialog]
DialogHeight=540
DialogWidth=720

[Containments][1][Applets][30][Configuration][General]
customButtonImage=file:///usr/share/icons/hicolor/scalable/siduction.svg
favoriteApps=preferred://browser,Kontact.desktop,systemsettings.desktop,org.kde.dolphin.desktop,org.kde.kate.desktop
useCustomButtonImage=true

[Containments][1][Applets][30][Shortcuts]
global=Alt+F1

[Containments][1][Applets][4]
immutability=1
plugin=org.kde.plasma.taskmanager

[Containments][1][Applets][5]
immutability=1
plugin=org.kde.plasma.systemtray

[Containments][1][Applets][5][Configuration][ConfigDialog]
DialogHeight=540
DialogWidth=720

[Containments][1][Applets][5][Configuration][Containments][8]
formfactor=2
location=4

[Containments][1][Applets][5][Configuration][Containments][8][Applets][10]
immutability=1
plugin=org.kde.plasma.printmanager

[Containments][1][Applets][5][Configuration][Containments][8][Applets][11]
immutability=1
plugin=org.kde.plasma.devicenotifier

[Containments][1][Applets][5][Configuration][Containments][8][Applets][12]
immutability=1
plugin=org.kde.plasma.volume

[Containments][1][Applets][5][Configuration][Containments][8][Applets][12][Configuration][ConfigDialog]
DialogHeight=540
DialogWidth=720

[Containments][1][Applets][5][Configuration][Containments][8][Applets][13]
immutability=1
plugin=org.kde.plasma.clipboard

[Containments][1][Applets][5][Configuration][Containments][8][Applets][14]
immutability=1
plugin=org.kde.plasma.battery

[Containments][1][Applets][5][Configuration][Containments][8][Applets][15]
immutability=1
plugin=org.kde.plasma.networkmanagement

[Containments][1][Applets][5][Configuration][Containments][8][Applets][9]
immutability=1
plugin=org.kde.plasma.notifications

[Containments][1][Applets][5][Configuration][General]
extraItems=org.kde.plasma.battery,org.kde.plasma.bluetooth,org.kde.plasma.clipboard,org.kde.plasma.devicenotifier,org.kde.plasma.mediacontroller,org.kde.plasma.networkmanagement,org.kde.plasma.notifications,org.kde.plasma.printmanager,org.kde.plasma.volume
knownItems=org.kde.plasma.battery,org.kde.plasma.bluetooth,org.kde.plasma.clipboard,org.kde.plasma.devicenotifier,org.kde.plasma.mediacontroller,org.kde.plasma.networkmanagement,org.kde.plasma.notifications,org.kde.plasma.printmanager,org.kde.plasma.volume
showAllItems=true
shownItems=org.kde.plasma.clipboard

[Containments][1][ConfigDialog]
DialogHeight=84
DialogWidth=1024

[Containments][1][General]
AppletOrder=30;3;18;20;21;4;5;23

[Containments][29]
activityId=b064bca9-c706-47d6-b30c-62464bb6fcfa
formfactor=0
immutability=1
lastScreen=0
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image

[Containments][29][ConfigDialog]
DialogHeight=540
DialogWidth=720

[Containments][29][Wallpaper][org.kde.image][General]
Image=file:///usr/share/wallpapers/paintitblack/contents/images/1280x1024.jpg
height=1024
width=1280

+ 3
- 0
etc/skel/dmrc View File

@@ -0,0 +1,3 @@
[Desktop]
Session=kde-plasma


+ 3
- 0
etc/skel/gitconfig View File

@@ -0,0 +1,3 @@
[user]
email = you@example.com
name = Your Name

+ 13
- 0
etc/skel/gitignore View File

@@ -0,0 +1,13 @@
.ICEauthority
.Xauthority
.bash_history
.cache/
.config/chromium/
.config/pulse/
.dbus/
.gconf/
.gnupg/
.local/
.pki/
.xfce4-session.*
.xsession-errors

+ 64
- 0
etc/skel/local/share/konsole/DarkPastels.colorscheme View File

@@ -0,0 +1,64 @@
[Background]
Color=44,44,44

[BackgroundIntense]
Color=44,44,44

[Color0]
Color=63,63,63

[Color0Intense]
Color=112,144,128

[Color1]
Color=112,80,80

[Color1Intense]
Color=220,163,163

[Color2]
Color=96,180,138

[Color2Intense]
Color=114,213,163

[Color3]
Color=223,175,143

[Color3Intense]
Color=240,223,175

[Color4]
Color=154,184,215

[Color4Intense]
Color=148,191,243

[Color5]
Color=220,140,195

[Color5Intense]
Color=236,147,211

[Color6]
Color=140,208,211

[Color6Intense]
Color=147,224,227

[Color7]
Color=220,220,204

[Color7Intense]
Color=255,255,255

[Foreground]
Color=220,220,204

[ForegroundIntense]
Color=220,220,204

[General]
Description=Dark Pastels
Opacity=0.90000000000000002
Wallpaper=

+ 64
- 0
etc/skel/local/share/konsole/Linux.colorscheme View File

@@ -0,0 +1,64 @@
[Background]
Color=0,0,0

[BackgroundIntense]
Color=104,104,104

[Color0]
Color=0,0,0

[Color0Intense]
Color=104,104,104

[Color1]
Color=178,24,24

[Color1Intense]
Color=255,84,84

[Color2]
Color=24,178,24

[Color2Intense]
Color=84,255,84

[Color3]
Color=178,104,24

[Color3Intense]
Color=255,255,84

[Color4]
Color=24,24,178

[Color4Intense]
Color=84,84,255

[Color5]
Color=178,24,178

[Color5Intense]
Color=255,84,255

[Color6]
Color=24,178,178

[Color6Intense]
Color=84,255,255

[Color7]
Color=178,178,178

[Color7Intense]
Color=255,255,255

[Foreground]
Color=178,178,178

[ForegroundIntense]
Color=255,255,255

[General]
Description=Linux Colors
Opacity=0.90000000000000002
Wallpaper=

+ 14
- 0
etc/skel/local/share/konsole/Shell.profile View File

@@ -0,0 +1,14 @@
[Appearance]
ColorScheme=DarkPastels

[General]
Name=Shell
Parent=FALLBACK/

[Interaction Options]
AutoCopySelectedText=true
OpenLinksByDirectClickEnabled=true
TrimTrailingSpacesInSelectedText=true

[Scrolling]
HistoryMode=2

+ 33
- 0
etc/xdg/kdeglobals View File

@@ -0,0 +1,33 @@
[General]
BrowserApplication=firefox
ColorScheme=Breeze
Name=Breeze
XftAntialias=true
XftHintStyle=hintmedium
XftSubPixel=none
shadeSortColumn=true
widgetStyle=Breeze

[Icons]
Theme=breeze

[KDE]
ChangeCursor=true
ColorScheme=Breeze
LookAndFeelPackage=org.patience.desktop
contrast=4
widgetStyle=Breeze

[KFileDialog Settings]
Breadcrumb Navigation=true

[Paths]
Trash=$HOME/Desktop/Trash/

[WM]
activeBackground=71,80,87
activeBlend=255,255,255
activeForeground=239,240,241
inactiveBackground=239,240,241
inactiveBlend=75,71,67
inactiveForeground=189,195,199

+ 3
- 0
etc/xdg/ksplashrc View File

@@ -0,0 +1,3 @@
[KSplash]
Engine=KSplashQML
Theme=org.patience.desktop

+ 2
- 0
etc/xdg/plasmarc View File

@@ -0,0 +1,2 @@
[Theme]
name=breeze-dark

+ 113
- 0
functions.sh View File

@@ -0,0 +1,113 @@
#!/bin/bash

# source version info
function source_version_info {
if [ -f VERSION ]; then
. ./VERSION
else
echo "No VERSION-File, exit!"
exit 1
fi

if [ -f FLAVOUR ]; then
. ./FLAVOUR
else
echo "No FLAVOUR-File, exit!"
exit 1
fi

}


# eventually cleanup old builds
function cleanup_old_builds {
if [ -f ./debian/rules ]; then
debuild -d clean
rm debian/rules
echo "old builds cleaned up, run bootstrap again!"
return 1
fi
}


# debian cleanup
# ==============
function debian_cleanup {
rm -vrf debian/siduction-live-settings-*-*
rm -vrf debian/siduction-settings-*-*
rm -vf debian/files
rm -vf debian/*.init
rm -vf debian/*.install
rm -vf debian/*.lintian-overrides
rm -vf debian/*.log
rm -vf debian/*.postinst
rm -vf debian/*.preinst
rm -vf debian/*.postrm
rm -vf debian/*.service
}


# debian changelog
# ================
function debian_changelog {
if [ ! -f debian/changelog ]; then
sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISTRIBUTION\@/${DISTRIBUTION}/g" \
-e "s/\@VERSION\@/${VERSION}/g" \
-e "s/\@FLAVOUR\@/${FLAVOUR}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/changelog \
> ./debian/changelog
fi
}


# basic control
# =============
function basic_control {
sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISTRIBUTION\@/${DISTRIBUTION}/g" \
-e "s/\@VERSION\@/${VERSION}/g" \
-e "s/\@FLAVOUR\@/${FLAVOUR}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/control \
> ./debian/control
}


# grub template
# =============
function grub_template {
mkdir -p ./etc/default/grub.d
sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISTRIBUTION\@/${DISTRIBUTION}/g" \
-e "s/\@VERSION\@/${VERSION}/g" \
-e "s/\@FLAVOUR\@/${1}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./template/etc/default/grub.d/siduction.cfg \
> ./etc/default/grub.d/siduction.cfg
}


# debian rules
# ============
function debian_rules {
sed -e "s/\@CODENAME_SAFE\@/${CODENAME_SAFE}/g" \
-e "s/\@DISTRIBUTION\@/${DISTRIBUTION}/g" \
-e "s/\@VERSION\@/${VERSION}/g" \
-e "s/\@FLAVOUR\@/${FLAVOUR}/g" \
-e "s/\@DISPLAY\@/${DISPLAY}/g" \
./debtemplate/rules \
> ./debian/rules
chmod 755 debian/rules
}


# debian_foo_basics
# =================
function debian_foo_basics {
mkdir -p ./debian/source
echo 1.0 > ./debian/source/format
echo 9 > ./debian/compat
}


+ 68
- 0
kde-cheatcodes View File

@@ -0,0 +1,68 @@
#!/bin/sh

PATH=/sbin:/usr/sbin:/bin:/usr/bin
NAME="kde-cheatcodes"

if [ -r /etc/default/distro ]; then
. /etc/default/distro
fi

. /lib/lsb/init-functions
. /lib/init/fll

if [ -r /etc/default/fll-locales ]; then
. /etc/default/fll-locales
fi

FLL_LIVE_USER_HOME=$(getent passwd ${FLL_LIVE_USER} | cut -d \: -f 6)

###
# cheatcode handling
###
for param in $(cat /proc/cmdline); do
case "${param}" in
flldebug=*)
if [ "${param#flldebug=}" = "${NAME}" ] || [ "${param#flldebug=}" = "all" ]; then
fll_redirect
fi
;;
nointro)
NOINTRO="nointro"
;;
esac
done

no_intro() {
if [ -z "${NOINTRO}" ] ; then
[ ! -f ${FLL_LIVE_USER_HOME}/.kde/Autostart/${FLL_DISTRO_NAME}.desktop ] && sudo -u ${FLL_LIVE_USER} ln -sf "${FLL_LIVE_USER_HOME}/Desktop/${FLL_DISTRO_NAME}.desktop" \
"${FLL_LIVE_USER_HOME}/.kde/Autostart/"
elif [ -e "${FLL_LIVE_USER_HOME}/.kde/Autostart/${FLL_DISTRO_NAME}.desktop" ]; then
# toram + persistency
rm -f "${FLL_LIVE_USER_HOME}/.kde/Autostart/${FLL_DISTRO_NAME}.desktop"
fi
}

do_start() {
if [ -f ${FLL_LIVE_USER_HOME}/Desktop/${FLL_DISTRO_NAME}.desktop ]; then
no_intro
fi
}

case "${1}" in
start)
log_daemon_msg "${NAME}"
do_start
log_end_msg "${?}"
;;
stop)
;;
restart|force-reload)
echo "Error: argument '${1}' not supported" >&2
exit 3
;;
*)
echo "Usage: ${NAME} {start|stop}" >&2
exit 3
;;
esac


+ 4
- 0
kde-settings.js View File

@@ -0,0 +1,4 @@
// Force use of the XUL file picker, anything is better than the GTK file
// picker on KDE ...
//
pref("ui.allow_platform_file_picker", false);

+ 3
- 0
live/share/config/kdesurc View File

@@ -0,0 +1,3 @@
[super-user-command]
super-user-command=sudo


+ 80
- 0
org.patience.desktop/contents/components/BreezeBlock.qml View File

@@ -0,0 +1,80 @@
/***************************************************************************
* Copyright (C) 2014 by David Edmundson <davidedmundson@kde.org> *
* Copyright (C) 2014 by Aleix Pol Gonzalez <aleixpol@blue-systems.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 2 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 program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/

import QtQuick 2.1
import QtQuick.Layouts 1.1
import QtQuick.Controls 1.1

import org.kde.plasma.core 2.0 as PlasmaCore

PlasmaCore.ColorScope {
colorGroup: PlasmaCore.Theme.ComplementaryColorGroup
property alias main: mainView.sourceComponent
property alias controls: controlsView.sourceComponent
readonly property alias mainItem: mainView.item
readonly property alias controlsItem: controlsView.item

property bool canShutdown: false
property bool canReboot: false

Rectangle {
color: PlasmaCore.ColorScope.backgroundColor
opacity: 0.8
anchors {
fill: parent
}
}

Loader {
id: mainView
anchors {
margins: units.largeSpacing

left: parent.left
right: parent.right
top: parent.top
bottom: separator.top
}
}

Rectangle {
id: separator
height: 1
color: PlasmaCore.ColorScope.textColor
width: parent.width
opacity: 0.4
anchors {
margins: units.largeSpacing

bottom: controlsView.top
}
}
Loader {
id: controlsView
focus: true
anchors {
margins: units.largeSpacing

left: parent.left
right: parent.right
bottom: parent.bottom
}
}
}

+ 29
- 0
org.patience.desktop/contents/components/BreezeHeading.qml View File

@@ -0,0 +1,29 @@
/***************************************************************************
* Copyright (C) 2014 by Aleix Pol Gonzalez <aleixpol@blue-systems.com> *
* Copyright (C) 2014 by Marco Martin <mart@kde.org> *
* *
* 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 2 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 program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/

import QtQuick 2.1
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.extras 2.0 as PlasmaExtras

PlasmaExtras.Heading {
level: 4
color: PlasmaCore.ColorScope.textColor
}

+ 27
- 0
org.patience.desktop/contents/components/BreezeLabel.qml View File

@@ -0,0 +1,27 @@
/***************************************************************************
* Copyright (C) 2014 by Aleix Pol Gonzalez <aleixpol@blue-systems.com> *
* Copyright (C) 2014 by Marco Martin <mart@kde.org> *
* *
* 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 2 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 program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/

import QtQuick 2.1
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents

PlasmaComponents.Label {
color: PlasmaCore.ColorScope.textColor
}

+ 91
- 0
org.patience.desktop/contents/components/InfoPane.qml View File

@@ -0,0 +1,91 @@
/*
* Copyright 2014 David Edmundson <davidedmundson@kde.org>
* Copyright (C) 2014 by Aleix Pol Gonzalez <aleixpol@blue-systems.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public
* License along with this program; if not, write to the
* Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/

import QtQuick 2.2
import QtQuick.Layouts 1.1
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.extras 2.0 as PlasmaExtras
import org.kde.plasma.workspace.components 2.0 as PW

ColumnLayout {
BreezeLabel { //should be a heading but we want it _loads_ bigger
text: Qt.formatTime(timeSource.data["Local"]["DateTime"])
//we fill the width then align the text so that we can make the text shrink to fit
Layout.fillWidth: true
horizontalAlignment: Text.AlignRight

font.weight: Font.DemiBold
fontSizeMode: Text.HorizontalFit
font.pointSize: 36
}

BreezeLabel {
text: Qt.formatDate(timeSource.data["Local"]["DateTime"], Qt.DefaultLocaleLongDate);
Layout.alignment: Qt.AlignRight
}

RowLayout {
Layout.alignment: Qt.AlignRight
visible: pmSource.data["Battery"]["Has Cumulative"]

PW.BatteryIcon {
id: battery
hasBattery: true
percent: pmSource.data["Battery"]["Percent"]
pluggedIn: pmSource.data["AC Adapter"] ? pmSource.data["AC Adapter"]["Plugged in"] : false

height: batteryLabel.height
width: batteryLabel.height
}

BreezeLabel {
id: batteryLabel
text: {
var state = pmSource.data["Battery"] ? pmSource.data["Battery"]["State"] : "";
switch(state) {
case "Charging":
return i18nd("plasma_lookandfeel_org.kde.lookandfeel","%1%. Charging", battery.percent)
case "FullyCharged":
return i18nd("plasma_lookandfeel_org.kde.lookandfeel","Fully charged")
default:
return i18nd("plasma_lookandfeel_org.kde.lookandfeel","%1% battery remaining", battery.percent)
}
}
Layout.alignment: Qt.AlignRight
wrapMode: Text.Wrap
}
}

PlasmaCore.DataSource {
id: pmSource
engine: "powermanagement"
connectedSources: ["Battery", "AC Adapter"]
}

PlasmaCore.DataSource {
id: timeSource
engine: "time"
connectedSources: ["Local"]
interval: 1000
}

}

+ 53
- 0
org.patience.desktop/contents/components/KeyboardLayoutButton.qml View File

@@ -0,0 +1,53 @@
/***************************************************************************
* Copyright (C) 2014 by Daniel Vrátil <dvratil@redhat.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 2 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 program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/

import QtQuick 2.1

import org.kde.plasma.components 2.0 as PlasmaComponents

import org.kde.plasma.workspace.keyboardlayout 1.0

PlasmaComponents.Button {
id: kbLayoutButton
// flat: false
// checkable: false
activeFocusOnTab: true
implicitWidth: minimumWidth
text: layout.currentLayout

Accessible.name: i18ndc("plasma_lookandfeel_org.kde.lookandfeel", "Button to change keyboard layout", "Switch layout")

onClicked: {
layout.nextLayout();
}

visible: layout.layouts.length > 1


KeyboardLayout {
id: layout

function nextLayout() {
var layouts = layout.layouts;
var index = (layouts.indexOf(layout.currentLayout)+1) % layouts.length;

layout.currentLayout = layouts[index];
}
}
}

+ 102
- 0
org.patience.desktop/contents/components/LogoutOptions.qml View File

@@ -0,0 +1,102 @@
/***************************************************************************
* Copyright (C) 2014 by Aleix Pol Gonzalez <aleixpol@blue-systems.com> *
* Copyright (C) 2014 by Marco Martin <mart@kde.org> *
* *
* 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 2 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 program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/

import QtQuick 2.1
import QtQuick.Layouts 1.1

import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents


PlasmaComponents.ButtonRow {
id: root
spacing: 0

property bool canReboot
property bool canShutdown
property bool canLogout
property string mode
onModeChanged: {
switch (mode) {
case "reboot":
restartButton.checked = true;
break;
case "shutdown":
shutdownButton.checked = true;
break;
case "logout":
logoutButton.checked = true;
break;
default:
restartButton.checked = false;
shutdownButton.checked = false;
logoutButton.checked = false;
break;
}
}

//Don't show the buttons if there's nothing to click
visible: !exclusive || (canReboot+canShutdown+canLogout)>1

PlasmaComponents.ToolButton {
id: restartButton
flat: false
iconSource: "system-reboot"
visible: root.canReboot
checkable: true
Accessible.name: i18ndc("plasma_lookandfeel_org.kde.lookandfeel", "Button to restart the computer", "Reboot")
activeFocusOnTab: true

onClicked: {
root.mode = "reboot"
}
}

PlasmaComponents.ToolButton {
id: shutdownButton
flat: false
iconSource: "system-shutdown"
visible: root.canShutdown
checkable: true
Accessible.name: i18ndc("plasma_lookandfeel_org.kde.lookandfeel", "Button to shut down the computer", "Shutdown")
activeFocusOnTab: true

onClicked: {
root.mode = "shutdown"
}

}

PlasmaComponents.ToolButton {
id: logoutButton
flat: false
iconSource: "system-log-out"
visible: root.canLogout
checkable: true
Accessible.name: i18ndc("plasma_lookandfeel_org.kde.lookandfeel", "Button to log out of the desktop session", "Log out")
activeFocusOnTab: true

onClicked: {
root.mode = "logout"
}

}
}


+ 191
- 0
org.patience.desktop/contents/components/LogoutScreen.qml View File

@@ -0,0 +1,191 @@
/***************************************************************************
* Copyright (C) 2014 by Aleix Pol Gonzalez <aleixpol@blue-systems.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 2 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 program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/

import QtQuick 2.1
import QtQuick.Layouts 1.1
import QtQuick.Controls 1.1 as Controls

import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.extras 2.0 as PlasmaExtras

BreezeBlock {
id: root
property string mode: "shutdown"
property var currentAction
property real timeout: 30
property real remainingTime: root.timeout
property bool canReboot
property bool canLogout
property bool canShutdown
onModeChanged: remainingTime = root.timeout

signal cancel()
signal shutdownRequested()
signal rebootRequested()

Controls.Action {
onTriggered: root.cancel()
shortcut: "Escape"
}

onRemainingTimeChanged: {
if(remainingTime<0)
root.currentAction()
}
Timer {
running: true
repeat: true
interval: 1000
onTriggered: remainingTime--
}

main: ColumnLayout {
spacing: 0
BreezeHeading {
id: actionLabel
Layout.alignment: Qt.AlignHCenter
}

Item { height: units.largeSpacing }

PlasmaCore.IconItem {
id: actionIcon
Layout.alignment: Qt.AlignHCenter
Layout.fillHeight: true
Layout.minimumWidth: height
Layout.maximumWidth: height
colorGroup: PlasmaCore.ColorScope.colorGroup
opacity: actionIconMouse.containsMouse ? 1 : 0.7
MouseArea {
id: actionIconMouse
hoverEnabled: true
anchors.fill: parent
onClicked: root.currentAction();
}
}

PlasmaComponents.ProgressBar {
id: progressBar
Layout.alignment: Qt.AlignHCenter
anchors.horizontalCenter: parent.horizontalCenter

//wanted to use actionIcon.paintedWidth but it doesn't work well when the image changes
width: units.largeSpacing*7
minimumValue: 0
maximumValue: root.timeout
value: root.remainingTime
}

BreezeLabel {
anchors.horizontalCenter: progressBar.horizontalCenter
text: i18ndp("plasma_lookandfeel_org.kde.lookandfeel", "in 1 second", "in %1 seconds", root.remainingTime);
}

state: mode
states: [
State {
name: "shutdown"
PropertyChanges { target: root; currentAction: shutdownRequested }
PropertyChanges { target: actionLabel; text: i18nd("plasma_lookandfeel_org.kde.lookandfeel","Shutting down") }
PropertyChanges { target: actionIcon; source: "system-shutdown" }
},
State {
name: "logout"
PropertyChanges { target: root; currentAction: logoutRequested }
PropertyChanges { target: actionLabel; text: i18nd("plasma_lookandfeel_org.kde.lookandfeel","Logging out") }
PropertyChanges { target: actionIcon; source: "system-log-out" }
},
State {
name: "reboot"
PropertyChanges { target: root; currentAction: rebootRequested }
PropertyChanges { target: actionLabel; text: i18nd("plasma_lookandfeel_org.kde.lookandfeel","Rebooting") }
PropertyChanges { target: actionIcon; source: "system-reboot" }
}
]
}

controls: Item {
Layout.fillWidth: true
height: buttons.height

RowLayout {
id: buttons
anchors.centerIn: parent

PlasmaComponents.Button {
id: cancelButton
text: i18nd("plasma_lookandfeel_org.kde.lookandfeel","Cancel")
onClicked: root.cancel()
Layout.preferredWidth: Math.max(commitButton.implicitWidth, cancelButton.implicitWidth)
}

PlasmaComponents.Button {
id: commitButton
Layout.preferredWidth: Math.max(commitButton.implicitWidth, cancelButton.implicitWidth)
onClicked: root.currentAction()
focus: true

function trigger() {
if (commitButton.activeFocus) {
root.currentAction()
}
}

Controls.Action {
onTriggered: commitButton.trigger()
shortcut: "Return"
}
Controls.Action {
onTriggered: commitButton.trigger()
shortcut: "Enter" // on numpad
}
}
}

LogoutOptions {
id: logoutOptions
anchors.right: parent.right
anchors.rightMargin: 5
canReboot: root.canReboot
canLogout: root.canLogout
canShutdown: root.canShutdown
onModeChanged: root.mode = mode

exclusive: true
Component.onCompleted: mode = root.mode;
}

state: mode
states: [
State {
name: "shutdown"
PropertyChanges { target: commitButton; text: i18nd("plasma_lookandfeel_org.kde.lookandfeel","Shut down") }
},
State {
name: "logout"
PropertyChanges { target: commitButton; text: i18nd("plasma_lookandfeel_org.kde.lookandfeel","Log out") }
},
State {
name: "reboot"
PropertyChanges { target: commitButton; text: i18nd("plasma_lookandfeel_org.kde.lookandfeel","Reboot") }
}
]
}
}

+ 130
- 0
org.patience.desktop/contents/components/UserDelegate.qml View File

@@ -0,0 +1,130 @@
/*
* Copyright 2014 David Edmundson <davidedmundson@kde.org>
* Copyright 2014 Aleix Pol Gonzalez <aleixpol@blue-systems.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public
* License along with this program; if not, write to the
* Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/

import QtQuick 2.2

import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents

Item {
id: wrapper

property bool isCurrent: ListView.isCurrentItem

property string name
property string userName
property string iconSource
property int faceSize: frame.width

signal clicked()

height: faceSize + loginText.implicitHeight

opacity: isCurrent ? 1.0 : 0.618

Behavior on opacity {
NumberAnimation { duration: 250 }
}

Item {
id: imageWrapper
anchors {
top: parent.top
left: parent.left
right: parent.right
}

height: parent.height - loginText.height

//TODO there code was to show a blue border on mouseover
//which shows that something is interactable.
//we can't have that whilst using widgets/background as the base
//I'd quite like it back

PlasmaCore.FrameSvgItem {
id: frame
imagePath: "widgets/background"

//width is set in alias at top
width: Math.round(faceSize * (isCurrent ? 1.0 : 0.8))
height: width

Behavior on width {
NumberAnimation {
duration: 100
}
}
anchors {
centerIn: parent
}
}

//we sometimes have a path to an image sometimes an icon
//IconItem in it's infinite wisdom tries to load a full path as an icon which is rubbish
//we try loading it as a normal image, if that fails we fall back to IconItem
Image {
id: face
source: wrapper.iconSource
anchors {
fill: frame
//negative to make frame around the image
topMargin: frame.margins.top
leftMargin: frame.margins.left
rightMargin: frame.margins.right
bottomMargin: frame.margins.bottom
}
}

PlasmaCore.IconItem {
id: faceIcon
source: wrapper.iconSource
visible: face.status == Image.Error
anchors.fill: face
}
}

BreezeLabel {
id: loginText
anchors {
bottom: parent.bottom
left: parent.left
right: parent.right
}
text: wrapper.name
elide: Text.ElideRight
horizontalAlignment: Text.AlignHCenter
maximumLineCount: 2
wrapMode: Text.Wrap
//make an indication that this has active focus, this only happens when reached with text navigation
font.underline: wrapper.activeFocus
height: Math.round(Math.max(paintedHeight, theme.mSize(theme.defaultFont).height*1.2))
}

MouseArea {
anchors.fill: parent
hoverEnabled: true

onClicked: wrapper.clicked();
}

Accessible.name: name
Accessible.role: Accessible.Button
function accessiblePressAction() { wrapper.clicked() }
}

+ 53
- 0
org.patience.desktop/contents/components/UserList.qml View File

@@ -0,0 +1,53 @@
/*
* Copyright 2014 David Edmundson <davidedmundson@kde.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public
* License along with this program; if not, write to the
* Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/

import QtQuick 2.2

ListView {
id: view
readonly property string selectedUser: currentItem ? currentItem.userName : ""
readonly property int userItemWidth: units.largeSpacing * 8
readonly property int userItemHeight: units.largeSpacing * 8
readonly property int userFaceSize: units.largeSpacing * 6

/*
* Signals that a user was explicitly selected
*/