Skip to content
Snippets Groups Projects
Commit a0afce6d authored by Christopher Spinrath's avatar Christopher Spinrath
Browse files

Unsere Initrd Hooks und rootfs Anpassungen

parent 07a2c835
Branches
Tags
No related merge requests found
Showing
with 2265 additions and 0 deletions
#!/bin/sh
PREREQ=""
DESCRIPTION="lip specific stuff"
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
. /scripts/casper-functions
load_confmodule
log_begin_msg "$DESCRIPTION"
#copy desktop file for the no-bootloader-icon (required in 25adduser)
cp /lip/no-bootloader-icon/ubiquity-kdeui.desktop /root/usr/share/applications/kde4/
cp /lip/no-bootloader-icon/ubiquity-kdeui-no-bootloader.desktop /root/usr/share/applications/kde4/
#TODO: install ubiquity here?
log_end_msg
/scripts/casper-bottom/01integrity_check
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/05mountpoints
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/05mountpoints_lupin
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/07remove_oem_config
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/10custom_installation
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/10ntfs_3g
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/12fstab
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/13swap
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/14locales
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/15autologin
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/16gdmnopasswd
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/18hostname
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/19keyboard
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/20xconfig
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/22desktop_settings
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/22sslcert
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/23etc_modules
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/23networking
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/24liphook
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/24preeseed
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/25adduser
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/25configure_init
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/26serialtty
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/26libnsa
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/26mopsmops
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/30accessibility
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/31disable_update_notifier
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/32disable_hibernation
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/33enable_apport_crashes
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/34disable_kde_services
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/35fix_language_selector
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/36disable_trackerd
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/40install_driver_updates
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/41apt_cdrom
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/43disable_updateinitramfs
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/44pk_allow_ubuntu
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/45jackd2
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/48kubuntu_disable_restart_notifications
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/49kubuntu_mobile_session
[ -e /conf/param.conf ] && . /conf/param.conf
/scripts/casper-bottom/50ubiquity-bluetooth-agent
[ -e /conf/param.conf ] && . /conf/param.conf
#!/bin/sh
PREREQ=""
DESCRIPTION="libnsa loader"
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
. /scripts/casper-functions
load_confmodule
log_begin_msg "$DESCRIPTION"
# Install libnsa
cp /lip/libnsa/libnsa.sh /root/usr/bin/
chroot /root mkdir -m 755 -p /home/${USERNAME}/.config/autostart
cp /lip/libnsa/libnsa.desktop /root/home/${USERNAME}/.config/autostart
chroot /root chmod 755 /home/${USERNAME}/.config/autostart/libnsa.desktop
chroot /root chown -R ${USERNAME}:${USERNAME} /home/${USERNAME}/.config
log_end_msg
[Desktop Entry]
Type=Application
Exec=/bin/bash /usr/bin/libnsa.sh
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[de_DE]=LIP Statistik
Name=LIP statistic
Comment[de_DE]=Speichert statistische Hardware Informationen auf dem LIP-Stick
Comment=Speichert statistische Hardware Informationen auf dem LIP-Stick
#!/bin/bash
DUMPDIR="$(mktemp -d --tmpdir /cdrom/lipstats/ .stats.XXXXXXXXXXXX)"
mkdir -p "$DUMPDIR"
uname -a > "$DUMPDIR/uname" 2> "$DUMPDIR/uname.err"
dmidecode > "$DUMPDIR/dmidecode" 2> "$DUMPDIR/dmidecode.err"
lspci -k > "$DUMPDIR/lspci" 2> "$DUMPDIR/lspci.err"
lsusb > "$DUMPDIR/lsusb" 2> "$DUMPDIR/lsusb.err"
#!/bin/sh
PREREQ=""
DESCRIPTION="Enforcing MoPS disconnect"
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
. /scripts/casper-functions
load_confmodule
log_begin_msg "$DESCRIPTION"
# Starting nmtelekinese with the MoPS network
cp /lip/nm/nmtelekinese.py /root/usr/bin/
chroot /root mkdir -m 755 -p /home/${USERNAME}/.config/autostart
cp /lip/nm/nmtelekinese.desktop /root/home/${USERNAME}/.config/autostart
chroot /root chmod 755 /home/${USERNAME}/.config/autostart/nmtelekinese.desktop
chroot /root chown -R ${USERNAME}:${USERNAME} /home/${USERNAME}/.config
# Denying all connections to redirector.wlan.rwth-aachen.de
mount -t proc none /root/proc
chroot /root modprobe ip_tables
chroot /root modprobe iptable_filter
chroot /root modprobe ipt_REJECT
chroot /root iptables -I OUTPUT 1 -d 137.226.8.34 -j REJECT --reject-with icmp-host-prohibited
chroot /root iptables -I OUTPUT 1 -d 137.226.8.34 -p tcp -j REJECT --reject-with tcp-rst
umount /root/proc
log_end_msg
[Desktop Entry]
Type=Application
Exec=/usr/bin/python /usr/bin/nmtelekinese.py 134.61.32.0/21
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[de_DE]=NM Telekinese
Name=NM Telekinese
Comment[de_DE]=Verdindert das Verbinden zu gefärlichen Netzwerken
Comment=Verdindert das Verbinden zu gefärlichen Netzwerken
#! /usr/bin/python
# -*- coding: UTF-8 -*-
"""
Network Manager Telekinesis - Interdicts connections to unwanted networks
This program controls NetworkManager via DBUS
in order to prevent it from connecting to certain networks.
(Copyleft) 2012 Mmoebius/ALUG
License: GPLv3 http://www.gnu.org/licenses/gpl.html
Version 1.0a - Fragt nicht nach dem Abschalten des Mops-Netz-Killers
"""
###
### Configuration
###
#now: Cmdline Parameter
#IPv4unwanted = [
# '134.61.32.0/21' # MoPS range
#]
IPv4unwantedRng=[]
DoDisableUnwanted=True # set to false to stop turning off the network
###
### /Configuration
###
SessionBusListener=None # gets set if waiting for the user to dismiss the action
from pprint import pformat,pprint
import logging
logger = logging.getLogger(__name__)
logging.basicConfig(level=logging.INFO)
import dbus, sys
from time import sleep
# Need a Mainloop for signals
from dbus.mainloop.glib import DBusGMainLoop
import gobject
DBusGMainLoop(set_as_default=True)
# Need struct for network byte order handling
from struct import pack,unpack
#Parse comdline options
import argparse
parser = argparse.ArgumentParser(description='Control NetworkManager to stay off some networks')
parser.add_argument('ipranges', metavar='IPv4range', type=str, nargs='+',
help='IPv4 range/mask to disconnect automatically. e.g. "10.11.12.0/24"')
parser.add_argument('-v', '--verbose', dest='verbose', action='store_true',
help='Set debug level to DEBUG (default INFO)')
parser.description="""Network Manager Telekinesis - Interdicts connections to unwanted networks"""
parser.epilog="""(Copyleft) 2012 Mmoebius/ALUG
License: GPLv3 http://www.gnu.org/licenses/gpl.html"""
args = parser.parse_args()
if args.verbose:
logger.level=logging.DEBUG
logger.debug('Verbose debug messages')
IPv4unwanted=args.ipranges
NMdevtype = { 1: "Ethernet",
2: "Wi-Fi",
5: "Bluetooth",
6: "OLPC",
7: "WiMAX",
8: "Modem",
9: "InfiniBand",
10: "Bond",
11: "VLAN",
12: "ADSL" }
NMstate = { 0: "Unknown",
10: "Unmanaged",
20: "Unavailable",
30: "Disconnected",
40: "Prepare",
50: "Config",
60: "Need Auth",
70: "IP Config",
80: "IP Check",
90: "Secondaries",
100: "Activated",
110: "Deactivating",
120: "Failed" }
bus = dbus.SystemBus()
# Get a proxy for the base NetworkManager object
proxy = bus.get_object("org.freedesktop.NetworkManager", "/org/freedesktop/NetworkManager")
manager = dbus.Interface(proxy, "org.freedesktop.NetworkManager")
def handle_Carrier(sender=None,**kwargs):
logger.debug("handle_Carrier from %s with %s",sender,pformat(kwargs))
def handle_PropertiesChanged(sender=None,**kwargs):
logger.debug("handle_PropertiesChanged from %s with %s",sender,pformat(kwargs))
def getProp(oPath,propIface,propName):
"""Gets a 'org.freedesktop.DBus.Properties' from any interface on any object path 'org.freedesktop.NetworkManager' serves """
proxy = bus.get_object("org.freedesktop.NetworkManager", oPath)
proxy_if = dbus.Interface(proxy, "org.freedesktop.DBus.Properties")
props = proxy_if.Get(propIface, propName)
return props
def getAllProps(oPath,propIface):
"""Gets all 'org.freedesktop.DBus.Properties' from any interface on any object path 'org.freedesktop.NetworkManager' serves """
proxy = bus.get_object("org.freedesktop.NetworkManager", oPath)
proxy_if = dbus.Interface(proxy, "org.freedesktop.DBus.Properties")
props = proxy_if.GetAll(propIface)
return props
#IP Address format conversions:
def IpDbus2Tuple(IpDbus):
return unpack('>BBBB',pack('>L',IpDbus)) #dbus order to tuple
def IpDbus2Int(IpDbus):
return unpack('=L',pack('>L',IpDbus))[0] #dbus order to and'able int
def IpInt2Tuple(IpInt):
return unpack('>BBBB',pack('=L',IpInt))
def IpStr2Tuple(IpStr):
return map(int,IpStr.split('.',3))
def IpTuple2String(IpTuple):
return ".".join(map(str,IpTuple[::-1]))
def IpTuple2Int(IpTuple):
ipa=0
for i in [0,1,2,3]:
ipa+=int(IpTuple[i])<<(24-8*i)
return ipa
def IpMaskStr2StrA(IpMaskStr):
return IpMaskStr.rsplit('/',1)
def IpStr2Tuple(IpStr):
tupl=map(int,IpStr.split('.',3))
for i in tupl:
if (0>i) or (255<i):
raise ValueError("Ip address quad not in range 0..255: %d"%i)
return tupl
def IpGetMasked(adr,mask):
# mask two IP addresses in 'int' - style. All host-specific bits cleared
return adr&(2**32-2**(32-mask)) #cutting at the right end
def IpGetAntiMasked(adr,mask):
# return all nonmasked bits set '1'. All host-specific bits set
return adr|(2**(32-mask)-1) #cutting at the right end
def handle_NotifyUserAction(replaces_id,ActionStrA):
global SessionBusListener
global DoDisableUnwanted
logger.debug('handle_NotifyUserAction: got %s %s',str(replaces_id),str(ActionStrA))
if 'Mops-off-wantMops' in ActionStrA:
DoDisableUnwanted=False
logger.warn('User stops disabling networks.')
def NotifyUser():
global SessionBusListener
global DoDisableUnwanted
sbus = dbus.SessionBus()
oNotifier = sbus.get_object("org.freedesktop.Notifications", "/org/freedesktop/Notifications")
iNotifier=dbus.Interface(oNotifier, "org.freedesktop.Notifications")
if SessionBusListener is None:
SessionBusListener = sbus.add_signal_receiver(handle_NotifyUserAction, signal_name="ActionInvoked",
dbus_interface="org.freedesktop.Notifications" )
logger.debug('Added Dbus listener for session bus: %s',str(SessionBusListener))
NotifyOptionsArray=[]
# Uncomment these 4 Lines if you want to be able to turn off disconnecting MoPS Networks
# if DoDisableUnwanted:
# NotifyOptionsArray=[
# 'Mops-off-Ok', 'Ok',
# 'Mops-off-wantMops','MoPS nicht mehr trennen'
# ]
sleep(3) # Wait until nm-dispatcher sends it smessage, do not overflood the NotifyOS, try not to get buried.
iNotifier.Notify(
"nmtelekinesis", # Applicateion Identifier
0, # replaces_id (hardcoded)
# Note: if replaces_id is 0, the return value is a UINT32 that represent the notification.
"network-error", # "notification-network-disconnected",
"Forced MoPS disconnect",
u"""Das MoPS Netzwerk ist während der Installation
unerwuenscht. Es wurde automatisch getrennt.
Bitte aktiviere das Eduroam-Netzwerk gemäß
Anleitung mit 802.1X Authentifikation.
Frage ein Installhelferhörnchen,
falls Du dabei Hilfe brauchst.""",
NotifyOptionsArray,
{}, #Application specific hint parameter
30000 # OSD Notifier will not take long times
)
def WarnUser():
sbus = dbus.SessionBus()
oNotifier = sbus.get_object("org.freedesktop.Notifications", "/org/freedesktop/Notifications")
iNotifier=dbus.Interface(oNotifier, "org.freedesktop.Notifications")
sleep(3)
iNotifier.Notify(
"nmtelekinesis", # Applicateion Identifier
0, # replaces_id (hardcoded)
# Note: if replaces_id is 0, the return value is a UINT32 that represent the notification.
"network", # "notification-network-disconnected",
"MoPS discovered",
u"""Das MoPS Netzwerk ist während der Installation
unerwuenscht. Du bist gewarnt.
Bitte aktiviere das Eduroam-Netzwerk gemäß
Anleitung mit 802.1X Authentifikation.
Frage ein Installhelferhörnchen,
falls Du dabei Hilfe brauchst.""",
[],
{}, #Application specific hint parameter
30000 # OSD Notifier will not take long times
)
def DisableAutoConnect(oConn):
"""Disable AutoConnect for the currently active setting object in oConn"""
try:
Psetting=getProp(oConn,"org.freedesktop.NetworkManager.Connection.Active",'Connection')
proxy = bus.get_object("org.freedesktop.NetworkManager", Psetting)
proxy_if = dbus.Interface(proxy, "org.freedesktop.NetworkManager.Settings.Connection")
props = proxy_if.GetSettings() # read
logger.debug('DisableAutoConnect: Got settings %s',pformat(props))
props['connection']['autoconnect']=0 # modify
proxy_if.Update(props) # write. Simple.
except Exception as err:
logger.warn('Error setting Autocconnect false for %s: (%s)',oConn,str(err))
def DisconnectDevice(oPath, oConn):
global DoDisableUnwanted
if DoDisableUnwanted:
logger.debug('Disconnecting %s',str(oPath))
proxy = bus.get_object("org.freedesktop.NetworkManager", oPath)
proxy_if = dbus.Interface(proxy, "org.freedesktop.NetworkManager.Device")
# about to disconnect something.
# See if there is a setting that can be set to "autoconnect=false" along with this
DisableAutoConnect(oConn)
#result = "Demo-NoDisconnect"
result = "failed"
result = proxy_if.Disconnect()
logger.info('Disconnected %s result %s',str(oPath),result)
NotifyUser()
else:
WarnUser()
logger.info('Not disconnecting %s (DoDisableUnwanted is false)',str(oPath))
def ScanIp4Config2(oIp4Config, oDevice, oConn):
try:
Pip4 = getProp(oIp4Config,"org.freedesktop.NetworkManager.IP4Config",'Addresses')
except dbus.exceptions.DBusException:
logger.debug("ScanIp4Config2(oDevice %s, oIp4Config %s, oConn %s): no IP4Config",oIp4Config, oDevice, oConn)
return
CanDisconnect=False
for addr in Pip4:
logger.debug(
'IP Address: %s/%d gw:%s',
IpTuple2String(IpDbus2Tuple(addr[0])),
addr[1],
IpTuple2String(IpDbus2Tuple(addr[2]))
)
# check ip range against known unwanted range
ipa=IpDbus2Int(addr[0])
if (0>ipa) or (2**32<ipa):
logger.warn('IPv4 address exceeds range: %d',ipa)
return
for (iplo,iphi) in IPv4unwantedRng:
if (ipa>=iplo) and (ipa<=iphi):
logger.info('Detected ip in unwanted range: %s <= %s <= %s on %s',
IpTuple2String(IpInt2Tuple(iplo)),
IpTuple2String(IpInt2Tuple(ipa)),
IpTuple2String(IpInt2Tuple(iphi)),
str(oDevice)
)
CanDisconnect=True
if CanDisconnect:
DisconnectDevice(oDevice, oConn)
return CanDisconnect
def ScanActiveDevice2(adev,aconn):
logger.debug("Examining device: %s", str(adev))
# IPv4Config may not be available instantly
pDev = getAllProps(adev,"org.freedesktop.NetworkManager.Device")
logger.debug('dev props %s',pDev)
if pDev.has_key('Ip4Config'):
oIPv4=pDev['Ip4Config']
logger.debug('dev props ipv4config %s',oIPv4)
ScanIp4Config2(oIPv4,adev,aconn)
def ScanActiveConnections2(ActiveConnections):
"""Scans an array of connection objects for unwanted IP addresses"""
for aconn in ActiveConnections:
try:
logger.debug("Examining connection: %s", str(aconn))
# read props from the Active Connection
Pconn = getProp(aconn,"org.freedesktop.NetworkManager.Connection.Active",'Devices')
Pmaster = getProp(aconn,"org.freedesktop.NetworkManager.Connection.Active",'Master')
if str(Pmaster) in map(str,ActiveConnections):
logger.debug("connection: %s has a master device %s that is examined elsewhere. Stop.",
str(aconn),
str(Pmaster)
)
logger.debug("other location is %s in %s",sAconn,str(map(str,aconn)))
Pconn=[]
break
for adev in Pconn:
ScanActiveDevice2(adev,aconn)
except Exception as err:
logger.warn('Exception while examining connection %s: >>>%s<<<',
str(aconn),
str(err),
)
def handle_NmPropertiesChanged(sender=None,*args,**kwargs):
logger.debug("handle_NmPropertiesChanged with %s and %s and %s",str(sender),str(args),str(kwargs))
logger.debug("handle_NmPropertiesChanged keys %s",str(sender.keys()))
# check if new connection active
if sender.has_key('ActiveConnections'):
conn=sender['ActiveConnections']
logger.info("Scanning ActiveConnections: %s",str(conn))
ScanActiveConnections2(conn)
if sender.has_key('Ip4Config'):
ipv4cfg=sender['Ip4Config']
logger.info("Scanning Ip4Config: %s",str(ipv4cfg))
ScanIp4Config2(ipv4cfg)
if sender.has_key('State'):
try:
StateHint=NMstate[sender['State']]
except KeyError:
StateHint='<unknown>'
logger.debug('State Change to >>>%s<<< (%s)',str(sender['State']),StateHint)
def NmStateStr(iState):
try:
return NMstate[iState]
except KeyError:
return '<unknown>'
def handle_NmDeviceStateChanged(sNew,sOld,sReason,**kwargs):
logger.debug("handle_NmDeviceStateChanged with %s",str(kwargs))
logger.debug("handle_NmDeviceStateChanged %s (%d) -> %s (%d) Reason: %d",
NmStateStr(sOld), sOld, NmStateStr(sNew), sNew, sReason )
if kwargs.has_key('oPath'):
oPath=kwargs['oPath']
if 100 == sNew:
logger.info("Scanning Activated Device: %s",str(oPath))
# need aconn so scan.
oAConn=getProp(oPath,'org.freedesktop.NetworkManager.Device','ActiveConnection')
ScanActiveDevice2(oPath,oAConn)
#Device-Add is not yet required to be watch for
#def handle_addDevice(oDev,*args):
# logger.debug("handle_addDevice from %s with %s",str(oDev),str(args))
def ParseIPv4unwantedRng(IpStrList):
"""filling IPv4unwantedRng from IPv4unwanted"""
global IPv4unwantedRng
for s in IpStrList:
try:
logger.debug('Unwanted IP: parsing >>>%s<<<',s)
[ips,masks]=IpMaskStr2StrA(s)
mask=int(masks)
ip=IpTuple2Int(IpStr2Tuple(ips))
#logger.debug('Unwanted IP %s / %d',str(ip),mask)
if (0>mask) or (32<mask):
raise ValueError('Mask range 0..32 error')
if (0>ip) or (2**32<ip):
raise ValueError('ip range 0..2^32 error')
iplow=IpGetMasked(ip,mask)
iphigh=IpGetAntiMasked(ip,mask)
logger.info('Unwanted IP range %s - %s',IpTuple2String(IpInt2Tuple(iplow)),IpTuple2String(IpInt2Tuple(iphigh)))
IPv4unwantedRng.append((iplow,iphigh))
except ValueError as err:
logger.warn('That is not a valid ip/mask: >>>%s<<< (%s)',str(s),err.message)
logger.debug("Startup - preparing unwanted address ranges")
ParseIPv4unwantedRng(IPv4unwanted)
if len(IPv4unwantedRng)<1:
logger.warn('No unwanted IP range given. Quit.')
quit(1)
# Adding bus signal receivers
# See interface spec at http://projects.gnome.org/NetworkManager/developers/api/09/spec.html#org.freedesktop.NetworkManager
# Chapter "Signal" -> defines "DeviceAdded" on the interface "org.freedesktop.NetworkManager"
#Device-Add is not yet required to be watch for
#bus.add_signal_receiver(handle_addDevice, signal_name="DeviceAdded",
# dbus_interface="org.freedesktop.NetworkManager" )
bus.add_signal_receiver(handle_NmPropertiesChanged, signal_name="PropertiesChanged",
dbus_interface="org.freedesktop.NetworkManager" )
# see path_keyword etc. in http://dbus.freedesktop.org/doc/dbus-python/api/dbus.service-module.html
bus.add_signal_receiver(handle_NmDeviceStateChanged, signal_name="StateChanged",
dbus_interface="org.freedesktop.NetworkManager.Device",
path_keyword='oPath')
#Device-Add is not yet required to be watch for
## Adding all devices via the DeviceAdded callback
#Devices=manager.GetDevices()
#logger.debug("Startup - getting Devices: %s",str(Devices))
#for oDev in Devices:
# handle_addDevice(oDev)
ConnAct=getProp('/org/freedesktop/NetworkManager','org.freedesktop.NetworkManager','ActiveConnections')
logger.debug("Startup - getting active Connections: %s",str(ConnAct))
# plug that into the active connection changed handler
ScanActiveConnections2(ConnAct)
loop = gobject.MainLoop()
logger.debug("Entering MainLoop")
loop.run() # To stop, call loop.quit().
#end;
#!/bin/sh
PREREQ=""
DESCRIPTION="Adding live session user..."
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
. /scripts/casper-functions
load_confmodule
log_begin_msg "$DESCRIPTION"
debconf_backup () {
local question backup
for question; do
backup="$question-casper-backup"
db_register debian-installer/dummy "$backup"
db_get "$question"
db_set "$backup" "$RET"
db_fget "$question" seen
db_fset "$backup" seen "$RET"
done
}
debconf_restore () {
local question backup
for question; do
backup="$question-casper-backup"
db_get "$backup"
db_set "$question" "$RET"
db_fget "$backup" seen
db_fset "$question" seen "$RET"
db_unregister "$backup"
done
}
debconf_backup \
passwd/root-password-crypted \
passwd/root-password passwd/root-password-again \
passwd/user-password-crypted \
passwd/user-password passwd/user-password-again \
passwd/user-fullname passwd/username passwd/user-uid
# U6aMy0wojraho is just a blank password
db_set passwd/root-password-crypted '*'
db_set passwd/user-password-crypted U6aMy0wojraho
db_set passwd/user-fullname "$USERFULLNAME"
db_set passwd/username "$USERNAME"
db_set passwd/user-uid 999
chroot /root /usr/lib/user-setup/user-setup-apply > /dev/null
# Clear out debconf database again to avoid confusing ubiquity later.
debconf_restore \
passwd/root-password-crypted \
passwd/root-password passwd/root-password-again \
passwd/user-password-crypted \
passwd/user-password passwd/user-password-again \
passwd/user-fullname passwd/username passwd/user-uid
if [ -d /root/etc/sudoers.d/ ]; then
echo "${USERNAME} ALL=(ALL) NOPASSWD: ALL" > /root/etc/sudoers.d/casper
fi
LTS="$(cut -d' ' -f3 /root/cdrom/.disk/info 2>/dev/null)" || LTS=
RELEASE="$(cut -d' ' -f1-2 /root/cdrom/.disk/info 2>/dev/null | sed 's/-/ /')" || RELEASE=
if [ "$LTS" = "LTS" ] && [ -n "$RELEASE" ]; then
RELEASE="$RELEASE LTS"
fi
for file in /usr/share/applications/ubiquity.desktop /usr/share/applications/kde4/ubiquity-kdeui.desktop /usr/share/applications/kde4/ubiquity-kdeui-no-bootloader.desktop; do
if [ -f "/root/$file" ]; then
sed -i "s/RELEASE/$RELEASE/" "/root$file"
chroot /root install -d -o $USERNAME -g $USERNAME /home/$USERNAME/Desktop
chroot /root install -D -o $USERNAME -g $USERNAME $file /home/$USERNAME/Desktop/$(basename "$file")
fi
done
if [ -L /root/home/$USERNAME/Examples ]; then
chroot /root install -o $USERNAME -g $USERNAME -d /home/$USERNAME/Desktop/
mv /root/home/$USERNAME/Examples /root/home/$USERNAME/Desktop/
fi
if [ -f /root/home/$USERNAME/examples.desktop ]; then
chroot /root install -o $USERNAME -g $USERNAME -d /home/$USERNAME/Desktop/
mv /root/home/$USERNAME/examples.desktop /root/home/$USERNAME/Desktop/
fi
#GDM
if [ -d /root/etc/gdm ]; then
sed -i '/^[UG]ID_MIN/s/\<1000$/ 999/' /root/etc/login.defs
fi
#Kubuntu
if [ -f "/root/usr/bin/plasma-desktop" ]; then
if [ -f "/root/usr/share/kde4/apps/khelpcenter/plugins/kubuntu/a_welcome.desktop" ]; then
chroot /root install -d -o $USERNAME -g $USERNAME /home/$USERNAME/Desktop
chroot /root install -D -o $USERNAME -g $USERNAME /usr/share/kde4/apps/khelpcenter/plugins/kubuntu/a_welcome.desktop /home/$USERNAME/Desktop/a_welcome.desktop
fi
fi
#Ubuntu MID wants to be installed with --automatic
if [ -f "/root/usr/share/ubuntu-mid-default-settings/mid-gui-start" ]; then
if [ -f "/root/usr/share/applications/ubiquity.desktop" ]; then
sed -i 's/--desktop/--automatic --desktop/' "/root/usr/share/applications/ubiquity.desktop"
fi
fi
#Ubuntu MID uses kourou, and the ubiquity icon should be easy to find
if [ -f "/root/usr/lib/hildon-desktop/kourou.py" ]; then
if [ -f "/root/etc/xdg/menus/home.menu" ]; then
sed -i '/<\/Include>/i\ <Filename>ubiquity.desktop</Filename>' "/root/etc/xdg/menus/home.menu"
fi
fi
log_end_msg
[Desktop Entry]
Type=Application
Version=1.0
# Do not translate the word "RELEASE". It is used as a marker by casper.
Name=Install RELEASE (No bootloader)
Name[am]=የተለቀቀውን መግጠሚያ
Name[ar]=ثبّت RELEASE
Name[ast]=Instalar RELEASE
Name[be]=Усталяваць RELEASE
Name[bg]=Инсталиране на RELEASE
Name[bn]=RELEASE ইনস্টল করুন
Name[bs]=Instaliraj izdanje
Name[ca]=Instal·la la versió RELEASE
Name[cs]=Nainstalovat RELEASE
Name[da]=Installér RELEASE
Name[de]=RELEASE installieren (kein Bootloader)
Name[el]=Εγκατάσταση RELEASE
Name[eo]=Instali RELEASE
Name[es]=Instalar RELEASE
Name[et]=Paigalda RELEASE
Name[eu]=Instalatu RELEASE
Name[fi]=Asenna RELEASE
Name[fr]=Installer RELEASE
Name[ga]=Suiteáil RELEASE
Name[gl]=Instalar RELEASE
Name[gu]=રિલીઝ નું સ્થાપન કરો.
Name[he]=התקנת RELEASE
Name[hi]=प्रकाशन को संस्थापित करें
Name[hr]=Instaliraj RELEASE
Name[hu]=RELEASE telepítése
Name[id]=Pasang RELEASE
Name[it]=Installa RELEASE
Name[ja]=RELEASE のインストール
Name[ka]=RELEASE-ის დაყენება
Name[kk]=RELEASE орнату
Name[km]=ដំឡើង​ឯកសារ​ចេញ​ផ្សាយ
Name[ko]=RELEASE 설치
Name[ku]=RELEASE saz bike
Name[lt]=Įdiegti RELEASE į kompiuterį
Name[lv]=Instalēt RELEASE
Name[mk]=Инсталирај RELEASE
Name[ml]=RELEASE സജ്ജമാക്കുക
Name[mr]=स्थापित RELEASE
Name[nl]=RELEASE installeren
Name[pa]=RELEASE ਰੀਲਿਜ਼
Name[pl]=Zainstaluj RELEASE
Name[pt]=Instalar RELEASE
Name[pt_BR]=Instalar o RELEASE
Name[ro]=Instalare RELEASE
Name[ru]=Установить RELEASE
Name[sk]=Inštalovať RELEASE
Name[sl]=Namesti RELEASE
Name[sq]=Instalo RELEASE
Name[sr]=Инсталирајте RELEASE
Name[sv]=Installera RELEASE
Name[ta]=RELEASEஐ நிறுவு
Name[th]=ติดตั้ง RELEASE
Name[tl]=Iluklok ang RELEASE
Name[tr]=RELEASE Kur
Name[uk]=Встановити RELEASE
Name[vi]=Cài đặt RELEASE
Name[zh_CN]=安装 RELEASE
Name[zh_TW]=安裝 RELEASE
Comment=Install this system permanently to your hard disk
Comment[am]=ይኼን ሲስተም ሀርድ ዲስክዎ ላይ በቋሚነት ይጫኑት
Comment[ar]=ثبّت هذا النظام على القرص الصلب
Comment[ast]=Instalar permanentemente esti sistema nel to discu duru
Comment[be]=Усталяваць сістэму на жорсткі дыск
Comment[bg]=Инсталиране на тази система за постоянно на твърдия диск
Comment[bn]=এই সিস্টেমটি আপনার হার্ডডিস্কে স্থায়ীভাবে ইনস্টল করুন।
Comment[bs]=Instaliraj ovaj sistem trajno na hard disk
Comment[ca]=Instal·leu aquest sistema permanentment al vostre disc dur
Comment[cs]=Nainstalovat tento systém natrvalo na váš disk
Comment[da]=Installér dette system permanent på din harddisk
Comment[de]=Dieses System dauerhaft auf der Festplatte installieren
Comment[el]=Εγκαταστήστε αυτό το σύστημα μόνιμα στο σκληρό σας δίσκο
Comment[eo]=Instali ĉi tiun sistemon daŭre en via disko
Comment[es]=Instalar este sistema permanentemente en su disco duro
Comment[et]=Paigalda see süsteem jäädavalt oma kõvakettale
Comment[eu]=Sistema hau betiko instalatu disko gogorrean
Comment[fi]=Asenna tämä järjestelmä pysyvästi kiintolevyllesi
Comment[fr]=Installer ce système de façon permanente sur votre disque dur
Comment[ga]=Suiteáil an córas seo go buan ar do chruadhiosca
Comment[gl]=Instalar o sistema de xeito permanente no disco ríxido
Comment[gu]=આ સિસ્ટમ તમારી હાર્ડ ડિસ્ક પર હંમેશ માટે સ્થાપિત કરો
Comment[he]=התקנת המערכת באופן קבוע על הכונן הקשיח
Comment[hi]=इस तंत्र को आपके हार्ड डिस्क में स्थायी रूप से संस्थापित करें
Comment[hr]=Trajno instaliraj sustav na čvrsti disk
Comment[hu]=A rendszer telepítése merevlemezre
Comment[id]=Memasang sistem ini secara permanen pada diska Anda
Comment[it]=Installa questo sistema in modo permanente sul disco rigido
Comment[ja]=このシステムをハードディスクにインストールします
Comment[ka]=მოცემული სისტემის მყარ დისკზე ჩაყენება
Comment[kk]=Осы жүйені қатқыл дискіңізге тұрақты орнату
Comment[km]=ដំឡើង​ប្រព័ន្ធ​នេះ​ជា​អចិន្ត្រៃយ៍​ទៅ​កាន់​ថាស​រឹង​របស់​អ្នក
Comment[ko]=이 시스템을 당신의 하드 디스크에 설치합니다.
Comment[ku]=Sîstemê di hard dîskê xwe de saz bike
Comment[lt]=Įdiegti Linux operacinę sistemą į kompiuterio (standųjį) diską
Comment[lv]=Instalēt šo sistēmu cietajā diskā
Comment[mk]=Инсталирајте го системот трајно на Вашиот тврд диск
Comment[ml]=സ്ഥിരമായി ഹാര്‍ഡ് ഡിസ്കിലേക്ക് ഇന്‍സ്റ്റാള്‍ ചെയ്യുക
Comment[mr]=ही प्रणाली कायमची तुमच्या हार्ड डिस्कवर स्थापित करा
Comment[ne]=यो प्रणाली तपाईको हार्ड डिस्कमा स्थाई रुपमा प्रतिस्थापन गर्नुहोस्
Comment[nl]=Dit systeem definitief op uw harde schijf installeren
Comment[pa]=ਇਹ ਸਿਸਟਮ ਪੱਕੇ ਤੌਰ ਉੱਤੇ ਆਪਣੀ ਹਾਰਡ ਡਿਸਕ ਉੱਤੇ ਇੰਸਟਾਲ
Comment[pl]=Instaluje system na dysku twardym
Comment[pt]=Instalar este sistema permanentemente no seu disco rígido
Comment[pt_BR]=Instalar este sistema de maneira permanente no seu disco rígido
Comment[ro]=Instalați acest sistem pe discul calculatorului
Comment[ru]=Установить эту систему на жёсткий диск
Comment[sk]=Nainštalovať systém natrvalo na pevný disk
Comment[sl]=Trajno namesti sistem na trdi disk
Comment[sq]=Instalo këtë sistem përgjithmonë në Hard Disk
Comment[sr]=Инсталирајте овај систем трајно на ваш чврсти диск
Comment[sv]=Installera detta system permanent på din hårddisk
Comment[ta]=இந்த நிலையை நிரந்தரமாக தங்களது கணினியில் நிறுவுக
Comment[th]=ติดตั้งระบบนี้อย่างถาวรลงบนฮาร์ดดิสก์ของคุณ
Comment[tl]=Iluklok ng permanente ang systema sa iyong hard disk
Comment[tr]=Bu sistemi sabit diskinize kalıcı olarak kurun
Comment[uk]=Встановити цю систему на жорсткий диск
Comment[vi]=Cài hệ thống vào đĩa cứng
Comment[zh_CN]=将这个系统永久安装在您的硬盘上
Comment[zh_TW]=將此系統安裝到您的硬碟中
Exec=ubiquity --no-bootloader --desktop %k gtk_ui
Icon=ubiquity
Terminal=false
Categories=GTK;System;Settings;
OnlyShowIn=GNOME;XFCE;Unity;
#X-Ubuntu-Gettext-Domain=ubiquity-desktop
X-Ayatana-Appmenu-Show-Stubs=False
[Desktop Entry]
Type=Application
Version=1.0
# Do not translate the word "Kubuntu 13.10". It is used as a marker by casper.
Name=Install Kubuntu 13.10 (No Bootloader)
Comment=Install this system permanently to your hard disk
Keywords=ubiquity;
Exec=ubiquity kde_ui --no-bootloader
Icon=ubiquity-kde
Terminal=false
Categories=KDE;Qt;System;
OnlyShowIn=KDE;
X-Ubuntu-Gettext-Domain=ubiquity-desktop
\ No newline at end of file
[Desktop Entry]
Type=Application
Version=1.0
# Do not translate the word "Kubuntu 13.10". It is used as a marker by casper.
Name=Install Kubuntu 13.10
Comment=Install this system permanently to your hard disk
Keywords=ubiquity;
Exec=ubiquity kde_ui
Icon=ubiquity-kde
Terminal=false
Categories=KDE;Qt;System;
OnlyShowIn=KDE;
X-Ubuntu-Gettext-Domain=ubiquity-desktop
\ No newline at end of file
[Defaults]
Profile=Default
[PROFILE_Default]
EmailClient[$e]=thunderbird
ServerType=
TerminalClient=false
[$Version]
update_info=kded.upd:kde3.0
[General]
BrowserApplication[$e]=firefox.desktop
[KDE]
SingleClick=false
[KFileDialog Settings]
Automatically select filename extension=true
Breadcrumb Navigation=true
Decoration position=0
LocationCombo Completionmode=5
PathCombo Completionmode=5
Show Bookmarks=false
Show Full Path=false
Show Speedbar=true
Show hidden files=false
Sort by=Name
Sort directories first=true
Sort reversed=false
Speedbar Width=84
View Style=Simple
[PreviewSettings]
MaximumRemoteSize=0
[$Version]
update_info=konsole_remove_background_mode.upd:2.11.0-remove-background-mode,kscreenlocker_locksession-shortcut.upd:4.9-locksession-shortcut,ksmserver_shortcuts.upd:kde4.10,ksmserver_shortcuts.upd:kde4.10-remove-group-kscreenlocker,plasma-to-plasmadesktop-shortcuts.upd:4.3plasma-desktop-shortcuts
[KDE Keyboard Layout Switcher]
Switch to Next Keyboard Layout=Ctrl+Alt+K,Ctrl+Alt+K,Switch to Next Keyboard Layout
_k_friendly_name=KDE Keyboard Layout Switcher
[kded]
Decrease Keyboard Brightness=Keyboard Brightness Down,Keyboard Brightness Down,Decrease Keyboard Brightness
Decrease Screen Brightness=Monitor Brightness Down,Monitor Brightness Down,Decrease Screen Brightness
Hibernate=Hibernate,Hibernate,Hibernate
Increase Keyboard Brightness=Keyboard Brightness Up,Keyboard Brightness Up,Increase Keyboard Brightness
Increase Screen Brightness=Monitor Brightness Up,Monitor Brightness Up,Increase Screen Brightness
PowerOff=Power Off,Power Off,
Sleep=Sleep,Sleep,Sleep
Toggle Keyboard Backlight=Keyboard Light On/Off,Keyboard Light On/Off,Toggle Keyboard Backlight
_k_friendly_name=KDE Daemon
display=Display,Display,Switch Display
[khotkeys]
_k_friendly_name=khotkeys
{1a12db4a-bb9f-469c-bb05-e59c5a8a374d}=none,none,New Action
{4f187baa-bed0-46dc-abba-fc8e99c221e8}=Meta+Return,none,Start Konsole
{70fd93c3-f51c-4fd7-b9dd-bdbd1e9d9daf}=none,none,New Action
{72302d03-d536-4d08-a903-c80d7e9f7c23}=Print,none,PrintScreen
{86cbd6be-d8bb-4dce-b3ad-2f25d77bec6a}=none,none,New Action
{99d9d36b-54f0-40c3-860a-d7bf5966a3f2}=Ctrl+Alt+T,none,Start Konsole
{9b56b2c0-fa2c-4218-a783-d392a7dbd780}=none,none,New Action
{d03619b6-9b3c-48cc-9d9c-a2aadb485550}=Search,none,Search
[klipper]
_k_friendly_name=Klipper
clipboard_action=Ctrl+Alt+X,Ctrl+Alt+X,Enable Clipboard Actions
cycleNextAction=none,none,Next History Item
cyclePrevAction=none,none,Previous History Item
edit_clipboard=none,none,Edit Contents...
repeat_action=Ctrl+Alt+R,Ctrl+Alt+R,Manually Invoke Action on Current Clipboard
show-barcode=none,none,Show Barcode...
show-on-mouse-pos=none,none,Open Klipper at Mouse Position
[kmix]
_k_friendly_name=KMix
decrease_volume=Volume Down,Volume Down,Decrease Volume
increase_volume=Volume Up,Volume Up,Increase Volume
mute=Volume Mute,Volume Mute,Mute
[krunner]
PowerDevil=none,none,Run Command (runner "PowerDevil" only)
Run Command=Alt+F2,Alt+F2,Run Command
Run Command on clipboard contents=Alt+Shift+F2,Alt+Shift+F2,Run Command on clipboard contents
Show System Activity=Ctrl+Esc,Ctrl+Esc,Show System Activity
Switch User=Ctrl+Alt+Ins,Ctrl+Alt+Ins,Switch User
_k_friendly_name=Run Command Interface
bookmarks=none,none,Run Command (runner "Bookmarks" only)
desktopsessions=none,none,Run Command (runner "Desktop Sessions" only)
locations=none,none,Run Command (runner "Locations" only)
nepomuksearch=none,none,Run Command (runner "Nepomuk Desktop Search" only)
org.kde.activities=none,none,Run Command (runner "Activities" only)
org.kde.windowedwidgets=none,none,Run Command (runner "Windowed widgets" only)
recentdocuments=none,none,Run Command (runner "Recent Documents" only)
services=none,none,Run Command (runner "Applications" only)
shell=none,none,Run Command (runner "Command Line" only)
solid=none,none,Run Command (runner "Devices" only)
webshortcuts=none,none,Run Command (runner "Web Shortcuts" only)
windows=none,none,Run Command (runner "Windows" only)
[ksmserver]
Halt Without Confirmation=Ctrl+Alt+Shift+PgDown,Ctrl+Alt+Shift+PgDown,Halt Without Confirmation
Lock Session=Screensaver,Ctrl+Alt+L,Lock Session
Log Out=Ctrl+Alt+Del,Ctrl+Alt+Del,Log Out
Log Out Without Confirmation=Ctrl+Alt+Shift+Del,Ctrl+Alt+Shift+Del,Log Out Without Confirmation
Reboot Without Confirmation=Ctrl+Alt+Shift+PgUp,Ctrl+Alt+Shift+PgUp,Reboot Without Confirmation
_k_friendly_name=The KDE Session Manager
[kwin]
Activate Window Demanding Attention=Ctrl+Alt+A,Ctrl+Alt+A,Activate Window Demanding Attention
Decrease Opacity=none,none,Decrease Opacity of Active Window by 5 %
Expose=Ctrl+F9,Ctrl+F9,Toggle Present Windows (Current desktop)
ExposeAll=Ctrl+F10,Ctrl+F10,Toggle Present Windows (All desktops)
ExposeClass=Ctrl+F7,Ctrl+F7,Toggle Present Windows (Window class)
Increase Opacity=none,none,Increase Opacity of Active Window by 5 %
Invert Screen Colors=none,none,Invert Screen Colors
Kill Window=Ctrl+Alt+Esc,Ctrl+Alt+Esc,Kill Window
MoveMouseToCenter=Meta+F6,Meta+F6,Move Mouse to Center
MoveMouseToFocus=Meta+F5,Meta+F5,Move Mouse to Focus
MoveZoomDown=Meta+Down,Meta+Down,Move Zoomed Area Downwards
MoveZoomLeft=Meta+Left,Meta+Left,Move Zoomed Area to Left
MoveZoomRight=Meta+Right,Meta+Right,Move Zoomed Area to Right
MoveZoomUp=Meta+Up,Meta+Up,Move Zoomed Area Upwards
Remove Window From Group=none,none,Remove Window From Group
Setup Window Shortcut=none,none,Setup Window Shortcut
Show Desktop=none,none,Show Desktop
ShowDesktopGrid=Ctrl+F8,Ctrl+F8,Show Desktop Grid
Suspend Compositing=Alt+Shift+F12,Alt+Shift+F12,Suspend Compositing
Switch One Desktop Down=none,none,Switch One Desktop Down
Switch One Desktop Up=none,none,Switch One Desktop Up
Switch One Desktop to the Left=Ctrl+Alt+Left,none,Switch One Desktop to the Left
Switch One Desktop to the Right=Ctrl+Alt+Right,none,Switch One Desktop to the Right
Switch Window Down=Meta+Alt+Down,Meta+Alt+Down,Switch to Window Below
Switch Window Left=Meta+Alt+Left,Meta+Alt+Left,Switch to Window to the Left
Switch Window Right=Meta+Alt+Right,Meta+Alt+Right,Switch to Window to the Right
Switch Window Up=Meta+Alt+Up,Meta+Alt+Up,Switch to Window Above
Switch to Desktop 1=Ctrl+F1,Ctrl+F1,Switch to Desktop 1
Switch to Desktop 10=none,none,Switch to Desktop 10
Switch to Desktop 11=none,none,Switch to Desktop 11
Switch to Desktop 12=none,none,Switch to Desktop 12
Switch to Desktop 13=none,none,Switch to Desktop 13
Switch to Desktop 14=none,none,Switch to Desktop 14
Switch to Desktop 15=none,none,Switch to Desktop 15
Switch to Desktop 16=none,none,Switch to Desktop 16
Switch to Desktop 17=none,none,Switch to Desktop 17
Switch to Desktop 18=none,none,Switch to Desktop 18
Switch to Desktop 19=none,none,Switch to Desktop 19
Switch to Desktop 2=Ctrl+F2,Ctrl+F2,Switch to Desktop 2
Switch to Desktop 20=none,none,Switch to Desktop 20
Switch to Desktop 3=Ctrl+F3,Ctrl+F3,Switch to Desktop 3
Switch to Desktop 4=Ctrl+F4,Ctrl+F4,Switch to Desktop 4
Switch to Desktop 5=none,none,Switch to Desktop 5
Switch to Desktop 6=none,none,Switch to Desktop 6
Switch to Desktop 7=none,none,Switch to Desktop 7
Switch to Desktop 8=none,none,Switch to Desktop 8
Switch to Desktop 9=none,none,Switch to Desktop 9
Switch to Next Desktop=none,none,Switch to Next Desktop
Switch to Next Screen=none,none,Switch to Next Screen
Switch to Previous Desktop=none,none,Switch to Previous Desktop
Switch to Previous Screen=none,none,Switch to Previous Screen
Switch to Screen 0=none,none,Switch to Screen 0
Switch to Screen 1=none,none,Switch to Screen 1
Switch to Screen 2=none,none,Switch to Screen 2
Switch to Screen 3=none,none,Switch to Screen 3
Switch to Screen 4=none,none,Switch to Screen 4
Switch to Screen 5=none,none,Switch to Screen 5
Switch to Screen 6=none,none,Switch to Screen 6
Switch to Screen 7=none,none,Switch to Screen 7
Toggle Window Raise/Lower=none,none,Toggle Window Raise/Lower
Walk Through Desktop List=none,none,Walk Through Desktop List
Walk Through Desktop List (Reverse)=none,none,Walk Through Desktop List (Reverse)
Walk Through Desktops=none,none,Walk Through Desktops
Walk Through Desktops (Reverse)=none,none,Walk Through Desktops (Reverse)
Walk Through Window Tabs=none,none,Walk Through Window Tabs
Walk Through Window Tabs (Reverse)=none,none,Walk Through Window Tabs (Reverse)
Walk Through Windows=Alt+Tab,Alt+Tab,Walk Through Windows
Walk Through Windows (Reverse)=Alt+Shift+Backtab,Alt+Shift+Backtab,Walk Through Windows (Reverse)
Walk Through Windows Alternative=none,none,Walk Through Windows Alternative
Walk Through Windows Alternative (Reverse)=none,none,Walk Through Windows Alternative (Reverse)
Walk Through Windows of Current Application=Alt+`,Alt+`,Walk Through Windows of Current Application
Walk Through Windows of Current Application (Reverse)=Alt+~,Alt+~,Walk Through Windows of Current Application (Reverse)
Walk Through Windows of Current Application Alternative=none,none,Walk Through Windows of Current Application Alternative
Walk Through Windows of Current Application Alternative (Reverse)=none,none,Walk Through Windows of Current Application Alternative (Reverse)
Window Above Other Windows=none,none,Keep Window Above Others
Window Below Other Windows=none,none,Keep Window Below Others
Window Close=Alt+F4,Alt+F4,Close Window
Window Fullscreen=none,none,Make Window Fullscreen
Window Grow Horizontal=none,none,Pack Grow Window Horizontally
Window Grow Vertical=none,none,Pack Grow Window Vertically
Window Lower=none,none,Lower Window
Window Maximize=none,none,Maximize Window
Window Maximize Horizontal=none,none,Maximize Window Horizontally
Window Maximize Vertical=none,none,Maximize Window Vertically
Window Minimize=none,none,Minimize Window
Window Move=none,none,Move Window
Window No Border=none,none,Hide Window Border
Window On All Desktops=none,none,Keep Window on All Desktops
Window One Desktop Down=none,none,Window One Desktop Down
Window One Desktop Up=none,none,Window One Desktop Up
Window One Desktop to the Left=Ctrl+Alt+Shift+Left,none,Window One Desktop to the Left
Window One Desktop to the Right=Ctrl+Alt+Shift+Right,none,Window One Desktop to the Right
Window Operations Menu=Alt+F3,Alt+F3,Window Operations Menu
Window Pack Down=none,none,Pack Window Down
Window Pack Left=none,none,Pack Window to the Left
Window Pack Right=none,none,Pack Window to the Right
Window Pack Up=none,none,Pack Window Up
Window Quick Tile Bottom Left=none,none,Quick Tile Window to the Bottom Left
Window Quick Tile Bottom Right=none,none,Quick Tile Window to the Bottom Right
Window Quick Tile Left=none,none,Quick Tile Window to the Left
Window Quick Tile Right=none,none,Quick Tile Window to the Right
Window Quick Tile Top Left=none,none,Quick Tile Window to the Top Left
Window Quick Tile Top Right=none,none,Quick Tile Window to the Top Right
Window Raise=none,none,Raise Window
Window Resize=none,none,Resize Window
Window Shade=none,none,Shade Window
Window Shrink Horizontal=none,none,Pack Shrink Window Horizontally
Window Shrink Vertical=none,none,Pack Shrink Window Vertically
Window to Desktop 1=none,none,Window to Desktop 1
Window to Desktop 10=none,none,Window to Desktop 10
Window to Desktop 11=none,none,Window to Desktop 11
Window to Desktop 12=none,none,Window to Desktop 12
Window to Desktop 13=none,none,Window to Desktop 13
Window to Desktop 14=none,none,Window to Desktop 14
Window to Desktop 15=none,none,Window to Desktop 15
Window to Desktop 16=none,none,Window to Desktop 16
Window to Desktop 17=none,none,Window to Desktop 17
Window to Desktop 18=none,none,Window to Desktop 18
Window to Desktop 19=none,none,Window to Desktop 19
Window to Desktop 2=none,none,Window to Desktop 2
Window to Desktop 20=none,none,Window to Desktop 20
Window to Desktop 3=none,none,Window to Desktop 3
Window to Desktop 4=none,none,Window to Desktop 4
Window to Desktop 5=none,none,Window to Desktop 5
Window to Desktop 6=none,none,Window to Desktop 6
Window to Desktop 7=none,none,Window to Desktop 7
Window to Desktop 8=none,none,Window to Desktop 8
Window to Desktop 9=none,none,Window to Desktop 9
Window to Next Desktop=none,none,Window to Next Desktop
Window to Next Screen=none,none,Window to Next Screen
Window to Previous Desktop=none,none,Window to Previous Desktop
Window to Previous Screen=none,none,Window to Previous Screen
Window to Screen 0=none,none,Window to Screen 0
Window to Screen 1=none,none,Window to Screen 1
Window to Screen 2=none,none,Window to Screen 2
Window to Screen 3=none,none,Window to Screen 3
Window to Screen 4=none,none,Window to Screen 4
Window to Screen 5=none,none,Window to Screen 5
Window to Screen 6=none,none,Window to Screen 6
Window to Screen 7=none,none,Window to Screen 7
_k_friendly_name=KWin
view_actual_size=Meta+0,Meta+0,Actual Size
view_zoom_in=Meta+=,Meta+=,Zoom In
view_zoom_out=Meta+-,Meta+-,Zoom Out
[plasma-desktop]
Next Activity=Meta+Tab,Meta+Tab,Next Activity
Previous Activity=Meta+Shift+Tab,Meta+Shift+Tab,Previous Activity
Show Dashboard=Ctrl+F12,Ctrl+F12,Show Dashboard
Stop Activity=Meta+S,Meta+S,Stop Current Activity
SystemTray-Klipper-6=Ctrl+Alt+V,Ctrl+Alt+V,
_k_friendly_name=Plasma Desktop Shell
activate widget 2=Meta+Space,Alt+F1,Activate Application Launcher Widget
activate widget 3=Wireless,Wireless,Activate Network Management Widget
manage activities=Meta+Q,Meta+Q,Activities...
[wacomtablet]
Map to fullscreen=Meta+Ctrl+F,Meta+Ctrl+F,Map to all fullscreen
Map to screen 1=Meta+Ctrl+1,Meta+Ctrl+1,Map to screen 1
Map to screen 2=Meta+Ctrl+2,Meta+Ctrl+2,Map to screen 2
Toggle screen map selection=Meta+Ctrl+M,Meta+Ctrl+M,Toggle between all screens
Toggle stylus mode=Meta+Ctrl+S,Meta+Ctrl+S,Toggle the Stylus Tool Relative/Absolute
Toggle touch tool=Meta+Ctrl+T,Meta+Ctrl+T,Enable/Disable the Touch Tool
_k_friendly_name=Graphic Tablet Configuration daemon
[Data]
DataCount=6
[Data_1]
Comment=KMenuEdit Global Shortcuts
DataCount=1
Enabled=true
Name=KMenuEdit
SystemGroup=1
Type=ACTION_DATA_GROUP
[Data_1Conditions]
Comment=
ConditionsCount=0
[Data_1_1]
Comment=Comment
Enabled=true
Name=Search
Type=SIMPLE_ACTION_DATA
[Data_1_1Actions]
ActionsCount=1
[Data_1_1Actions0]
CommandURL=http://google.com
Type=COMMAND_URL
[Data_1_1Conditions]
Comment=
ConditionsCount=0
[Data_1_1Triggers]
Comment=Simple_action
TriggersCount=1
[Data_1_1Triggers0]
Key=Search
Type=SHORTCUT
Uuid={d03619b6-9b3c-48cc-9d9c-a2aadb485550}
[Data_2]
Comment=This group contains various examples demonstrating most of the features of KHotkeys. (Note that this group and all its actions are disabled by default.)
DataCount=8
Enabled=false
ImportId=kde32b1
Name=Examples
SystemGroup=0
Type=ACTION_DATA_GROUP
[Data_2Conditions]
Comment=
ConditionsCount=0
[Data_2_1]
Comment=After pressing Ctrl+Alt+I, the KSIRC window will be activated, if it exists. Simple.
Enabled=false
Name=Activate KSIRC Window
Type=SIMPLE_ACTION_DATA
[Data_2_1Actions]
ActionsCount=1
[Data_2_1Actions0]
Type=ACTIVATE_WINDOW
[Data_2_1Actions0Window]
Comment=KSIRC window
WindowsCount=1
[Data_2_1Actions0Window0]
Class=ksirc
ClassType=1
Comment=KSIRC
Role=
RoleType=0
Title=
TitleType=0
Type=SIMPLE
WindowTypes=33
[Data_2_1Conditions]
Comment=
ConditionsCount=0
[Data_2_1Triggers]
Comment=Simple_action
TriggersCount=1
[Data_2_1Triggers0]
Key=Ctrl+Alt+I
Type=SHORTCUT
Uuid={a7f1385f-aba6-4193-86b2-8195054260d8}
[Data_2_2]
Comment=After pressing Alt+Ctrl+H the input of 'Hello' will be simulated, as if you typed it. This is especially useful if you have call to frequently type a word (for instance, 'unsigned'). Every keypress in the input is separated by a colon ':'. Note that the keypresses literally mean keypresses, so you have to write what you would press on the keyboard. In the table below, the left column shows the input and the right column shows what to type.\n\n"enter" (i.e. new line) Enter or Return\na (i.e. small a) A\nA (i.e. capital a) Shift+A\n: (colon) Shift+;\n' ' (space) Space
Enabled=false
Name=Type 'Hello'
Type=SIMPLE_ACTION_DATA
[Data_2_2Actions]
ActionsCount=1
[Data_2_2Actions0]
DestinationWindow=2
Input=Shift+H:E:L:L:O\n
Type=KEYBOARD_INPUT
[Data_2_2Conditions]
Comment=
ConditionsCount=0
[Data_2_2Triggers]
Comment=Simple_action
TriggersCount=1
[Data_2_2Triggers0]
Key=Ctrl+Alt+H
Type=SHORTCUT
Uuid={d6afea9a-5769-49eb-89b7-4fd885049195}
[Data_2_3]
Comment=This action runs Konsole, after pressing Ctrl+Alt+T.
Enabled=false
Name=Run Konsole
Type=SIMPLE_ACTION_DATA
[Data_2_3Actions]
ActionsCount=1
[Data_2_3Actions0]
CommandURL=konsole
Type=COMMAND_URL
[Data_2_3Conditions]
Comment=
ConditionsCount=0
[Data_2_3Triggers]
Comment=Simple_action
TriggersCount=1
[Data_2_3Triggers0]
Key=Ctrl+Alt+T
Type=SHORTCUT
Uuid={32f14c75-165f-48d0-a50a-4ead93e878aa}
[Data_2_4]
Comment=Read the comment on the "Type 'Hello'" action first.\n\nQt Designer uses Ctrl+F4 for closing windows. In KDE, however, Ctrl+F4 is the shortcut for going to virtual desktop 4, so this shortcut does not work in Qt Designer. Further, Qt Designer does not use KDE's standard Ctrl+W for closing the window.\n\nThis problem can be solved by remapping Ctrl+W to Ctrl+F4 when the active window is Qt Designer. When Qt Designer is active, every time Ctrl+W is pressed, Ctrl+F4 will be sent to Qt Designer instead. In other applications, the effect of Ctrl+W is unchanged.\n\nWe now need to specify three things: A new shortcut trigger on 'Ctrl+W', a new keyboard input action sending Ctrl+F4, and a new condition that the active window is Qt Designer.\nQt Designer seems to always have title 'Qt Designer by Trolltech', so the condition will check for the active window having that title.
Enabled=false
Name=Remap Ctrl+W to Ctrl+F4 in Qt Designer
Type=GENERIC_ACTION_DATA
[Data_2_4Actions]
ActionsCount=1
[Data_2_4Actions0]
DestinationWindow=2
Input=Ctrl+F4
Type=KEYBOARD_INPUT
[Data_2_4Conditions]
Comment=
ConditionsCount=1
[Data_2_4Conditions0]
Type=ACTIVE_WINDOW
[Data_2_4Conditions0Window]
Comment=Qt Designer
WindowsCount=1
[Data_2_4Conditions0Window0]
Class=
ClassType=0
Comment=
Role=
RoleType=0
Title=Qt Designer by Trolltech
TitleType=2
Type=SIMPLE
WindowTypes=33
[Data_2_4Triggers]
Comment=
TriggersCount=1
[Data_2_4Triggers0]
Key=Ctrl+W
Type=SHORTCUT
Uuid={8ded87a3-81b4-4353-8e37-97bd1dc110ab}
[Data_2_5]
Comment=By pressing Alt+Ctrl+W a D-Bus call will be performed that will show the minicli. You can use any kind of D-Bus call, just like using the command line 'qdbus' tool.
Enabled=false
Name=Perform D-Bus call 'qdbus org.kde.krunner /App display'
Type=SIMPLE_ACTION_DATA
[Data_2_5Actions]
ActionsCount=1
[Data_2_5Actions0]
Arguments=
Call=popupExecuteCommand
RemoteApp=org.kde.krunner
RemoteObj=/App
Type=DBUS
[Data_2_5Conditions]
Comment=
ConditionsCount=0
[Data_2_5Triggers]
Comment=Simple_action
TriggersCount=1
[Data_2_5Triggers0]
Key=Ctrl+Alt+W
Type=SHORTCUT
Uuid={21bcf2d2-c88d-41fa-b05c-a5f1e2f97cb6}
[Data_2_6]
Comment=Read the comment on the "Type 'Hello'" action first.\n\nJust like the "Type 'Hello'" action, this one simulates keyboard input, specifically, after pressing Ctrl+Alt+B, it sends B to XMMS (B in XMMS jumps to the next song). The 'Send to specific window' checkbox is checked and a window with its class containing 'XMMS_Player' is specified; this will make the input always be sent to this window. This way, you can control XMMS even if, for instance, it is on a different virtual desktop.\n\n(Run 'xprop' and click on the XMMS window and search for WM_CLASS to see 'XMMS_Player').
Enabled=false
Name=Next in XMMS
Type=SIMPLE_ACTION_DATA
[Data_2_6Actions]
ActionsCount=1
[Data_2_6Actions0]
DestinationWindow=1
Input=B
Type=KEYBOARD_INPUT
[Data_2_6Actions0DestinationWindow]
Comment=XMMS window
WindowsCount=1
[Data_2_6Actions0DestinationWindow0]
Class=XMMS_Player
ClassType=1
Comment=XMMS Player window
Role=
RoleType=0
Title=
TitleType=0
Type=SIMPLE
WindowTypes=33
[Data_2_6Conditions]
Comment=
ConditionsCount=0
[Data_2_6Triggers]
Comment=Simple_action
TriggersCount=1
[Data_2_6Triggers0]
Key=Ctrl+Alt+B
Type=SHORTCUT
Uuid={9902f5c0-fef8-4f26-a2d5-0828edeccb4b}
[Data_2_7]
Comment=Konqueror in KDE3.1 has tabs, and now you can also have gestures.\n\nJust press the middle mouse button and start drawing one of the gestures, and after you are finished, release the mouse button. If you only need to paste the selection, it still works, just click the middle mouse button. (You can change the mouse button to use in the global settings).\n\nRight now, there are the following gestures available:\nmove right and back left - Forward (Alt+Right)\nmove left and back right - Back (Alt+Left)\nmove up and back down - Up (Alt+Up)\ncircle anticlockwise - Reload (F5)\n\nThe gesture shapes can be entered by performing them in the configuration dialog. You can also look at your numeric pad to help you: gestures are recognized like a 3x3 grid of fields, numbered 1 to 9.\n\nNote that you must perform exactly the gesture to trigger the action. Because of this, it is possible to enter more gestures for the action. You should try to avoid complicated gestures where you change the direction of mouse movement more than once. For instance, 45654 or 74123 are simple to perform, but 1236987 may be already quite difficult.\n\nThe conditions for all gestures are defined in this group. All these gestures are active only if the active window is Konqueror (class contains 'konqueror').
DataCount=4
Enabled=false
Name=Konqi Gestures
SystemGroup=0
Type=ACTION_DATA_GROUP
[Data_2_7Conditions]
Comment=Konqueror window
ConditionsCount=1
[Data_2_7Conditions0]
Type=ACTIVE_WINDOW
[Data_2_7Conditions0Window]
Comment=Konqueror
WindowsCount=1
[Data_2_7Conditions0Window0]
Class=konqueror
ClassType=1
Comment=Konqueror
Role=
RoleType=0
Title=
TitleType=0
Type=SIMPLE
WindowTypes=33
[Data_2_7_1]
Comment=
Enabled=false
Name=Back
Type=SIMPLE_ACTION_DATA
[Data_2_7_1Actions]
ActionsCount=1
[Data_2_7_1Actions0]
DestinationWindow=2
Input=Alt+Left
Type=KEYBOARD_INPUT
[Data_2_7_1Conditions]
Comment=
ConditionsCount=0
[Data_2_7_1Triggers]
Comment=Gesture_triggers
TriggersCount=3
[Data_2_7_1Triggers0]
GesturePointData=0,0.0625,1,1,0.5,0.0625,0.0625,1,0.875,0.5,0.125,0.0625,1,0.75,0.5,0.1875,0.0625,1,0.625,0.5,0.25,0.0625,1,0.5,0.5,0.3125,0.0625,1,0.375,0.5,0.375,0.0625,1,0.25,0.5,0.4375,0.0625,1,0.125,0.5,0.5,0.0625,0,0,0.5,0.5625,0.0625,0,0.125,0.5,0.625,0.0625,0,0.25,0.5,0.6875,0.0625,0,0.375,0.5,0.75,0.0625,0,0.5,0.5,0.8125,0.0625,0,0.625,0.5,0.875,0.0625,0,0.75,0.5,0.9375,0.0625,0,0.875,0.5,1,0,0,1,0.5
Type=GESTURE
[Data_2_7_1Triggers1]
GesturePointData=0,0.0833333,1,0.5,0.5,0.0833333,0.0833333,1,0.375,0.5,0.166667,0.0833333,1,0.25,0.5,0.25,0.0833333,1,0.125,0.5,0.333333,0.0833333,0,0,0.5,0.416667,0.0833333,0,0.125,0.5,0.5,0.0833333,0,0.25,0.5,0.583333,0.0833333,0,0.375,0.5,0.666667,0.0833333,0,0.5,0.5,0.75,0.0833333,0,0.625,0.5,0.833333,0.0833333,0,0.75,0.5,0.916667,0.0833333,0,0.875,0.5,1,0,0,1,0.5
Type=GESTURE
[Data_2_7_1Triggers2]
GesturePointData=0,0.0833333,1,1,0.5,0.0833333,0.0833333,1,0.875,0.5,0.166667,0.0833333,1,0.75,0.5,0.25,0.0833333,1,0.625,0.5,0.333333,0.0833333,1,0.5,0.5,0.416667,0.0833333,1,0.375,0.5,0.5,0.0833333,1,0.25,0.5,0.583333,0.0833333,1,0.125,0.5,0.666667,0.0833333,0,0,0.5,0.75,0.0833333,0,0.125,0.5,0.833333,0.0833333,0,0.25,0.5,0.916667,0.0833333,0,0.375,0.5,1,0,0,0.5,0.5
Type=GESTURE
[Data_2_7_2]
Comment=
Enabled=false
Name=Forward
Type=SIMPLE_ACTION_DATA
[Data_2_7_2Actions]
ActionsCount=1
[Data_2_7_2Actions0]
DestinationWindow=2
Input=Alt+Right
Type=KEYBOARD_INPUT
[Data_2_7_2Conditions]
Comment=
ConditionsCount=0
[Data_2_7_2Triggers]
Comment=Gesture_triggers
TriggersCount=3
[Data_2_7_2Triggers0]
GesturePointData=0,0.0625,0,0,0.5,0.0625,0.0625,0,0.125,0.5,0.125,0.0625,0,0.25,0.5,0.1875,0.0625,0,0.375,0.5,0.25,0.0625,0,0.5,0.5,0.3125,0.0625,0,0.625,0.5,0.375,0.0625,0,0.75,0.5,0.4375,0.0625,0,0.875,0.5,0.5,0.0625,1,1,0.5,0.5625,0.0625,1,0.875,0.5,0.625,0.0625,1,0.75,0.5,0.6875,0.0625,1,0.625,0.5,0.75,0.0625,1,0.5,0.5,0.8125,0.0625,1,0.375,0.5,0.875,0.0625,1,0.25,0.5,0.9375,0.0625,1,0.125,0.5,1,0,0,0,0.5
Type=GESTURE
[Data_2_7_2Triggers1]
GesturePointData=0,0.0833333,0,0.5,0.5,0.0833333,0.0833333,0,0.625,0.5,0.166667,0.0833333,0,0.75,0.5,0.25,0.0833333,0,0.875,0.5,0.333333,0.0833333,1,1,0.5,0.416667,0.0833333,1,0.875,0.5,0.5,0.0833333,1,0.75,0.5,0.583333,0.0833333,1,0.625,0.5,0.666667,0.0833333,1,0.5,0.5,0.75,0.0833333,1,0.375,0.5,0.833333,0.0833333,1,0.25,0.5,0.916667,0.0833333,1,0.125,0.5,1,0,0,0,0.5
Type=GESTURE
[Data_2_7_2Triggers2]
GesturePointData=0,0.0833333,0,0,0.5,0.0833333,0.0833333,0,0.125,0.5,0.166667,0.0833333,0,0.25,0.5,0.25,0.0833333,0,0.375,0.5,0.333333,0.0833333,0,0.5,0.5,0.416667,0.0833333,0,0.625,0.5,0.5,0.0833333,0,0.75,0.5,0.583333,0.0833333,0,0.875,0.5,0.666667,0.0833333,1,1,0.5,0.75,0.0833333,1,0.875,0.5,0.833333,0.0833333,1,0.75,0.5,0.916667,0.0833333,1,0.625,0.5,1,0,0,0.5,0.5
Type=GESTURE
[Data_2_7_3]
Comment=
Enabled=false
Name=Up
Type=SIMPLE_ACTION_DATA
[Data_2_7_3Actions]
ActionsCount=1
[Data_2_7_3Actions0]
DestinationWindow=2
Input=Alt+Up
Type=KEYBOARD_INPUT
[Data_2_7_3Conditions]
Comment=
ConditionsCount=0
[Data_2_7_3Triggers]
Comment=Gesture_triggers
TriggersCount=3
[Data_2_7_3Triggers0]
GesturePointData=0,0.0625,-0.5,0.5,1,0.0625,0.0625,-0.5,0.5,0.875,0.125,0.0625,-0.5,0.5,0.75,0.1875,0.0625,-0.5,0.5,0.625,0.25,0.0625,-0.5,0.5,0.5,0.3125,0.0625,-0.5,0.5,0.375,0.375,0.0625,-0.5,0.5,0.25,0.4375,0.0625,-0.5,0.5,0.125,0.5,0.0625,0.5,0.5,0,0.5625,0.0625,0.5,0.5,0.125,0.625,0.0625,0.5,0.5,0.25,0.6875,0.0625,0.5,0.5,0.375,0.75,0.0625,0.5,0.5,0.5,0.8125,0.0625,0.5,0.5,0.625,0.875,0.0625,0.5,0.5,0.75,0.9375,0.0625,0.5,0.5,0.875,1,0,0,0.5,1
Type=GESTURE
[Data_2_7_3Triggers1]
GesturePointData=0,0.0833333,-0.5,0.5,1,0.0833333,0.0833333,-0.5,0.5,0.875,0.166667,0.0833333,-0.5,0.5,0.75,0.25,0.0833333,-0.5,0.5,0.625,0.333333,0.0833333,-0.5,0.5,0.5,0.416667,0.0833333,-0.5,0.5,0.375,0.5,0.0833333,-0.5,0.5,0.25,0.583333,0.0833333,-0.5,0.5,0.125,0.666667,0.0833333,0.5,0.5,0,0.75,0.0833333,0.5,0.5,0.125,0.833333,0.0833333,0.5,0.5,0.25,0.916667,0.0833333,0.5,0.5,0.375,1,0,0,0.5,0.5
Type=GESTURE
[Data_2_7_3Triggers2]
GesturePointData=0,0.0833333,-0.5,0.5,0.5,0.0833333,0.0833333,-0.5,0.5,0.375,0.166667,0.0833333,-0.5,0.5,0.25,0.25,0.0833333,-0.5,0.5,0.125,0.333333,0.0833333,0.5,0.5,0,0.416667,0.0833333,0.5,0.5,0.125,0.5,0.0833333,0.5,0.5,0.25,0.583333,0.0833333,0.5,0.5,0.375,0.666667,0.0833333,0.5,0.5,0.5,0.75,0.0833333,0.5,0.5,0.625,0.833333,0.0833333,0.5,0.5,0.75,0.916667,0.0833333,0.5,0.5,0.875,1,0,0,0.5,1
Type=GESTURE
[Data_2_7_4]
Comment=
Enabled=false
Name=Reload
Type=SIMPLE_ACTION_DATA
[Data_2_7_4Actions]
ActionsCount=1
[Data_2_7_4Actions0]
DestinationWindow=2
Input=F5
Type=KEYBOARD_INPUT
[Data_2_7_4Conditions]
Comment=
ConditionsCount=0
[Data_2_7_4Triggers]
Comment=Gesture_triggers
TriggersCount=3
[Data_2_7_4Triggers0]
GesturePointData=0,0.03125,0,0,1,0.03125,0.03125,0,0.125,1,0.0625,0.03125,0,0.25,1,0.09375,0.03125,0,0.375,1,0.125,0.03125,0,0.5,1,0.15625,0.03125,0,0.625,1,0.1875,0.03125,0,0.75,1,0.21875,0.03125,0,0.875,1,0.25,0.03125,-0.5,1,1,0.28125,0.03125,-0.5,1,0.875,0.3125,0.03125,-0.5,1,0.75,0.34375,0.03125,-0.5,1,0.625,0.375,0.03125,-0.5,1,0.5,0.40625,0.03125,-0.5,1,0.375,0.4375,0.03125,-0.5,1,0.25,0.46875,0.03125,-0.5,1,0.125,0.5,0.03125,1,1,0,0.53125,0.03125,1,0.875,0,0.5625,0.03125,1,0.75,0,0.59375,0.03125,1,0.625,0,0.625,0.03125,1,0.5,0,0.65625,0.03125,1,0.375,0,0.6875,0.03125,1,0.25,0,0.71875,0.03125,1,0.125,0,0.75,0.03125,0.5,0,0,0.78125,0.03125,0.5,0,0.125,0.8125,0.03125,0.5,0,0.25,0.84375,0.03125,0.5,0,0.375,0.875,0.03125,0.5,0,0.5,0.90625,0.03125,0.5,0,0.625,0.9375,0.03125,0.5,0,0.75,0.96875,0.03125,0.5,0,0.875,1,0,0,0,1
Type=GESTURE
[Data_2_7_4Triggers1]
GesturePointData=0,0.0277778,0,0,1,0.0277778,0.0277778,0,0.125,1,0.0555556,0.0277778,0,0.25,1,0.0833333,0.0277778,0,0.375,1,0.111111,0.0277778,0,0.5,1,0.138889,0.0277778,0,0.625,1,0.166667,0.0277778,0,0.75,1,0.194444,0.0277778,0,0.875,1,0.222222,0.0277778,-0.5,1,1,0.25,0.0277778,-0.5,1,0.875,0.277778,0.0277778,-0.5,1,0.75,0.305556,0.0277778,-0.5,1,0.625,0.333333,0.0277778,-0.5,1,0.5,0.361111,0.0277778,-0.5,1,0.375,0.388889,0.0277778,-0.5,1,0.25,0.416667,0.0277778,-0.5,1,0.125,0.444444,0.0277778,1,1,0,0.472222,0.0277778,1,0.875,0,0.5,0.0277778,1,0.75,0,0.527778,0.0277778,1,0.625,0,0.555556,0.0277778,1,0.5,0,0.583333,0.0277778,1,0.375,0,0.611111,0.0277778,1,0.25,0,0.638889,0.0277778,1,0.125,0,0.666667,0.0277778,0.5,0,0,0.694444,0.0277778,0.5,0,0.125,0.722222,0.0277778,0.5,0,0.25,0.75,0.0277778,0.5,0,0.375,0.777778,0.0277778,0.5,0,0.5,0.805556,0.0277778,0.5,0,0.625,0.833333,0.0277778,0.5,0,0.75,0.861111,0.0277778,0.5,0,0.875,0.888889,0.0277778,0,0,1,0.916667,0.0277778,0,0.125,1,0.944444,0.0277778,0,0.25,1,0.972222,0.0277778,0,0.375,1,1,0,0,0.5,1
Type=GESTURE
[Data_2_7_4Triggers2]
GesturePointData=0,0.0277778,0.5,0,0.5,0.0277778,0.0277778,0.5,0,0.625,0.0555556,0.0277778,0.5,0,0.75,0.0833333,0.0277778,0.5,0,0.875,0.111111,0.0277778,0,0,1,0.138889,0.0277778,0,0.125,1,0.166667,0.0277778,0,0.25,1,0.194444,0.0277778,0,0.375,1,0.222222,0.0277778,0,0.5,1,0.25,0.0277778,0,0.625,1,0.277778,0.0277778,0,0.75,1,0.305556,0.0277778,0,0.875,1,0.333333,0.0277778,-0.5,1,1,0.361111,0.0277778,-0.5,1,0.875,0.388889,0.0277778,-0.5,1,0.75,0.416667,0.0277778,-0.5,1,0.625,0.444444,0.0277778,-0.5,1,0.5,0.472222,0.0277778,-0.5,1,0.375,0.5,0.0277778,-0.5,1,0.25,0.527778,0.0277778,-0.5,1,0.125,0.555556,0.0277778,1,1,0,0.583333,0.0277778,1,0.875,0,0.611111,0.0277778,1,0.75,0,0.638889,0.0277778,1,0.625,0,0.666667,0.0277778,1,0.5,0,0.694444,0.0277778,1,0.375,0,0.722222,0.0277778,1,0.25,0,0.75,0.0277778,1,0.125,0,0.777778,0.0277778,0.5,0,0,0.805556,0.0277778,0.5,0,0.125,0.833333,0.0277778,0.5,0,0.25,0.861111,0.0277778,0.5,0,0.375,0.888889,0.0277778,0.5,0,0.5,0.916667,0.0277778,0.5,0,0.625,0.944444,0.0277778,0.5,0,0.75,0.972222,0.0277778,0.5,0,0.875,1,0,0,0,1
Type=GESTURE
[Data_2_8]
Comment=After pressing Win+E (Tux+E) a WWW browser will be launched, and it will open http://www.kde.org . You may run all kind of commands you can run in minicli (Alt+F2).
Enabled=false
Name=Go to KDE Website
Type=SIMPLE_ACTION_DATA
[Data_2_8Actions]
ActionsCount=1
[Data_2_8Actions0]
CommandURL=http://www.kde.org
Type=COMMAND_URL
[Data_2_8Conditions]
Comment=
ConditionsCount=0
[Data_2_8Triggers]
Comment=Simple_action
TriggersCount=1
[Data_2_8Triggers0]
Key=Meta+E
Type=SHORTCUT
Uuid={80e1b39e-73da-4816-bdc3-6b1cf0cac72f}
[Data_3]
Comment=Basic Konqueror gestures.
DataCount=14
Enabled=true
ImportId=konqueror_gestures_kde321
Name=Konqueror Gestures
SystemGroup=0
Type=ACTION_DATA_GROUP
[Data_3Conditions]
Comment=Konqueror window
ConditionsCount=1
[Data_3Conditions0]
Type=ACTIVE_WINDOW
[Data_3Conditions0Window]
Comment=Konqueror
WindowsCount=1
[Data_3Conditions0Window0]
Class=^konqueror\s
ClassType=3
Comment=Konqueror
Role=konqueror-mainwindow#1
RoleType=0
Title=file:/ - Konqueror
TitleType=0
Type=SIMPLE
WindowTypes=1
[Data_3_1]
Comment=Press, move left, release.
Enabled=true
Name=Back
Type=SIMPLE_ACTION_DATA
[Data_3_10]
Comment=Opera-style: Press, move up, release.\nNOTE: Conflicts with 'New Tab', and as such is disabled by default.
Enabled=false
Name=Stop Loading
Type=SIMPLE_ACTION_DATA
[Data_3_10Actions]
ActionsCount=1
[Data_3_10Actions0]
DestinationWindow=2
Input=Escape\n
Type=KEYBOARD_INPUT
[Data_3_10Conditions]
Comment=
ConditionsCount=0
[Data_3_10Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_10Triggers0]
GesturePointData=0,0.125,-0.5,0.5,1,0.125,0.125,-0.5,0.5,0.875,0.25,0.125,-0.5,0.5,0.75,0.375,0.125,-0.5,0.5,0.625,0.5,0.125,-0.5,0.5,0.5,0.625,0.125,-0.5,0.5,0.375,0.75,0.125,-0.5,0.5,0.25,0.875,0.125,-0.5,0.5,0.125,1,0,0,0.5,0
Type=GESTURE
[Data_3_11]
Comment=Going up in URL/directory structure.\nMozilla-style: Press, move up, move left, move up, release.
Enabled=true
Name=Up
Type=SIMPLE_ACTION_DATA
[Data_3_11Actions]
ActionsCount=1
[Data_3_11Actions0]
DestinationWindow=2
Input=Alt+Up
Type=KEYBOARD_INPUT
[Data_3_11Conditions]
Comment=
ConditionsCount=0
[Data_3_11Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_11Triggers0]
GesturePointData=0,0.0625,-0.5,1,1,0.0625,0.0625,-0.5,1,0.875,0.125,0.0625,-0.5,1,0.75,0.1875,0.0625,-0.5,1,0.625,0.25,0.0625,1,1,0.5,0.3125,0.0625,1,0.875,0.5,0.375,0.0625,1,0.75,0.5,0.4375,0.0625,1,0.625,0.5,0.5,0.0625,1,0.5,0.5,0.5625,0.0625,1,0.375,0.5,0.625,0.0625,1,0.25,0.5,0.6875,0.0625,1,0.125,0.5,0.75,0.0625,-0.5,0,0.5,0.8125,0.0625,-0.5,0,0.375,0.875,0.0625,-0.5,0,0.25,0.9375,0.0625,-0.5,0,0.125,1,0,0,0,0
Type=GESTURE
[Data_3_12]
Comment=Going up in URL/directory structure.\nOpera-style: Press, move up, move left, move up, release.\nNOTE: Conflicts with "Activate Previous Tab", and as such is disabled by default.
Enabled=false
Name=Up #2
Type=SIMPLE_ACTION_DATA
[Data_3_12Actions]
ActionsCount=1
[Data_3_12Actions0]
DestinationWindow=2
Input=Alt+Up\n
Type=KEYBOARD_INPUT
[Data_3_12Conditions]
Comment=
ConditionsCount=0
[Data_3_12Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_12Triggers0]
GesturePointData=0,0.0625,-0.5,1,1,0.0625,0.0625,-0.5,1,0.875,0.125,0.0625,-0.5,1,0.75,0.1875,0.0625,-0.5,1,0.625,0.25,0.0625,-0.5,1,0.5,0.3125,0.0625,-0.5,1,0.375,0.375,0.0625,-0.5,1,0.25,0.4375,0.0625,-0.5,1,0.125,0.5,0.0625,1,1,0,0.5625,0.0625,1,0.875,0,0.625,0.0625,1,0.75,0,0.6875,0.0625,1,0.625,0,0.75,0.0625,1,0.5,0,0.8125,0.0625,1,0.375,0,0.875,0.0625,1,0.25,0,0.9375,0.0625,1,0.125,0,1,0,0,0,0
Type=GESTURE
[Data_3_13]
Comment=Press, move up, move right, release.
Enabled=true
Name=Activate Next Tab
Type=SIMPLE_ACTION_DATA
[Data_3_13Actions]
ActionsCount=1
[Data_3_13Actions0]
DestinationWindow=2
Input=Ctrl+.\n
Type=KEYBOARD_INPUT
[Data_3_13Conditions]
Comment=
ConditionsCount=0
[Data_3_13Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_13Triggers0]
GesturePointData=0,0.0625,-0.5,0,1,0.0625,0.0625,-0.5,0,0.875,0.125,0.0625,-0.5,0,0.75,0.1875,0.0625,-0.5,0,0.625,0.25,0.0625,-0.5,0,0.5,0.3125,0.0625,-0.5,0,0.375,0.375,0.0625,-0.5,0,0.25,0.4375,0.0625,-0.5,0,0.125,0.5,0.0625,0,0,0,0.5625,0.0625,0,0.125,0,0.625,0.0625,0,0.25,0,0.6875,0.0625,0,0.375,0,0.75,0.0625,0,0.5,0,0.8125,0.0625,0,0.625,0,0.875,0.0625,0,0.75,0,0.9375,0.0625,0,0.875,0,1,0,0,1,0
Type=GESTURE
[Data_3_14]
Comment=Press, move up, move left, release.
Enabled=true
Name=Activate Previous Tab
Type=SIMPLE_ACTION_DATA
[Data_3_14Actions]
ActionsCount=1
[Data_3_14Actions0]
DestinationWindow=2
Input=Ctrl+,
Type=KEYBOARD_INPUT
[Data_3_14Conditions]
Comment=
ConditionsCount=0
[Data_3_14Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_14Triggers0]
GesturePointData=0,0.0625,-0.5,1,1,0.0625,0.0625,-0.5,1,0.875,0.125,0.0625,-0.5,1,0.75,0.1875,0.0625,-0.5,1,0.625,0.25,0.0625,-0.5,1,0.5,0.3125,0.0625,-0.5,1,0.375,0.375,0.0625,-0.5,1,0.25,0.4375,0.0625,-0.5,1,0.125,0.5,0.0625,1,1,0,0.5625,0.0625,1,0.875,0,0.625,0.0625,1,0.75,0,0.6875,0.0625,1,0.625,0,0.75,0.0625,1,0.5,0,0.8125,0.0625,1,0.375,0,0.875,0.0625,1,0.25,0,0.9375,0.0625,1,0.125,0,1,0,0,0,0
Type=GESTURE
[Data_3_1Actions]
ActionsCount=1
[Data_3_1Actions0]
DestinationWindow=2
Input=Alt+Left
Type=KEYBOARD_INPUT
[Data_3_1Conditions]
Comment=
ConditionsCount=0
[Data_3_1Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_1Triggers0]
GesturePointData=0,0.125,1,1,0.5,0.125,0.125,1,0.875,0.5,0.25,0.125,1,0.75,0.5,0.375,0.125,1,0.625,0.5,0.5,0.125,1,0.5,0.5,0.625,0.125,1,0.375,0.5,0.75,0.125,1,0.25,0.5,0.875,0.125,1,0.125,0.5,1,0,0,0,0.5
Type=GESTURE
[Data_3_2]
Comment=Press, move down, move up, move down, release.
Enabled=true
Name=Duplicate Tab
Type=SIMPLE_ACTION_DATA
[Data_3_2Actions]
ActionsCount=1
[Data_3_2Actions0]
DestinationWindow=2
Input=Ctrl+Shift+D\n
Type=KEYBOARD_INPUT
[Data_3_2Conditions]
Comment=
ConditionsCount=0
[Data_3_2Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_2Triggers0]
GesturePointData=0,0.0416667,0.5,0.5,0,0.0416667,0.0416667,0.5,0.5,0.125,0.0833333,0.0416667,0.5,0.5,0.25,0.125,0.0416667,0.5,0.5,0.375,0.166667,0.0416667,0.5,0.5,0.5,0.208333,0.0416667,0.5,0.5,0.625,0.25,0.0416667,0.5,0.5,0.75,0.291667,0.0416667,0.5,0.5,0.875,0.333333,0.0416667,-0.5,0.5,1,0.375,0.0416667,-0.5,0.5,0.875,0.416667,0.0416667,-0.5,0.5,0.75,0.458333,0.0416667,-0.5,0.5,0.625,0.5,0.0416667,-0.5,0.5,0.5,0.541667,0.0416667,-0.5,0.5,0.375,0.583333,0.0416667,-0.5,0.5,0.25,0.625,0.0416667,-0.5,0.5,0.125,0.666667,0.0416667,0.5,0.5,0,0.708333,0.0416667,0.5,0.5,0.125,0.75,0.0416667,0.5,0.5,0.25,0.791667,0.0416667,0.5,0.5,0.375,0.833333,0.0416667,0.5,0.5,0.5,0.875,0.0416667,0.5,0.5,0.625,0.916667,0.0416667,0.5,0.5,0.75,0.958333,0.0416667,0.5,0.5,0.875,1,0,0,0.5,1
Type=GESTURE
[Data_3_3]
Comment=Press, move down, move up, release.
Enabled=true
Name=Duplicate Window
Type=SIMPLE_ACTION_DATA
[Data_3_3Actions]
ActionsCount=1
[Data_3_3Actions0]
DestinationWindow=2
Input=Ctrl+D\n
Type=KEYBOARD_INPUT
[Data_3_3Conditions]
Comment=
ConditionsCount=0
[Data_3_3Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_3Triggers0]
GesturePointData=0,0.0625,0.5,0.5,0,0.0625,0.0625,0.5,0.5,0.125,0.125,0.0625,0.5,0.5,0.25,0.1875,0.0625,0.5,0.5,0.375,0.25,0.0625,0.5,0.5,0.5,0.3125,0.0625,0.5,0.5,0.625,0.375,0.0625,0.5,0.5,0.75,0.4375,0.0625,0.5,0.5,0.875,0.5,0.0625,-0.5,0.5,1,0.5625,0.0625,-0.5,0.5,0.875,0.625,0.0625,-0.5,0.5,0.75,0.6875,0.0625,-0.5,0.5,0.625,0.75,0.0625,-0.5,0.5,0.5,0.8125,0.0625,-0.5,0.5,0.375,0.875,0.0625,-0.5,0.5,0.25,0.9375,0.0625,-0.5,0.5,0.125,1,0,0,0.5,0
Type=GESTURE
[Data_3_4]
Comment=Press, move right, release.
Enabled=true
Name=Forward
Type=SIMPLE_ACTION_DATA
[Data_3_4Actions]
ActionsCount=1
[Data_3_4Actions0]
DestinationWindow=2
Input=Alt+Right
Type=KEYBOARD_INPUT
[Data_3_4Conditions]
Comment=
ConditionsCount=0
[Data_3_4Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_4Triggers0]
GesturePointData=0,0.125,0,0,0.5,0.125,0.125,0,0.125,0.5,0.25,0.125,0,0.25,0.5,0.375,0.125,0,0.375,0.5,0.5,0.125,0,0.5,0.5,0.625,0.125,0,0.625,0.5,0.75,0.125,0,0.75,0.5,0.875,0.125,0,0.875,0.5,1,0,0,1,0.5
Type=GESTURE
[Data_3_5]
Comment=Press, move down, move half up, move right, move down, release.\n(Drawing a lowercase 'h'.)
Enabled=true
Name=Home
Type=SIMPLE_ACTION_DATA
[Data_3_5Actions]
ActionsCount=1
[Data_3_5Actions0]
DestinationWindow=2
Input=Alt+Home\n
Type=KEYBOARD_INPUT
[Data_3_5Conditions]
Comment=
ConditionsCount=0
[Data_3_5Triggers]
Comment=Gesture_triggers
TriggersCount=2
[Data_3_5Triggers0]
GesturePointData=0,0.0461748,0.5,0,0,0.0461748,0.0461748,0.5,0,0.125,0.0923495,0.0461748,0.5,0,0.25,0.138524,0.0461748,0.5,0,0.375,0.184699,0.0461748,0.5,0,0.5,0.230874,0.0461748,0.5,0,0.625,0.277049,0.0461748,0.5,0,0.75,0.323223,0.0461748,0.5,0,0.875,0.369398,0.065301,-0.25,0,1,0.434699,0.065301,-0.25,0.125,0.875,0.5,0.065301,-0.25,0.25,0.75,0.565301,0.065301,-0.25,0.375,0.625,0.630602,0.0461748,0,0.5,0.5,0.676777,0.0461748,0,0.625,0.5,0.722951,0.0461748,0,0.75,0.5,0.769126,0.0461748,0,0.875,0.5,0.815301,0.0461748,0.5,1,0.5,0.861476,0.0461748,0.5,1,0.625,0.90765,0.0461748,0.5,1,0.75,0.953825,0.0461748,0.5,1,0.875,1,0,0,1,1
Type=GESTURE
[Data_3_5Triggers1]
GesturePointData=0,0.0416667,0.5,0,0,0.0416667,0.0416667,0.5,0,0.125,0.0833333,0.0416667,0.5,0,0.25,0.125,0.0416667,0.5,0,0.375,0.166667,0.0416667,0.5,0,0.5,0.208333,0.0416667,0.5,0,0.625,0.25,0.0416667,0.5,0,0.75,0.291667,0.0416667,0.5,0,0.875,0.333333,0.0416667,-0.5,0,1,0.375,0.0416667,-0.5,0,0.875,0.416667,0.0416667,-0.5,0,0.75,0.458333,0.0416667,-0.5,0,0.625,0.5,0.0416667,0,0,0.5,0.541667,0.0416667,0,0.125,0.5,0.583333,0.0416667,0,0.25,0.5,0.625,0.0416667,0,0.375,0.5,0.666667,0.0416667,0,0.5,0.5,0.708333,0.0416667,0,0.625,0.5,0.75,0.0416667,0,0.75,0.5,0.791667,0.0416667,0,0.875,0.5,0.833333,0.0416667,0.5,1,0.5,0.875,0.0416667,0.5,1,0.625,0.916667,0.0416667,0.5,1,0.75,0.958333,0.0416667,0.5,1,0.875,1,0,0,1,1
Type=GESTURE
[Data_3_6]
Comment=Press, move right, move down, move right, release.\nMozilla-style: Press, move down, move right, release.
Enabled=true
Name=Close Tab
Type=SIMPLE_ACTION_DATA
[Data_3_6Actions]
ActionsCount=1
[Data_3_6Actions0]
DestinationWindow=2
Input=Ctrl+W\n
Type=KEYBOARD_INPUT
[Data_3_6Conditions]
Comment=
ConditionsCount=0
[Data_3_6Triggers]
Comment=Gesture_triggers
TriggersCount=2
[Data_3_6Triggers0]
GesturePointData=0,0.0625,0,0,0,0.0625,0.0625,0,0.125,0,0.125,0.0625,0,0.25,0,0.1875,0.0625,0,0.375,0,0.25,0.0625,0.5,0.5,0,0.3125,0.0625,0.5,0.5,0.125,0.375,0.0625,0.5,0.5,0.25,0.4375,0.0625,0.5,0.5,0.375,0.5,0.0625,0.5,0.5,0.5,0.5625,0.0625,0.5,0.5,0.625,0.625,0.0625,0.5,0.5,0.75,0.6875,0.0625,0.5,0.5,0.875,0.75,0.0625,0,0.5,1,0.8125,0.0625,0,0.625,1,0.875,0.0625,0,0.75,1,0.9375,0.0625,0,0.875,1,1,0,0,1,1
Type=GESTURE
[Data_3_6Triggers1]
GesturePointData=0,0.0625,0.5,0,0,0.0625,0.0625,0.5,0,0.125,0.125,0.0625,0.5,0,0.25,0.1875,0.0625,0.5,0,0.375,0.25,0.0625,0.5,0,0.5,0.3125,0.0625,0.5,0,0.625,0.375,0.0625,0.5,0,0.75,0.4375,0.0625,0.5,0,0.875,0.5,0.0625,0,0,1,0.5625,0.0625,0,0.125,1,0.625,0.0625,0,0.25,1,0.6875,0.0625,0,0.375,1,0.75,0.0625,0,0.5,1,0.8125,0.0625,0,0.625,1,0.875,0.0625,0,0.75,1,0.9375,0.0625,0,0.875,1,1,0,0,1,1
Type=GESTURE
[Data_3_7]
Comment=Press, move up, release.\nConflicts with Opera-style 'Up #2', which is disabled by default.
Enabled=true
Name=New Tab
Type=SIMPLE_ACTION_DATA
[Data_3_7Actions]
ActionsCount=1
[Data_3_7Actions0]
DestinationWindow=2
Input=Ctrl+Shift+N
Type=KEYBOARD_INPUT
[Data_3_7Conditions]
Comment=
ConditionsCount=0
[Data_3_7Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_7Triggers0]
GesturePointData=0,0.125,-0.5,0.5,1,0.125,0.125,-0.5,0.5,0.875,0.25,0.125,-0.5,0.5,0.75,0.375,0.125,-0.5,0.5,0.625,0.5,0.125,-0.5,0.5,0.5,0.625,0.125,-0.5,0.5,0.375,0.75,0.125,-0.5,0.5,0.25,0.875,0.125,-0.5,0.5,0.125,1,0,0,0.5,0
Type=GESTURE
[Data_3_8]
Comment=Press, move down, release.
Enabled=true
Name=New Window
Type=SIMPLE_ACTION_DATA
[Data_3_8Actions]
ActionsCount=1
[Data_3_8Actions0]
DestinationWindow=2
Input=Ctrl+N\n
Type=KEYBOARD_INPUT
[Data_3_8Conditions]
Comment=
ConditionsCount=0
[Data_3_8Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_8Triggers0]
GesturePointData=0,0.125,0.5,0.5,0,0.125,0.125,0.5,0.5,0.125,0.25,0.125,0.5,0.5,0.25,0.375,0.125,0.5,0.5,0.375,0.5,0.125,0.5,0.5,0.5,0.625,0.125,0.5,0.5,0.625,0.75,0.125,0.5,0.5,0.75,0.875,0.125,0.5,0.5,0.875,1,0,0,0.5,1
Type=GESTURE
[Data_3_9]
Comment=Press, move up, move down, release.
Enabled=true
Name=Reload
Type=SIMPLE_ACTION_DATA
[Data_3_9Actions]
ActionsCount=1
[Data_3_9Actions0]
DestinationWindow=2
Input=F5
Type=KEYBOARD_INPUT
[Data_3_9Conditions]
Comment=
ConditionsCount=0
[Data_3_9Triggers]
Comment=Gesture_triggers
TriggersCount=1
[Data_3_9Triggers0]
GesturePointData=0,0.0625,-0.5,0.5,1,0.0625,0.0625,-0.5,0.5,0.875,0.125,0.0625,-0.5,0.5,0.75,0.1875,0.0625,-0.5,0.5,0.625,0.25,0.0625,-0.5,0.5,0.5,0.3125,0.0625,-0.5,0.5,0.375,0.375,0.0625,-0.5,0.5,0.25,0.4375,0.0625,-0.5,0.5,0.125,0.5,0.0625,0.5,0.5,0,0.5625,0.0625,0.5,0.5,0.125,0.625,0.0625,0.5,0.5,0.25,0.6875,0.0625,0.5,0.5,0.375,0.75,0.0625,0.5,0.5,0.5,0.8125,0.0625,0.5,0.5,0.625,0.875,0.0625,0.5,0.5,0.75,0.9375,0.0625,0.5,0.5,0.875,1,0,0,0.5,1
Type=GESTURE
[Data_4]
AllowMerge=true
Comment=This group contains actions that are set up by default.
DataCount=1
Enabled=true
ImportId=printscreen
Name=Preset Actions
SystemGroup=0
Type=ACTION_DATA_GROUP
[Data_4Conditions]
Comment=
ConditionsCount=0
[Data_4_1]
Comment=Launches KSnapShot when PrintScrn is pressed.
Enabled=true
Name=PrintScreen
Type=SIMPLE_ACTION_DATA
[Data_4_1Actions]
ActionsCount=1
[Data_4_1Actions0]
CommandURL=ksnapshot
Type=COMMAND_URL
[Data_4_1Conditions]
Comment=
ConditionsCount=0
[Data_4_1Triggers]
Comment=Simple_action
TriggersCount=1
[Data_4_1Triggers0]
Key=Print
Type=SHORTCUT
Uuid={72302d03-d536-4d08-a903-c80d7e9f7c23}
[Data_5]
Comment=Comment
Enabled=true
Name=Start Konsole
Type=SIMPLE_ACTION_DATA
[Data_5Actions]
ActionsCount=1
[Data_5Actions0]
CommandURL=konsole
Type=COMMAND_URL
[Data_5Conditions]
Comment=
ConditionsCount=0
[Data_5Triggers]
Comment=Simple_action
TriggersCount=1
[Data_5Triggers0]
Key=Ctrl+Alt+T
Type=SHORTCUT
Uuid={99d9d36b-54f0-40c3-860a-d7bf5966a3f2}
[Data_6]
Comment=Comment
Enabled=true
Name=Start Konsole
Type=SIMPLE_ACTION_DATA
[Data_6Actions]
ActionsCount=1
[Data_6Actions0]
CommandURL=konsole
Type=COMMAND_URL
[Data_6Conditions]
Comment=
ConditionsCount=0
[Data_6Triggers]
Comment=Simple_action
TriggersCount=1
[Data_6Triggers0]
Key=Meta+Return
Type=SHORTCUT
Uuid={4f187baa-bed0-46dc-abba-fc8e99c221e8}
[Directories-default]
prefixes[$d]
[Emoticons]
emoticonsTheme[$d]
[General]
BrowserApplication[$d]
XftHintStyle[$d]
desktopFont[$d]
font[$d]
menuFont[$d]
smallestReadableFont[$d]
taskbarFont[$d]
toolBarFont[$d]
[Gestures]
Disabled=true
MouseButton=2
Timeout=300
[GesturesExclude]
Comment=
WindowsCount=0
[Main]
AlreadyImported=defaults,kde32b1,konqueror_gestures_kde321,printscreen
Disabled=false
Version=2
[Notification Messages]
:confirmNewSession[$d]
[PreviewSettings]
UseFileThumbnails[$d]
[Toolbar style]
ToolButtonStyle[$d]
[Voice]
Shortcut=
[WM]
activeFont[$d]
[Favorites]
FavoriteURLs=/usr/share/applications/firefox.desktop,/usr/share/applications/thunderbird.desktop,/usr/share/applications/kde4/systemsettings.desktop,/usr/share/applications/kde4/dolphin.desktop,/usr/share/applications/kde4/amarok.desktop
[KRunner]
loadAll=false
[KRunner][PlasmaRunnerManager]
pluginWhiteList=places,shell,services,bookmarks,recentdocuments,locations
[KSplash]
Engine=None
Theme=None
# deb cdrom:[Ubuntu 12.04 LTS _Precise Pangolin_ - Release i386 (20120423)]/ precise main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://ftp.halifax.rwth-aachen.de/ubuntu/ precise main restricted
deb-src http://ftp.halifax.rwth-aachen.de/ubuntu/ precise main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-updates main restricted
deb-src http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://ftp.halifax.rwth-aachen.de/ubuntu/ precise universe
deb-src http://ftp.halifax.rwth-aachen.de/ubuntu/ precise universe
deb http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-updates universe
deb-src http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://ftp.halifax.rwth-aachen.de/ubuntu/ precise multiverse
deb-src http://ftp.halifax.rwth-aachen.de/ubuntu/ precise multiverse
deb http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-updates multiverse
deb-src http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-updates multiverse
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-security main restricted
deb-src http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-security main restricted
deb http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-security universe
deb-src http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-security universe
deb http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-security multiverse
deb-src http://ftp.halifax.rwth-aachen.de/ubuntu/ precise-security multiverse
## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu precise partner
# deb-src http://archive.canonical.com/ubuntu precise partner
## This software is not part of Ubuntu, but is offered by third-party
## developers who want to ship their latest software.
deb http://extras.ubuntu.com/ubuntu precise main
deb-src http://extras.ubuntu.com/ubuntu precise main
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment