diff --git a/build/scripts-3.5/fenrir b/build/scripts-3.5/fenrir new file mode 100755 index 00000000..b4c51b28 --- /dev/null +++ b/build/scripts-3.5/fenrir @@ -0,0 +1,137 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- + +# Fenrir TTY screen reader +# By Chrys, Storm Dragon, and contributers. + +import os, sys, signal, time +import pathfinder + +if not os.path.dirname(os.path.realpath(pathfinder.__file__)) in sys.path: + sys.path.append(os.path.dirname(os.path.realpath(pathfinder.__file__))) + +from core import settingsManager +from core import debug + +class fenrir(): + def __init__(self): + try: + self.environment = settingsManager.settingsManager().initFenrirConfig() + if not self.environment: + raise RuntimeError('Cannot Initialize. Maybe the configfile is not available or not parseable') + except RuntimeError: + raise + self.environment['runtime']['outputManager'].presentText("Start Fenrir", soundIcon='ScreenReaderOn', interrupt=True) + signal.signal(signal.SIGINT, self.captureSignal) + signal.signal(signal.SIGTERM, self.captureSignal) + self.wasCommand = False + + def proceed(self): + while(self.environment['generalInformation']['running']): + try: + self.handleProcess() + except Exception as e: + self.environment['runtime']['debug'].writeDebugOut(str(e),debug.debugLevel.ERROR) + self.shutdown() + + def handleProcess(self): + #startTime = time.time() + eventReceived = self.environment['runtime']['inputManager'].getInputEvent() + if eventReceived: + self.prepareCommand() + if not (self.wasCommand or self.environment['runtime']['inputManager'].isFenrirKeyPressed() or self.environment['generalInformation']['tutorialMode']) or self.environment['runtime']['screenManager'].isSuspendingScreen(): + self.environment['runtime']['inputManager'].writeEventBuffer() + if self.environment['runtime']['inputManager'].noKeyPressed(): + if self.wasCommand: + self.wasCommand = False + self.environment['runtime']['inputManager'].clearEventBuffer() + if self.environment['generalInformation']['tutorialMode']: + self.environment['runtime']['inputManager'].clearEventBuffer() + if self.environment['input']['keyForeward'] > 0: + self.environment['input']['keyForeward'] -=1 + self.environment['runtime']['screenManager'].update('onInput') + self.environment['runtime']['commandManager'].executeDefaultTrigger('onInput') + else: + self.environment['runtime']['screenManager'].update('onUpdate') + if self.environment['runtime']['applicationManager'].isApplicationChange(): + self.environment['runtime']['commandManager'].executeDefaultTrigger('onApplicationChange') + self.environment['runtime']['commandManager'].executeSwitchTrigger('onSwitchApplicationProfile', \ + self.environment['runtime']['applicationManager'].getPrevApplication(), \ + self.environment['runtime']['applicationManager'].getCurrentApplication()) + + if self.environment['runtime']['screenManager'].isScreenChange(): + self.environment['runtime']['commandManager'].executeDefaultTrigger('onScreenChanged') + else: + self.environment['runtime']['commandManager'].executeDefaultTrigger('onScreenUpdate') + + self.handleCommands() + #print(time.time()-startTime) + + def prepareCommand(self): + if self.environment['runtime']['screenManager'].isSuspendingScreen(): + return + if self.environment['runtime']['inputManager'].noKeyPressed(): + return + if self.environment['input']['keyForeward'] > 0: + return + shortcut = self.environment['runtime']['inputManager'].getCurrShortcut() + command = self.environment['runtime']['inputManager'].getCommandForShortcut(shortcut) + if len(self.environment['input']['prevDeepestInput']) <= len(self.environment['input']['currInput']): + self.wasCommand = command != '' + if command == '': + return + + self.environment['runtime']['commandManager'].queueCommand(command) + + + def handleCommands(self): + if not self.environment['runtime']['commandManager'].isCommandQueued(): + return + self.environment['runtime']['commandManager'].executeCommand( self.environment['commandInfo']['currCommand'], 'commands') + + def shutdownRequest(self): + self.environment['generalInformation']['running'] = False + + def captureSignal(self, siginit, frame): + self.shutdownRequest() + + def shutdown(self): + if self.environment['runtime']['inputManager']: + self.environment['runtime']['inputManager'].shutdown() + del self.environment['runtime']['inputManager'] + self.environment['runtime']['outputManager'].presentText("Quit Fenrir", soundIcon='ScreenReaderOff', interrupt=True) + time.sleep(0.9) # wait a little for sound + + if self.environment['runtime']['screenManager']: + self.environment['runtime']['screenManager'].shutdown() + del self.environment['runtime']['screenManager'] + if self.environment['runtime']['commandManager']: + self.environment['runtime']['commandManager'].shutdown() + del self.environment['runtime']['commandManager'] + if self.environment['runtime']['outputManager']: + self.environment['runtime']['outputManager'].shutdown() + del self.environment['runtime']['outputManager'] + if self.environment['runtime']['punctuationManager']: + self.environment['runtime']['punctuationManager'].shutdown() + del self.environment['runtime']['punctuationManager'] + if self.environment['runtime']['cursorManager']: + self.environment['runtime']['cursorManager'].shutdown() + del self.environment['runtime']['cursorManager'] + if self.environment['runtime']['applicationManager']: + self.environment['runtime']['applicationManager'].shutdown() + del self.environment['runtime']['applicationManager'] + + if self.environment['runtime']['debug']: + self.environment['runtime']['debug'].shutdown() + del self.environment['runtime']['debug'] + time.sleep(0.2) # wait a little before splatter it :) + self.environment = None + +def main(): + #if __name__ == "__main__": + app = fenrir() + app.proceed() + del app + +if __name__ == "__main__": + main() diff --git a/config/keyboard/desktop.conf b/config/keyboard/desktop.conf index d5fe4d40..960a09db 100644 --- a/config/keyboard/desktop.conf +++ b/config/keyboard/desktop.conf @@ -66,6 +66,7 @@ KEY_FENRIR,KEY_F4=toggle_speech KEY_FENRIR,KEY_CTRL,KEY_P=toggle_punctuation_level KEY_FENRIR,KEY_RIGHTBRACE=toggle_auto_spell_check KEY_FENRIR,KEY_BACKSLASH=toggle_output +#=toggle_emoticons key_FENRIR,KEY_KPENTER=toggle_auto_read KEY_FENRIR,KEY_Q=quit_fenrir KEY_FENRIR,KEY_T=time diff --git a/config/keyboard/laptop.conf b/config/keyboard/laptop.conf index d85e04f7..d51f9c59 100644 --- a/config/keyboard/laptop.conf +++ b/config/keyboard/laptop.conf @@ -66,6 +66,7 @@ KEY_FENRIR,KEY_F4=toggle_speech KEY_FENRIR,KEY_SHIFT,KEY_CTRL,KEY_P=toggle_punctuation_level KEY_FENRIR,KEY_RIGHTBRACE=toggle_auto_spell_check KEY_FENRIR,KEY_SHIFT,KEY_ENTER=toggle_output +#=toggle_emoticons KEY_FENRIR,KEY_ENTER=toggle_auto_read KEY_FENRIR,KEY_Q=quit_fenrir KEY_FENRIR,KEY_T=time diff --git a/config/keyboard/test.conf b/config/keyboard/test.conf index d5fe4d40..960a09db 100644 --- a/config/keyboard/test.conf +++ b/config/keyboard/test.conf @@ -66,6 +66,7 @@ KEY_FENRIR,KEY_F4=toggle_speech KEY_FENRIR,KEY_CTRL,KEY_P=toggle_punctuation_level KEY_FENRIR,KEY_RIGHTBRACE=toggle_auto_spell_check KEY_FENRIR,KEY_BACKSLASH=toggle_output +#=toggle_emoticons key_FENRIR,KEY_KPENTER=toggle_auto_read KEY_FENRIR,KEY_Q=quit_fenrir KEY_FENRIR,KEY_T=time diff --git a/config/punctuation/default.conf b/config/punctuation/default.conf new file mode 100644 index 00000000..5cd85478 --- /dev/null +++ b/config/punctuation/default.conf @@ -0,0 +1,52 @@ +# how to use this file? +# the # on the beginning of the line is a comment +# the different sections are seperated by [Dict] is the section name. Dict is a keyword +# the entrys are seperated with :===: in words colon tripple equal colon ( to not collide with substitutions) +[levelDict] +none:===: +some:===:.-$~+*-/\\@ +most:===:.,:-$~+*-/\\@!#%^&*()[]}{<>; +all:===:!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~ + +[punctDict] +&:===:and +':===:apostrophe +@:===:at +\:===:backslash +|:===:bar +!:===:bang +^:===:carrot +::===:colon +,:===:comma +-:===:dash +$:===:dollar +.:===:dot +>:===:greater +`:===:grave +#:===:hash +{:===:left brace +[:===:left bracket +(:===:left paren +<:===:less +%:===:percent ++:===:plus +?:===:question +":===:quote +):===:right paren +}:===:right brace +]:===:right bracket +;:===:semicolon +/:===:slash +*:===:star +~:===:tilde +_:===:line +=:===:equals + +[customDict] +chrys:===:king chrys + +[emoticonDict] +:):===:smile +;):===:twinker +XD:===:loool +:D:===:lought diff --git a/config/settings/settings.conf b/config/settings/settings.conf index f5e54aea..cd44ed61 100644 --- a/config/settings/settings.conf +++ b/config/settings/settings.conf @@ -93,12 +93,14 @@ wordEcho=False # interrupt speech on any keypress interruptOnKeyPress=False # timeout for double tap in sec -doubleTapDelay=0.2 +doubleTapTimeout=0.2 [general] debugLevel=0 +punctuationProfile=default punctuationLevel=some numberOfClipboards=10 +emoticons=True # define the current fenrir key fenrirKeys=KEY_KP0,KEY_META timeFormat=%H:%M:%P diff --git a/config/settings/settings.conf.chrys b/config/settings/settings.conf.chrys new file mode 100644 index 00000000..ff6b691c --- /dev/null +++ b/config/settings/settings.conf.chrys @@ -0,0 +1,116 @@ +[sound] +# Turn sound on or off: +enabled=True + +# Select the driver used to play sounds, choices are generic and gstreamer. +# Sox is the default. +driver=generic + +# Sound themes. This is the pack of sounds used for sound alerts. +# Sound packs may be located at /usr/share/sounds +# For system wide availability, or ~/.local/share/fenrir/sounds +# For the current user. +theme=default + +# Sound volume controls how loud the sounds for your chosen soundpack are. +# 0 is quietest, 1.0 is loudest. +volume=1.0 + +# shell commands for generic sound driver +# the folowing variable are substituded +# fenrirVolume = the current volume setting +# fenrirSoundFile = the soundfile for an soundicon +# fenrirFrequence = the frequence to play +# fenrirDuration = the duration of the frequence +# the following command is used for play a soundfile +genericPlayFileCommand=play -q -v fenrirVolume fenrirSoundFile +#the following command is used for generating a frequence beep +genericFrequencyCommand=play -q -v fenrirVolume -n -c1 synth fenrirDuration sine fenrirFrequence + +[speech] +# Turn speech on or off: +enabled=True + +# Select speech driver, options are speechd (default) or espeak: +driver=speechd +#driver=espeak + + +# The rate selects how fast fenrir will speak. Options range from 0, slowest, to 1.0, fastest. +rate=0.45 + +# Pitch controls the pitch of the voice, select from 0, lowest, to 1.0, highest. +pitch=0.5 +# Pitch for capital letters +capitalPitch=0.9 + +# Volume controls the loudness of the voice, select from 0, quietest, to 1.0, loudest. +volume=1.0 + +# Module is used for speech-dispatcher, to select the speech module you want to use. +# Consult speech-dispatcher's configuration and help ti find out which modules are available. +# The default is espeak. +module=espeak + +# Voice selects the varient you want to use, for example, f5 will use the female voice #5 in espeak, +# or if using the espeak module in speech-dispatcher. To find out which voices are available, consult the documentation provided with your chosen synthesizer. +voice= + +# Select the language you want fenrir to use. +language=de + +# Read new text as it happens? +autoReadIncoming=True + +[braille] +#braille is not implemented yet +enabled=True +driver=brlapi +layout=en + +[screen] +driver=linux +encoding=cp850 +screenUpdateDelay=0.4 +suspendingScreen= +autodetectSuspendingScreen=True + +[keyboard] +driver=evdev +# filter input devices AUTO, ALL or a DEVICE NAME +device=AUTO +# gives fenrir exclusive access to the keyboard and let consume keystrokes. just disable on problems. +grabDevices=True +ignoreShortcuts=False +# the current shortcut layout located in /etc/fenrir/keyboard +keyboardLayout=test +# echo chars while typing. +charEcho=False +# echo deleted chars +charDeleteEcho=True +# echo word after pressing space +wordEcho=False +# interrupt speech on any keypress +interruptOnKeyPress=False +# timeout for double tap in sec +doubleTapTimeout=0.2 + +[general] +debugLevel=1 +punctuationProfile=default +punctuationLevel=Some +numberOfClipboards=10 +emoticons=True +# define the current fenrir key +fenrirKeys=KEY_KP0,KEY_META +timeFormat=%H:%M:%P +dateFormat=%A, %B %d, %Y +autoSpellCheck=True +spellCheckLanguage=en_US + +[promote] +enabled=True +inactiveTimeoutSec=120 +list= + + diff --git a/config/settings/settings.conf.storm b/config/settings/settings.conf.storm index 4ee95f1e..1a8f1a0f 100644 --- a/config/settings/settings.conf.storm +++ b/config/settings/settings.conf.storm @@ -44,12 +44,14 @@ charDeleteEcho=True wordEcho=False interruptOnKeyPress=True # timeout for double tap in sec -doubleTapDelay=0.2 +doubleTapTimeout=0.2 [general] debugLevel=0 +punctuationProfile=default punctuationLevel=some numberOfClipboards=10 +emoticons=True fenrirKeys=KEY_KP0 timeFormat=%H:%M:%P dateFormat="%A, %B %d, %Y" diff --git a/contrib/fenrir-git/fenrir-git-v0.1.7.g6ec714e-1-any.pkg.tar.xz b/contrib/fenrir-git/fenrir-git-v0.1.7.g6ec714e-1-any.pkg.tar.xz new file mode 100644 index 00000000..6fb18a40 Binary files /dev/null and b/contrib/fenrir-git/fenrir-git-v0.1.7.g6ec714e-1-any.pkg.tar.xz differ diff --git a/contrib/fenrir-git/fenrir/HEAD b/contrib/fenrir-git/fenrir/HEAD new file mode 100644 index 00000000..cb089cd8 --- /dev/null +++ b/contrib/fenrir-git/fenrir/HEAD @@ -0,0 +1 @@ +ref: refs/heads/master diff --git a/contrib/fenrir-git/fenrir/config b/contrib/fenrir-git/fenrir/config new file mode 100644 index 00000000..8ab9bca0 --- /dev/null +++ b/contrib/fenrir-git/fenrir/config @@ -0,0 +1,8 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = true +[remote "origin"] + url = https://github.com/chrys87/fenrir.git + fetch = +refs/*:refs/* + mirror = true diff --git a/contrib/fenrir-git/fenrir/description b/contrib/fenrir-git/fenrir/description new file mode 100644 index 00000000..498b267a --- /dev/null +++ b/contrib/fenrir-git/fenrir/description @@ -0,0 +1 @@ +Unnamed repository; edit this file 'description' to name the repository. diff --git a/contrib/fenrir-git/fenrir/hooks/applypatch-msg.sample b/contrib/fenrir-git/fenrir/hooks/applypatch-msg.sample new file mode 100755 index 00000000..a5d7b84a --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/applypatch-msg.sample @@ -0,0 +1,15 @@ +#!/bin/sh +# +# An example hook script to check the commit log message taken by +# applypatch from an e-mail message. +# +# The hook should exit with non-zero status after issuing an +# appropriate message if it wants to stop the commit. The hook is +# allowed to edit the commit message file. +# +# To enable this hook, rename this file to "applypatch-msg". + +. git-sh-setup +commitmsg="$(git rev-parse --git-path hooks/commit-msg)" +test -x "$commitmsg" && exec "$commitmsg" ${1+"$@"} +: diff --git a/contrib/fenrir-git/fenrir/hooks/commit-msg.sample b/contrib/fenrir-git/fenrir/hooks/commit-msg.sample new file mode 100755 index 00000000..b58d1184 --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/commit-msg.sample @@ -0,0 +1,24 @@ +#!/bin/sh +# +# An example hook script to check the commit log message. +# Called by "git commit" with one argument, the name of the file +# that has the commit message. The hook should exit with non-zero +# status after issuing an appropriate message if it wants to stop the +# commit. The hook is allowed to edit the commit message file. +# +# To enable this hook, rename this file to "commit-msg". + +# Uncomment the below to add a Signed-off-by line to the message. +# Doing this in a hook is a bad idea in general, but the prepare-commit-msg +# hook is more suited to it. +# +# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" + +# This example catches duplicate Signed-off-by lines. + +test "" = "$(grep '^Signed-off-by: ' "$1" | + sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || { + echo >&2 Duplicate Signed-off-by lines. + exit 1 +} diff --git a/contrib/fenrir-git/fenrir/hooks/post-update.sample b/contrib/fenrir-git/fenrir/hooks/post-update.sample new file mode 100755 index 00000000..ec17ec19 --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/post-update.sample @@ -0,0 +1,8 @@ +#!/bin/sh +# +# An example hook script to prepare a packed repository for use over +# dumb transports. +# +# To enable this hook, rename this file to "post-update". + +exec git update-server-info diff --git a/contrib/fenrir-git/fenrir/hooks/pre-applypatch.sample b/contrib/fenrir-git/fenrir/hooks/pre-applypatch.sample new file mode 100755 index 00000000..4142082b --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/pre-applypatch.sample @@ -0,0 +1,14 @@ +#!/bin/sh +# +# An example hook script to verify what is about to be committed +# by applypatch from an e-mail message. +# +# The hook should exit with non-zero status after issuing an +# appropriate message if it wants to stop the commit. +# +# To enable this hook, rename this file to "pre-applypatch". + +. git-sh-setup +precommit="$(git rev-parse --git-path hooks/pre-commit)" +test -x "$precommit" && exec "$precommit" ${1+"$@"} +: diff --git a/contrib/fenrir-git/fenrir/hooks/pre-commit.sample b/contrib/fenrir-git/fenrir/hooks/pre-commit.sample new file mode 100755 index 00000000..68d62d54 --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/pre-commit.sample @@ -0,0 +1,49 @@ +#!/bin/sh +# +# An example hook script to verify what is about to be committed. +# Called by "git commit" with no arguments. The hook should +# exit with non-zero status after issuing an appropriate message if +# it wants to stop the commit. +# +# To enable this hook, rename this file to "pre-commit". + +if git rev-parse --verify HEAD >/dev/null 2>&1 +then + against=HEAD +else + # Initial commit: diff against an empty tree object + against=4b825dc642cb6eb9a060e54bf8d69288fbee4904 +fi + +# If you want to allow non-ASCII filenames set this variable to true. +allownonascii=$(git config --bool hooks.allownonascii) + +# Redirect output to stderr. +exec 1>&2 + +# Cross platform projects tend to avoid non-ASCII filenames; prevent +# them from being added to the repository. We exploit the fact that the +# printable range starts at the space character and ends with tilde. +if [ "$allownonascii" != "true" ] && + # Note that the use of brackets around a tr range is ok here, (it's + # even required, for portability to Solaris 10's /usr/bin/tr), since + # the square bracket bytes happen to fall in the designated range. + test $(git diff --cached --name-only --diff-filter=A -z $against | + LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0 +then + cat <<\EOF +Error: Attempt to add a non-ASCII file name. + +This can cause problems if you want to work with people on other platforms. + +To be portable it is advisable to rename the file. + +If you know what you are doing you can disable this check using: + + git config hooks.allownonascii true +EOF + exit 1 +fi + +# If there are whitespace errors, print the offending file names and fail. +exec git diff-index --check --cached $against -- diff --git a/contrib/fenrir-git/fenrir/hooks/pre-push.sample b/contrib/fenrir-git/fenrir/hooks/pre-push.sample new file mode 100755 index 00000000..6187dbf4 --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/pre-push.sample @@ -0,0 +1,53 @@ +#!/bin/sh + +# An example hook script to verify what is about to be pushed. Called by "git +# push" after it has checked the remote status, but before anything has been +# pushed. If this script exits with a non-zero status nothing will be pushed. +# +# This hook is called with the following parameters: +# +# $1 -- Name of the remote to which the push is being done +# $2 -- URL to which the push is being done +# +# If pushing without using a named remote those arguments will be equal. +# +# Information about the commits which are being pushed is supplied as lines to +# the standard input in the form: +# +# +# +# This sample shows how to prevent push of commits where the log message starts +# with "WIP" (work in progress). + +remote="$1" +url="$2" + +z40=0000000000000000000000000000000000000000 + +while read local_ref local_sha remote_ref remote_sha +do + if [ "$local_sha" = $z40 ] + then + # Handle delete + : + else + if [ "$remote_sha" = $z40 ] + then + # New branch, examine all commits + range="$local_sha" + else + # Update to existing branch, examine new commits + range="$remote_sha..$local_sha" + fi + + # Check for WIP commit + commit=`git rev-list -n 1 --grep '^WIP' "$range"` + if [ -n "$commit" ] + then + echo >&2 "Found WIP commit in $local_ref, not pushing" + exit 1 + fi + fi +done + +exit 0 diff --git a/contrib/fenrir-git/fenrir/hooks/pre-rebase.sample b/contrib/fenrir-git/fenrir/hooks/pre-rebase.sample new file mode 100755 index 00000000..9773ed4c --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/pre-rebase.sample @@ -0,0 +1,169 @@ +#!/bin/sh +# +# Copyright (c) 2006, 2008 Junio C Hamano +# +# The "pre-rebase" hook is run just before "git rebase" starts doing +# its job, and can prevent the command from running by exiting with +# non-zero status. +# +# The hook is called with the following parameters: +# +# $1 -- the upstream the series was forked from. +# $2 -- the branch being rebased (or empty when rebasing the current branch). +# +# This sample shows how to prevent topic branches that are already +# merged to 'next' branch from getting rebased, because allowing it +# would result in rebasing already published history. + +publish=next +basebranch="$1" +if test "$#" = 2 +then + topic="refs/heads/$2" +else + topic=`git symbolic-ref HEAD` || + exit 0 ;# we do not interrupt rebasing detached HEAD +fi + +case "$topic" in +refs/heads/??/*) + ;; +*) + exit 0 ;# we do not interrupt others. + ;; +esac + +# Now we are dealing with a topic branch being rebased +# on top of master. Is it OK to rebase it? + +# Does the topic really exist? +git show-ref -q "$topic" || { + echo >&2 "No such branch $topic" + exit 1 +} + +# Is topic fully merged to master? +not_in_master=`git rev-list --pretty=oneline ^master "$topic"` +if test -z "$not_in_master" +then + echo >&2 "$topic is fully merged to master; better remove it." + exit 1 ;# we could allow it, but there is no point. +fi + +# Is topic ever merged to next? If so you should not be rebasing it. +only_next_1=`git rev-list ^master "^$topic" ${publish} | sort` +only_next_2=`git rev-list ^master ${publish} | sort` +if test "$only_next_1" = "$only_next_2" +then + not_in_topic=`git rev-list "^$topic" master` + if test -z "$not_in_topic" + then + echo >&2 "$topic is already up-to-date with master" + exit 1 ;# we could allow it, but there is no point. + else + exit 0 + fi +else + not_in_next=`git rev-list --pretty=oneline ^${publish} "$topic"` + /usr/bin/perl -e ' + my $topic = $ARGV[0]; + my $msg = "* $topic has commits already merged to public branch:\n"; + my (%not_in_next) = map { + /^([0-9a-f]+) /; + ($1 => 1); + } split(/\n/, $ARGV[1]); + for my $elem (map { + /^([0-9a-f]+) (.*)$/; + [$1 => $2]; + } split(/\n/, $ARGV[2])) { + if (!exists $not_in_next{$elem->[0]}) { + if ($msg) { + print STDERR $msg; + undef $msg; + } + print STDERR " $elem->[1]\n"; + } + } + ' "$topic" "$not_in_next" "$not_in_master" + exit 1 +fi + +exit 0 + +################################################################ + +This sample hook safeguards topic branches that have been +published from being rewound. + +The workflow assumed here is: + + * Once a topic branch forks from "master", "master" is never + merged into it again (either directly or indirectly). + + * Once a topic branch is fully cooked and merged into "master", + it is deleted. If you need to build on top of it to correct + earlier mistakes, a new topic branch is created by forking at + the tip of the "master". This is not strictly necessary, but + it makes it easier to keep your history simple. + + * Whenever you need to test or publish your changes to topic + branches, merge them into "next" branch. + +The script, being an example, hardcodes the publish branch name +to be "next", but it is trivial to make it configurable via +$GIT_DIR/config mechanism. + +With this workflow, you would want to know: + +(1) ... if a topic branch has ever been merged to "next". Young + topic branches can have stupid mistakes you would rather + clean up before publishing, and things that have not been + merged into other branches can be easily rebased without + affecting other people. But once it is published, you would + not want to rewind it. + +(2) ... if a topic branch has been fully merged to "master". + Then you can delete it. More importantly, you should not + build on top of it -- other people may already want to + change things related to the topic as patches against your + "master", so if you need further changes, it is better to + fork the topic (perhaps with the same name) afresh from the + tip of "master". + +Let's look at this example: + + o---o---o---o---o---o---o---o---o---o "next" + / / / / + / a---a---b A / / + / / / / + / / c---c---c---c B / + / / / \ / + / / / b---b C \ / + / / / / \ / + ---o---o---o---o---o---o---o---o---o---o---o "master" + + +A, B and C are topic branches. + + * A has one fix since it was merged up to "next". + + * B has finished. It has been fully merged up to "master" and "next", + and is ready to be deleted. + + * C has not merged to "next" at all. + +We would want to allow C to be rebased, refuse A, and encourage +B to be deleted. + +To compute (1): + + git rev-list ^master ^topic next + git rev-list ^master next + + if these match, topic has not merged in next at all. + +To compute (2): + + git rev-list master..topic + + if this is empty, it is fully merged to "master". diff --git a/contrib/fenrir-git/fenrir/hooks/pre-receive.sample b/contrib/fenrir-git/fenrir/hooks/pre-receive.sample new file mode 100644 index 00000000..a1fd29ec --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/pre-receive.sample @@ -0,0 +1,24 @@ +#!/bin/sh +# +# An example hook script to make use of push options. +# The example simply echoes all push options that start with 'echoback=' +# and rejects all pushes when the "reject" push option is used. +# +# To enable this hook, rename this file to "pre-receive". + +if test -n "$GIT_PUSH_OPTION_COUNT" +then + i=0 + while test "$i" -lt "$GIT_PUSH_OPTION_COUNT" + do + eval "value=\$GIT_PUSH_OPTION_$i" + case "$value" in + echoback=*) + echo "echo from the pre-receive-hook: ${value#*=}" >&2 + ;; + reject) + exit 1 + esac + i=$((i + 1)) + done +fi diff --git a/contrib/fenrir-git/fenrir/hooks/prepare-commit-msg.sample b/contrib/fenrir-git/fenrir/hooks/prepare-commit-msg.sample new file mode 100755 index 00000000..f093a02e --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/prepare-commit-msg.sample @@ -0,0 +1,36 @@ +#!/bin/sh +# +# An example hook script to prepare the commit log message. +# Called by "git commit" with the name of the file that has the +# commit message, followed by the description of the commit +# message's source. The hook's purpose is to edit the commit +# message file. If the hook fails with a non-zero status, +# the commit is aborted. +# +# To enable this hook, rename this file to "prepare-commit-msg". + +# This hook includes three examples. The first comments out the +# "Conflicts:" part of a merge commit. +# +# The second includes the output of "git diff --name-status -r" +# into the message, just before the "git status" output. It is +# commented because it doesn't cope with --amend or with squashed +# commits. +# +# The third example adds a Signed-off-by line to the message, that can +# still be edited. This is rarely a good idea. + +case "$2,$3" in + merge,) + /usr/bin/perl -i.bak -ne 's/^/# /, s/^# #/#/ if /^Conflicts/ .. /#/; print' "$1" ;; + +# ,|template,) +# /usr/bin/perl -i.bak -pe ' +# print "\n" . `git diff --cached --name-status -r` +# if /^#/ && $first++ == 0' "$1" ;; + + *) ;; +esac + +# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" diff --git a/contrib/fenrir-git/fenrir/hooks/update.sample b/contrib/fenrir-git/fenrir/hooks/update.sample new file mode 100755 index 00000000..80ba9413 --- /dev/null +++ b/contrib/fenrir-git/fenrir/hooks/update.sample @@ -0,0 +1,128 @@ +#!/bin/sh +# +# An example hook script to block unannotated tags from entering. +# Called by "git receive-pack" with arguments: refname sha1-old sha1-new +# +# To enable this hook, rename this file to "update". +# +# Config +# ------ +# hooks.allowunannotated +# This boolean sets whether unannotated tags will be allowed into the +# repository. By default they won't be. +# hooks.allowdeletetag +# This boolean sets whether deleting tags will be allowed in the +# repository. By default they won't be. +# hooks.allowmodifytag +# This boolean sets whether a tag may be modified after creation. By default +# it won't be. +# hooks.allowdeletebranch +# This boolean sets whether deleting branches will be allowed in the +# repository. By default they won't be. +# hooks.denycreatebranch +# This boolean sets whether remotely creating branches will be denied +# in the repository. By default this is allowed. +# + +# --- Command line +refname="$1" +oldrev="$2" +newrev="$3" + +# --- Safety check +if [ -z "$GIT_DIR" ]; then + echo "Don't run this script from the command line." >&2 + echo " (if you want, you could supply GIT_DIR then run" >&2 + echo " $0 )" >&2 + exit 1 +fi + +if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then + echo "usage: $0 " >&2 + exit 1 +fi + +# --- Config +allowunannotated=$(git config --bool hooks.allowunannotated) +allowdeletebranch=$(git config --bool hooks.allowdeletebranch) +denycreatebranch=$(git config --bool hooks.denycreatebranch) +allowdeletetag=$(git config --bool hooks.allowdeletetag) +allowmodifytag=$(git config --bool hooks.allowmodifytag) + +# check for no description +projectdesc=$(sed -e '1q' "$GIT_DIR/description") +case "$projectdesc" in +"Unnamed repository"* | "") + echo "*** Project description file hasn't been set" >&2 + exit 1 + ;; +esac + +# --- Check types +# if $newrev is 0000...0000, it's a commit to delete a ref. +zero="0000000000000000000000000000000000000000" +if [ "$newrev" = "$zero" ]; then + newrev_type=delete +else + newrev_type=$(git cat-file -t $newrev) +fi + +case "$refname","$newrev_type" in + refs/tags/*,commit) + # un-annotated tag + short_refname=${refname##refs/tags/} + if [ "$allowunannotated" != "true" ]; then + echo "*** The un-annotated tag, $short_refname, is not allowed in this repository" >&2 + echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2 + exit 1 + fi + ;; + refs/tags/*,delete) + # delete tag + if [ "$allowdeletetag" != "true" ]; then + echo "*** Deleting a tag is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/tags/*,tag) + # annotated tag + if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1 + then + echo "*** Tag '$refname' already exists." >&2 + echo "*** Modifying a tag is not allowed in this repository." >&2 + exit 1 + fi + ;; + refs/heads/*,commit) + # branch + if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then + echo "*** Creating a branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/heads/*,delete) + # delete branch + if [ "$allowdeletebranch" != "true" ]; then + echo "*** Deleting a branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/remotes/*,commit) + # tracking branch + ;; + refs/remotes/*,delete) + # delete tracking branch + if [ "$allowdeletebranch" != "true" ]; then + echo "*** Deleting a tracking branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + *) + # Anything else (is there anything else?) + echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2 + exit 1 + ;; +esac + +# --- Finished +exit 0 diff --git a/contrib/fenrir-git/fenrir/info/exclude b/contrib/fenrir-git/fenrir/info/exclude new file mode 100644 index 00000000..a5196d1b --- /dev/null +++ b/contrib/fenrir-git/fenrir/info/exclude @@ -0,0 +1,6 @@ +# git ls-files --others --exclude-from=.git/info/exclude +# Lines that start with '#' are comments. +# For a project mostly in C, the following would be a good set of +# exclude patterns (uncomment them if you want to use them): +# *.[oa] +# *~ diff --git a/contrib/fenrir-git/fenrir/objects/pack/pack-14601a33d45312f39922f92e6376f0eeb6212e46.idx b/contrib/fenrir-git/fenrir/objects/pack/pack-14601a33d45312f39922f92e6376f0eeb6212e46.idx new file mode 100644 index 00000000..a5246ffe Binary files /dev/null and b/contrib/fenrir-git/fenrir/objects/pack/pack-14601a33d45312f39922f92e6376f0eeb6212e46.idx differ diff --git a/contrib/fenrir-git/fenrir/objects/pack/pack-14601a33d45312f39922f92e6376f0eeb6212e46.pack b/contrib/fenrir-git/fenrir/objects/pack/pack-14601a33d45312f39922f92e6376f0eeb6212e46.pack new file mode 100644 index 00000000..69be9646 Binary files /dev/null and b/contrib/fenrir-git/fenrir/objects/pack/pack-14601a33d45312f39922f92e6376f0eeb6212e46.pack differ diff --git a/contrib/fenrir-git/fenrir/packed-refs b/contrib/fenrir-git/fenrir/packed-refs new file mode 100644 index 00000000..5a6a5c52 --- /dev/null +++ b/contrib/fenrir-git/fenrir/packed-refs @@ -0,0 +1,11 @@ +# pack-refs with: peeled fully-peeled +ececc5ffb8e4b757948606b5df37873fad345735 refs/heads/inputHandlingRework +6ec714e494427833f92360eef428fb4cede32993 refs/heads/master +00af1314938d46457b57346b28463404918ffdfb refs/heads/path-rework +5fda1b3573a171de7dc53a1d77cbc340b999d2c6 refs/heads/preRewrite +f282593b814141f9b0cc25fcb8a02dfffa97eb70 refs/heads/useFileMagic +0275cd421b9905d0e316c4dd077f6b2113eaccbb refs/pull/1/head +4b4fcb56dbed20801cb47fd82961b1d496f98faf refs/pull/2/head +5fda1b3573a171de7dc53a1d77cbc340b999d2c6 refs/pull/3/head +db6990b719bd2e14c1adb2b47dbe40030f8169a0 refs/pull/4/head +adec95c8c26ca902ec682fd040c11386c85b937f refs/tags/v0.1 diff --git a/contrib/fenrir-git/pkg/fenrir-git/.BUILDINFO b/contrib/fenrir-git/pkg/fenrir-git/.BUILDINFO new file mode 100644 index 00000000..70d50bd0 --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/.BUILDINFO @@ -0,0 +1,1409 @@ +builddir = /home/chrys/Projekte/fenrir/fenrir/contrib/fenrir-git +pkgbuild_sha256sum = d984bbca1495b1de18ae97d86ad19c8bdd809696b6f394828cb2ebc5096dbc08 +buildenv = !distcc +buildenv = color +buildenv = !ccache +buildenv = check +buildenv = !sign +options = strip +options = docs +options = !libtool +options = !staticlibs +options = emptydirs +options = zipman +options = purge +options = !optipng +options = !upx +options = !debug +installed = 0ad-a20-7 +installed = 0ad-data-a20-1 +installed = a52dec-0.7.4-9 +installed = aalib-1.4rc5-12 +installed = abs-2.4.4-2 +installed = accerciser-3.14.0-4 +installed = accountsservice-0.6.42-1 +installed = acl-2.2.52-2 +installed = acpid-2.0.28-1 +installed = adwaita-icon-theme-3.20-2 +installed = aisleriot-3.20.2-1 +installed = alsa-lib-1.1.2-1 +installed = alsa-plugins-1.1.1-1 +installed = alsa-utils-1.1.2-1 +installed = alsaplayer-0.99.81-8 +installed = android-sdk-25.2.2-1 +installed = android-sdk-build-tools-r24.0.3-1 +installed = android-studio-2.1.3.0-1 +installed = android-support-r23.2.1-1 +installed = anjuta-3.20.0-2 +installed = apache-ant-1.9.7-1 +installed = appstream-glib-0.5.17-1 +installed = apr-1.5.2-1 +installed = apr-util-1.5.4-2 +installed = archlinux-appstream-data-20160907-1 +installed = archlinux-keyring-20160812-1 +installed = argyllcms-1.8.3-1 +installed = art-sharp-2.24.2-4 +installed = aspell-0.60.6.1-5 +installed = aspell-de-20151222-1 +installed = aspell-en-2016.06.26-1 +installed = at-spi2-atk-2.20.1-2 +installed = at-spi2-core-2.20.2-1 +installed = atk-2.20.0-1 +installed = atkmm-2.24.2-2 +installed = attica-qt4-0.4.2-3 +installed = attica-qt5-5.26.0-1 +installed = attr-2.4.47-1 +installed = audacious-3.7.2-2 +installed = audacious-plugins-3.7.2-1 +installed = audiofile-0.3.6-3 +installed = augeas-1.5.0-1 +installed = autoconf-2.69-4 +installed = autogen-5.18.10-1 +installed = automake-1.15-2 +installed = avahi-0.6.32-2 +installed = avwow-git-0.1-1 +installed = babl-0.1.18-1 +installed = baobab-3.20.1-2 +installed = bash-4.3.046-1 +installed = bash-completion-2.4-1 +installed = bc-1.06.95-2 +installed = bijiben-3.20.2-1 +installed = bind-tools-9.10.4.P3-1 +installed = binutils-2.27-1 +installed = bison-3.0.4-2 +installed = blas-3.6.1-2 +installed = blender-17:2.78-1 +installed = blosc-1.11.1-1 +installed = bluez-5.42-1 +installed = bluez-libs-5.42-1 +installed = boost-1.59.0-5 +installed = boost-libs-1.59.0-5 +installed = brasero-3.12.1-2 +installed = bridge-utils-1.5-2 +installed = brltty-5.4-2 +installed = btrfs-progs-4.7.3-1 +installed = bzip2-1.0.6-5 +installed = bzr-2.7.0-1 +installed = ca-certificates-20160507-1 +installed = ca-certificates-cacert-20140824-3 +installed = ca-certificates-mozilla-3.26-1 +installed = ca-certificates-utils-20160507-1 +installed = cairo-1.14.6-2 +installed = cairomm-1.12.0-2 +installed = california-git-0.3.0.r21.g77a6f87-1 +installed = cantarell-fonts-1:0.0.25-2 +installed = caribou-0.4.21+0+g36e3d0f-1 +installed = cdparanoia-10.2-5 +installed = cdrdao-1.2.3-9 +installed = cdrkit-1.1.11-3 +installed = celt-0.11.3-2 +installed = celt0.5.1-0.5.1.3-3 +installed = ceph-10.2.2-2 +installed = cheese-3.20.2-1 +installed = chromaprint-1.3.2-1 +installed = cifs-utils-6.5-1 +installed = cinnamon-desktop-3.0.2-1 +installed = cinnamon-translations-3.0.3-1 +installed = clang-3.8.1-1 +installed = clucene-2.3.3.4-9 +installed = clutter-1.26.0-1 +installed = clutter-gst-3.0.20-1 +installed = clutter-gst2-2.0.18-1 +installed = clutter-gtk-1.8.0-1 +installed = cmake-3.6.2-1 +installed = cmus-2.7.1-8 +installed = cogl-1.22.2-1 +installed = coin-or-cbc-2.9.8-3 +installed = coin-or-cgl-0.59.9-4 +installed = coin-or-clp-1.16.10-4 +installed = coin-or-coinutils-2.10.13-4 +installed = coin-or-mp-1.8.3-5 +installed = coin-or-osi-0.107.8-4 +installed = colord-1.3.2-2 +installed = colord-gtk-0.1.26-2 +installed = compositeproto-0.4.2-3 +installed = coreutils-8.25-2 +installed = cracklib-2.9.6-1 +installed = cryptsetup-1.7.2-1 +installed = ctags-5.8-5 +installed = cuneiform-1.1.0-14 +installed = cups-2.2.1-1 +installed = cups-filters-1.11.4-1 +installed = cups-pk-helper-0.2.6-1 +installed = curl-7.50.3-1 +installed = cutegram-2.7.1-3 +installed = cython-0.24.1-1 +installed = damageproto-1.2.1-3 +installed = db-5.3.28-3 +installed = dbus-1.10.10-3 +installed = dbus-glib-0.106-1 +installed = dcadec-0.2.0-1 +installed = dconf-0.26.0-2 +installed = dconf-editor-3.20.3-1 +installed = deja-dup-34.2-2 +installed = desktop-file-utils-0.23-1 +installed = devhelp-3.20.0-2 +installed = device-mapper-2.02.166-1 +installed = devil-1.7.8-22 +installed = dhclient-4.3.4-2 +installed = dhcpcd-6.11.3-1 +installed = dia-0.97.3-3 +installed = dialog-1:1.3_20160828-1 +installed = diffutils-3.5-1 +installed = djvulibre-3.5.27-3 +installed = dleyna-connector-dbus-0.2.0-2 +installed = dleyna-core-0.5.0-1 +installed = dleyna-renderer-0.5.0-1 +installed = dleyna-server-0.5.0-1 +installed = dmxproto-2.3.1-3 +installed = dnsmasq-2.76-2 +installed = dnssec-anchors-20150403-1 +installed = docbook-xml-4.5-6 +installed = docbook-xsl-1.79.1-1 +installed = dosbox-0.74-7 +installed = dosfstools-4.0-3 +installed = dotconf-1.3-4 +installed = downgrade-5.3.0-1 +installed = dunelegacy-0.96.3-2 +installed = duplicity-0.7.09-1 +installed = dvd+rw-tools-7.1-7 +installed = e2fsprogs-1.43.3-1 +installed = ebtables-2.0.10_4-6 +installed = ekiga-4.0.1-20 +installed = elfutils-0.167-1 +installed = elinks-0.13-17 +installed = empathy-3.12.12-1 +installed = enca-1.19-1 +installed = encfs-1.9.1-2 +installed = enchant-1.6.0-8 +installed = enet-1.3.13-1 +installed = eog-3.20.4-1 +installed = epiphany-3.20.3-2 +installed = espeak-1.48.04-2 +installed = espeakup-0.71-8 +installed = evince-3.20.1-2 +installed = evolution-3.20.5-1 +installed = evolution-data-server-3.20.5-1 +installed = exempi-2.3.0-1 +installed = exiv2-0.25-3 +installed = expat-2.2.0-2 +installed = faac-1.28-5 +installed = faad2-2.7-4 +installed = faenza-icon-theme-1.3.1-4 +installed = fail2ban-0.9.5-1 +installed = fakeroot-1.21-2 +installed = farstream-0.2.8-1 +installed = fcgi-2.4.0-12 +installed = fdupes-1:1.6.1-1 +installed = ffmpeg-1:3.1.4-2 +installed = ffmpeg2.8-2.8.7-4 +installed = fftw-3.3.5-1 +installed = file-5.28-1 +installed = file-roller-3.20.3-1 +installed = filesystem-2015.09-1 +installed = findutils-4.6.0-2 +installed = firefox-49.0.1-1 +installed = firefox-i18n-de-49.0.1-1 +installed = five-or-more-3.20.2-1 +installed = fixesproto-5.0-3 +installed = flac-1.3.1-3 +installed = flashplugin-11.2.202.635-1 +installed = flex-2.6.1-1 +installed = fluidsynth-1.1.6-4 +installed = folks-0.11.2-2 +installed = fontconfig-2.12.1-3 +installed = fontsproto-2.1.3-1 +installed = foomatic-db-3:20161005-1 +installed = foomatic-db-engine-4:4.0.12-2 +installed = four-in-a-row-3.20.1-1 +installed = freealut-1.1.0-5 +installed = freeglut-3.0.0-1 +installed = freetype2-2.7-2 +installed = fribidi-0.19.7-1 +installed = fritzing-0.9.3b-3 +installed = fuse-2.9.7-1 +installed = gamin-0.1.10-8 +installed = gawk-4.1.4-1 +installed = gc-7.6.0-1 +installed = gcab-0.7-1 +installed = gcc-libs-multilib-6.2.1-1 +installed = gcc-multilib-6.2.1-1 +installed = gconf-3.2.6-5 +installed = gconf-editor-3.0.1-4 +installed = gconf-sharp-2.24.2-4 +installed = gconf-sharp-peditors-2.24.2-4 +installed = gconfmm-2.28.3-3 +installed = gcr-3.20.0-2 +installed = gd-2.2.3-3 +installed = gdb-7.11.1-2 +installed = gdb-common-7.11.1-2 +installed = gdbm-1.12-2 +installed = gdk-pixbuf2-2.34.0-2 +installed = gdl-3.20.0-1 +installed = gdm-3.20.1-2 +installed = gedit-3.20.2-1 +installed = gegl-0.3.8-1 +installed = gegl02-0.2.0-4 +installed = geoclue2-2.4.4-1 +installed = geocode-glib-3.20.1-2 +installed = geoip-1.6.6-2 +installed = geoip-database-20160907-1 +installed = gettext-0.19.8.1-2 +installed = gfbgraph-0.2.3-1 +installed = ghex-3.18.2-1 +installed = ghostscript-9.20-2 +installed = giflib-5.1.4-1 +installed = gimp-2.8.18-1 +installed = git-2.10.0-1 +installed = gitg-3.20.3-1 +installed = gjs-1.45.4-1 +installed = glade-3.20.0-2 +installed = glew-2.0.0-1 +installed = glib-networking-2.48.2-1 +installed = glib2-2.48.2-1 +installed = glibc-2.24-2 +installed = glibmm-2.48.1-1 +installed = gloox-1.0.14-2 +installed = glpk-4.60-1 +installed = glu-9.0.0-4 +installed = gmime-2.6.20-2 +installed = gmp-6.1.1-1 +installed = gnome-backgrounds-3.20-1 +installed = gnome-bluetooth-3.20.0-1 +installed = gnome-boxes-3.20.2-2 +installed = gnome-builder-3.20.4-2 +installed = gnome-calculator-3.20.2-1 +installed = gnome-chess-3.20.1-1 +installed = gnome-clocks-3.20.2-1 +installed = gnome-color-manager-3.20.0-2 +installed = gnome-contacts-3.20.0-1 +installed = gnome-control-center-3.20.1-2 +installed = gnome-desktop-1:3.20.2-1 +installed = gnome-devel-docs-3.20.2-1 +installed = gnome-dictionary-3.20.0-2 +installed = gnome-disk-utility-3.20.2-1 +installed = gnome-doc-utils-0.20.10-2 +installed = gnome-documents-3.20.1-1 +installed = gnome-font-viewer-3.20.2-1 +installed = gnome-getting-started-docs-3.20.0-1 +installed = gnome-icon-theme-3.12.0-4 +installed = gnome-icon-theme-extras-3.12.0-3 +installed = gnome-icon-theme-symbolic-3.12.0-4 +installed = gnome-keyring-1:3.20.0-2 +installed = gnome-klotski-3.20.2-1 +installed = gnome-logs-3.20.1-2 +installed = gnome-mahjongg-3.20.0-2 +installed = gnome-maps-3.20.3-1 +installed = gnome-menus-3.13.3-2 +installed = gnome-mime-data-2.18.0-7 +installed = gnome-mines-3.20.1-1 +installed = gnome-music-3.20.2-1 +installed = gnome-nettool-3.8.1-3 +installed = gnome-nibbles-3.20.2.1-1 +installed = gnome-online-accounts-3.20.4-1 +installed = gnome-online-miners-3.20.1-1 +installed = gnome-photos-3.20.3-1 +installed = gnome-robots-3.20.2-1 +installed = gnome-screenshot-3.20.1-1 +installed = gnome-session-3.20.2-1 +installed = gnome-session-properties-3.10.0-2 +installed = gnome-settings-daemon-3.20.1+8+g40bf4fd-1 +installed = gnome-sharp-2.24.2-4 +installed = gnome-shell-3.20.4-1 +installed = gnome-shell-extensions-3.20.1-1 +installed = gnome-software-3.20.4-1 +installed = gnome-sound-recorder-3.20.2-1 +installed = gnome-sudoku-3.20.5-1 +installed = gnome-system-log-3.9.90-2 +installed = gnome-system-monitor-3.20.1-2 +installed = gnome-terminal-3.20.2-2 +installed = gnome-tetravex-3.20.0-2 +installed = gnome-themes-standard-3.20.2-1 +installed = gnome-tweak-tool-3.20.1-2 +installed = gnome-user-docs-3.20.2-1 +installed = gnome-vfs-2.24.4-10 +installed = gnome-vfs-sharp-2.24.2-4 +installed = gnome-video-effects-0.4.1-1 +installed = gnome-weather-3.20.2-1 +installed = gnuchess-6.2.3-1 +installed = gnupg-2.1.15-1 +installed = gnutls-3.4.15-1 +installed = gobject-introspection-runtime-1.48.0-1 +installed = godot-2.1-3 +installed = gom-0.3.2-1 +installed = goocanvas-2.0.2-1 +installed = google-chrome-53.0.2785.116-1 +installed = gpart-0.3-1 +installed = gparted-0.26.1-1 +installed = gperftools-2.5-1 +installed = gpgme-1.6.0-3 +installed = gpgmepp-16.08.1-1 +installed = gpm-1.20.7-7 +installed = granatier-16.08.1-1 +installed = graphene-1.4.0-1 +installed = graphite-1:1.3.8-1 +installed = graphviz-2.38.0-14 +installed = grep-2.25-2 +installed = grilo-0.3.2-1 +installed = grilo-plugins-0.3.3-1 +installed = groff-1.22.3-7 +installed = grub-1:2.02.beta3-3 +installed = gsettings-desktop-schemas-3.21.4-1 +installed = gsfonts-20160531-3 +installed = gsl-2.2.1-1 +installed = gsm-1.0.14-1 +installed = gsound-1.0.2-2 +installed = gspell-1.0.3-1 +installed = gssdp-0.14.16-1 +installed = gst-libav-1.8.3-1 +installed = gst-plugins-bad-1.8.3-2 +installed = gst-plugins-base-1.8.3-1 +installed = gst-plugins-base-libs-1.8.3-1 +installed = gst-plugins-good-1.8.3-1 +installed = gst-plugins-ugly-1.8.3-1 +installed = gstreamer-1.8.3-1 +installed = gstreamer-vaapi-1.8.3-1 +installed = gstreamer0.10-0.10.36-4 +installed = gstreamer0.10-base-0.10.36-3 +installed = gtk-engine-murrine-0.98.2-2 +installed = gtk-sharp-2-2.12.29-1 +installed = gtk-update-icon-cache-3.20.9-1 +installed = gtk-vnc-0.6.0-1 +installed = gtk2-2.24.31-1 +installed = gtk3-3.20.9-1 +installed = gtkglext-1.2.0-10 +installed = gtkmm-2.24.4-2 +installed = gtkmm3-3.20.1-1 +installed = gtksourceview3-3.20.4-1 +installed = gtkspell-2.0.16-3 +installed = gtkspell3-3.0.9-1 +installed = gts-0.7.6-3 +installed = gucharmap-9.0.0-1 +installed = guile-2.0.12-1 +installed = gupnp-0.20.18-1 +installed = gupnp-av-0.12.8-1 +installed = gupnp-dlna-0.10.5-1 +installed = gvfs-1.28.3-1 +installed = gvfs-afc-1.28.3-1 +installed = gvfs-goa-1.28.3-1 +installed = gvfs-mtp-1.28.3-1 +installed = gvfs-nfs-1.28.3-1 +installed = gvfs-smb-1.28.3-1 +installed = gzip-1.8-2 +installed = harfbuzz-1.3.1-1 +installed = harfbuzz-icu-1.3.1-1 +installed = hdf5-1.10.0_patch1-1 +installed = hedgewars-0.9.22-7 +installed = hexer-0.2.3-1 +installed = hicolor-icon-theme-0.15-1 +installed = hplip-3.16.9-1 +installed = hspell-1.3-1 +installed = hunspell-1.4.1-1 +installed = hunspell-de-20151222-1 +installed = hunspell-en-2016.06.26-1 +installed = hwids-20160801-1 +installed = hyphen-2.8.8-1 +installed = iagno-3.20.2-1 +installed = iana-etc-20160927-1 +installed = icedtea-web-1.6.2-2 +installed = icu-57.1-1 +installed = idnkit-1.0-3 +installed = ijs-0.35-1 +installed = ilmbase-2.2.0-2 +installed = imagemagick-6.9.6.0-1 +installed = imlib2-1.4.9-1 +installed = inetutils-1.9.4-4 +installed = iniparser-4.0-2 +installed = inkscape-0.91-19 +installed = inotify-tools-3.14-4 +installed = inputproto-2.3.2-1 +installed = intel-tbb-2017_20160916-1 +installed = intltool-0.51.0-1 +installed = iproute2-4.7.0-1 +installed = iptables-1.6.0-1 +installed = iputils-20160308.0db72a4-1 +installed = ipython-5.0.0-2 +installed = irssi-0.8.20-1 +installed = iso-codes-3.69-1 +installed = itstool-2.0.2-1 +installed = iw-4.7-1 +installed = jack-0.124.1-6 +installed = jansson-2.8-1 +installed = jasper-1.900.1-15 +installed = java-atk-wrapper-0.33.2-1 +installed = java-environment-common-2-2 +installed = java-runtime-common-2-2 +installed = jbig2dec-0.13-1 +installed = jdk-8u102-1 +installed = jdk7-openjdk-7.u111_2.6.7-1 +installed = jemalloc-4.2.1-1 +installed = jfsutils-1.1.15-4 +installed = jollacommunicator-2.0-1 +installed = jre7-openjdk-7.u111_2.6.7-1 +installed = jre7-openjdk-headless-7.u111_2.6.7-1 +installed = jre8-openjdk-8.u102-1 +installed = jre8-openjdk-headless-8.u102-1 +installed = js-24.2.0-3 +installed = js17-17.0.0-3 +installed = js185-1.0.0-3 +installed = json-c-0.12.1-1 +installed = json-glib-1.2.2-1 +installed = jsoncpp-1.7.6-1 +installed = jumpnbump-1.60-4 +installed = karchive-5.26.0-1 +installed = kauth-5.26.0-1 +installed = kbd-2.0.3-1 +installed = kbookmarks-5.26.0-1 +installed = kbproto-1.0.7-1 +installed = kcodecs-5.26.0-1 +installed = kcompletion-5.26.0-1 +installed = kconfig-5.26.0-1 +installed = kconfigwidgets-5.26.0-1 +installed = kcoreaddons-5.26.0-2 +installed = kcrash-5.26.0-1 +installed = kdbusaddons-5.26.0-1 +installed = kdebase-runtime-16.08.1-1 +installed = kdeclarative-5.26.0-1 +installed = kded-5.26.0-1 +installed = kdelibs-4.14.24-2 +installed = kdelibs4support-5.26.0-1 +installed = kdepimlibs4-4.14.10-9 +installed = kdnssd-5.26.0-1 +installed = kemoticons-5.26.0-1 +installed = kexec-tools-2.0.12-1 +installed = keyutils-1.5.9-1 +installed = kglobalaccel-5.26.0-1 +installed = kguiaddons-5.26.0-1 +installed = ki18n-5.26.0-1 +installed = kiconthemes-5.26.0-1 +installed = kinit-5.26.0-1 +installed = kio-5.26.0-2 +installed = kitemmodels-5.26.0-1 +installed = kitemviews-5.26.0-1 +installed = kjobwidgets-5.26.0-1 +installed = kmod-23-1 +installed = knewstuff-5.26.0-1 +installed = knotifications-5.26.0-1 +installed = kpackage-5.26.0-1 +installed = kparts-5.26.0-1 +installed = krb5-1.13.4-1 +installed = kservice-5.26.0-1 +installed = ktextwidgets-5.26.0-1 +installed = kunitconversion-5.26.0-1 +installed = kwallet-5.26.0-1 +installed = kwidgetsaddons-5.26.0-1 +installed = kwindowsystem-5.26.0-1 +installed = kxmlgui-5.26.0-1 +installed = lame-3.99.5-3 +installed = lapack-3.6.1-2 +installed = latexila-3.20.0-2 +installed = lcms-1.19-5 +installed = lcms2-2.8-1 +installed = ldb-1.1.27-1 +installed = ldns-1.6.17-4 +installed = leptonica-1.73-1 +installed = less-481-2 +installed = leveldb-1.18-2 +installed = lib32-acl-2.2.52-2 +installed = lib32-alsa-lib-1.1.2-1 +installed = lib32-alsa-plugins-1.1.1-1 +installed = lib32-attr-2.4.47-1 +installed = lib32-bzip2-1.0.6-2 +installed = lib32-dotconf-1.3-3 +installed = lib32-elfutils-0.167-1 +installed = lib32-expat-2.2.0-1 +installed = lib32-flac-1.3.1-2 +installed = lib32-fontconfig-2.12.1-1 +installed = lib32-freetype2-2.7-2 +installed = lib32-gcc-libs-6.2.1-1 +installed = lib32-gettext-0.19.8.1-1 +installed = lib32-giflib-5.1.4-1 +installed = lib32-glib2-2.48.1-1 +installed = lib32-glibc-2.24-2 +installed = lib32-glu-9.0.0-3 +installed = lib32-harfbuzz-1.3.1-1 +installed = lib32-icu-57.1-1 +installed = lib32-json-c-0.12.1-1 +installed = lib32-lcms2-2.8-1 +installed = lib32-libao-1.2.0-1 +installed = lib32-libasyncns-0.8+3+g68cd5af-1 +installed = lib32-libcap-2.25-1 +installed = lib32-libdbus-1.10.10-3 +installed = lib32-libdrm-2.4.71-1 +installed = lib32-libffi-3.2.1-1 +installed = lib32-libgcrypt-1.7.3-1 +installed = lib32-libglvnd-0.1.1-1 +installed = lib32-libgpg-error-1.24-1 +installed = lib32-libice-1.0.9-1 +installed = lib32-libidn-1.33-1 +installed = lib32-libjpeg-turbo-1.5.0-1 +installed = lib32-libjpeg6-turbo-1.5.1-1 +installed = lib32-libltdl-2.4.6-4 +installed = lib32-libnl-3.2.28-1 +installed = lib32-libogg-1.3.2-1 +installed = lib32-libpcap-1.7.4-1 +installed = lib32-libpciaccess-0.13.4-1 +installed = lib32-libpng-1.6.24-1 +installed = lib32-libpng12-1.2.56-4 +installed = lib32-libpulse-9.0-1 +installed = lib32-libsm-1.2.2-1 +installed = lib32-libsndfile-1.0.27-1 +installed = lib32-libstdc++5-3.3.6-7 +installed = lib32-libtiff-4.0.6-2 +installed = lib32-libtxc_dxtn-1.0.1-5 +installed = lib32-libusb-1.0.20-1 +installed = lib32-libvorbis-1.3.5-1 +installed = lib32-libx11-1.6.4-1 +installed = lib32-libxau-1.0.8-1 +installed = lib32-libxcb-1.12-2 +installed = lib32-libxcomposite-0.4.4-2 +installed = lib32-libxcursor-1.1.14-1 +installed = lib32-libxdamage-1.1.4-2 +installed = lib32-libxdmcp-1.1.2-1 +installed = lib32-libxext-1.3.3-1 +installed = lib32-libxfixes-5.0.3-1 +installed = lib32-libxi-1.7.7-1 +installed = lib32-libxinerama-1.1.3-1 +installed = lib32-libxml2-2.9.3-1 +installed = lib32-libxrandr-1.5.1-1 +installed = lib32-libxrender-0.9.10-1 +installed = lib32-libxshmfence-1.2-1 +installed = lib32-libxslt-1.1.29-1 +installed = lib32-libxss-1.2.2-2 +installed = lib32-libxtst-1.2.3-1 +installed = lib32-libxv-1.0.11-1 +installed = lib32-libxxf86vm-1.1.4-1 +installed = lib32-llvm-libs-3.8.1-1 +installed = lib32-mesa-12.0.3-2 +installed = lib32-mpg123-1.23.6-1 +installed = lib32-ncurses-6.0-2 +installed = lib32-nvidia-libgl-370.28-1 +installed = lib32-nvidia-utils-370.28-1 +installed = lib32-ocl-icd-2.2.9-1 +installed = lib32-openal-1.17.2-1 +installed = lib32-pcre-8.39-1 +installed = lib32-readline-6.3.008-2 +installed = lib32-sdl-1.2.15-6 +installed = lib32-speech-dispatcher-0.8-1 +installed = lib32-systemd-231-1 +installed = lib32-util-linux-2.28.2-1 +installed = lib32-wayland-1.12.0-1 +installed = lib32-xz-5.2.2-1 +installed = lib32-zlib-1.2.8-1 +installed = libabw-0.1.1-2 +installed = libaio-0.3.110-1 +installed = libakonadi-qt4-1.13.0-10 +installed = libanjuta-3.20.0-2 +installed = libao-1.2.0-1 +installed = libarchive-3.2.1-2 +installed = libart-lgpl-2.3.21-3 +installed = libass-0.13.3-1 +installed = libassuan-2.4.3-1 +installed = libasyncns-0.8+3+g68cd5af-1 +installed = libatasmart-0.19-3 +installed = libatomic_ops-7.4.4-1 +installed = libavc1394-0.5.4-2 +installed = libbluray-0.9.2-2 +installed = libbonobo-2.32.1-4 +installed = libbonoboui-2.24.5-3 +installed = libbsd-0.8.3-1 +installed = libcaca-0.99.beta19-1 +installed = libcacard-2.5.2-1 +installed = libcanberra-0.30-7 +installed = libcanberra-pulse-0.30-7 +installed = libcap-2.25-1 +installed = libcap-ng-0.7.8-1 +installed = libcddb-1.3.2-4 +installed = libcdio-0.93-4 +installed = libcdio-paranoia-10.2+0.93+1-2 +installed = libcdr-0.1.3-1 +installed = libchamplain-0.12.14-1 +installed = libcmis-0.5.1-3 +installed = libcroco-0.6.11-1 +installed = libcryptui-3.12.2-2 +installed = libcue-2.1.0-1 +installed = libcups-2.2.1-1 +installed = libdaemon-0.14-3 +installed = libdatrie-0.2.10-1 +installed = libdbusmenu-qt4-0.9.3+16.04.20160218-1 +installed = libdbusmenu-qt5-0.9.3+16.04.20160218-1 +installed = libdc1394-2.2.4-1 +installed = libdca-0.0.5-4 +installed = libdiscid-0.6.1-2 +installed = libdmapsharing-2.9.36-1 +installed = libdmx-1.1.3-1 +installed = libdrm-2.4.71-1 +installed = libdv-1.0.0-6 +installed = libdvbpsi-1:1.3.0-1 +installed = libdvdcss-1.4.0-1 +installed = libdvdnav-5.0.3-1 +installed = libdvdread-5.0.4-1 +installed = libe-book-0.1.2-5 +installed = libebml-1.3.4-1 +installed = libedit-20160618_3.1-1 +installed = libelf-0.167-1 +installed = libepoxy-1.3.1-1 +installed = libetonyek-0.1.6-1 +installed = libevdev-1.5.4-1 +installed = libevent-2.0.22-2 +installed = libexif-0.6.21-2 +installed = libexttextcat-3.4.4-1 +installed = libfbclient-2.5.6.27020-1 +installed = libffi-3.2.1-2 +installed = libfontenc-1.1.3-1 +installed = libgames-support-1.0.2-1 +installed = libgcrypt-1.7.3-1 +installed = libgda-5.2.4-3 +installed = libgdata-0.17.5-1 +installed = libgdiplus-4.2-1 +installed = libgdm-3.20.1-2 +installed = libgee-0.18.0-1 +installed = libgexiv2-0.10.3-4 +installed = libgit2-1:0.24.1-1 +installed = libgit2-glib-0.24.4-1 +installed = libglade-2.6.4-5 +installed = libglademm-2.6.7-4 +installed = libglvnd-0.1.1-1 +installed = libgme-0.6.0-5 +installed = libgnome-2.32.1-6 +installed = libgnome-data-2.32.1-6 +installed = libgnome-keyring-3.12.0-2 +installed = libgnome-sharp-2.24.2-4 +installed = libgnomecanvas-2.30.3-3 +installed = libgnomekbd-3.6.0-3 +installed = libgnomeui-2.24.5-2 +installed = libgpg-error-1.24-1 +installed = libgphoto2-2.5.10-2 +installed = libgsf-1.14.40-1 +installed = libgsystem-2015.2-1 +installed = libgtop-2.34.0-2 +installed = libgudev-230-1 +installed = libguess-1.2-1 +installed = libgusb-0.2.9-1 +installed = libgweather-3.20.3-1 +installed = libgxps-0.2.4-1 +installed = libibus-1.5.14-1 +installed = libical-2.0.0-2 +installed = libice-1.0.9-1 +installed = libid3tag-0.15.1b-8 +installed = libidl2-0.8.14-4 +installed = libidn-1.33-1 +installed = libiec61883-1.2.0-4 +installed = libieee1284-0.2.11-5 +installed = libimobiledevice-1.2.0-3 +installed = libinput-1.5.0-1 +installed = libiptcdata-1.0.4-3 +installed = libixion-0.11.1-2 +installed = libjpeg-turbo-1.5.1-1 +installed = libkactivities4-4.13.3-3 +installed = libkate-0.4.1-5 +installed = libkdegames-16.08.1-1 +installed = libksane-16.08.1-1 +installed = libksba-1.3.4-2 +installed = liblangtag-0.5.8-2 +installed = libldap-2.4.44-2 +installed = liblouis-3.0.0-1 +installed = liblqr-0.4.2-1 +installed = libmad-0.15.1b-7 +installed = libmariadbclient-10.1.18-1 +installed = libmatroska-1.4.5-1 +installed = libmediaart-1.9.0-1 +installed = libmikmod-3.3.9-1 +installed = libmm-glib-1.6.2-1 +installed = libmms-0.6.4-1 +installed = libmng-2.0.3-1 +installed = libmnl-1.0.4-1 +installed = libmodplug-0.8.8.5-2 +installed = libmp4v2-2.0.0-4 +installed = libmpc-1.0.3-2 +installed = libmpcdec-1:0.1+r475-1 +installed = libmpeg2-0.5.1-5 +installed = libmspub-0.1.2-5 +installed = libmtp-1.1.12-1 +installed = libmusicbrainz5-5.1.0-2 +installed = libmwaw-0.3.8-1 +installed = libnautilus-extension-3.20.3-1 +installed = libndp-1.6-1 +installed = libnetfilter_conntrack-1.0.6-1 +installed = libnewt-0.52.19-1 +installed = libnfnetlink-1.0.1-2 +installed = libnfs-1.10.0-1 +installed = libnftnl-1.0.6-1 +installed = libnice-0.1.13-1 +installed = libnl-3.2.28-1 +installed = libnm-glib-1.4.2-1 +installed = libnotify-0.7.6-2 +installed = liboauth-1.0.3+9+g11e9461-1 +installed = libodfgen-0.1.6-1 +installed = libofa-0.9.3-6 +installed = libogg-1.3.2-1 +installed = libomxil-bellagio-0.9.3-1 +installed = liborcus-0.11.2-2 +installed = libosinfo-0.3.1-1 +installed = libpagemaker-0.0.3-1 +installed = libpaper-1.1.24-9 +installed = libpcap-1.7.4-1 +installed = libpciaccess-0.13.4-1 +installed = libpeas-1.18.0-2 +installed = libpgm-5.2.122-2 +installed = libphonenumber-7.7.0-1 +installed = libpipeline-1.4.1-1 +installed = libplist-1.12-4 +installed = libpng-1.6.25-1 +installed = libpng12-1.2.56-4 +installed = libproxy-0.4.12-2 +installed = libpst-0.6.67-1 +installed = libpulse-9.0-1 +installed = libpwquality-1.3.0-1 +installed = libqtelegram-ae-3:6.1-2 +installed = libquvi-0.9.4-4 +installed = libquvi-scripts-0.9.20131130-3 +installed = libqzeitgeist-0.8.0-6 +installed = libraw-0.17.2-1 +installed = libraw1394-2.1.2-1 +installed = libreoffice-fresh-5.2.2-1 +installed = libreoffice-fresh-de-5.2.2-1 +installed = librevenge-0.0.4-1 +installed = librsvg-2:2.40.16-1 +installed = librsync-1:1.0.0-1 +installed = libsamplerate-0.1.8-3 +installed = libsasl-2.1.26-8 +installed = libseccomp-2.3.1-1 +installed = libsecret-0.18.5-1 +installed = libshout-1:2.4.1-2 +installed = libsidplay-1.36.59-8 +installed = libsigc++-2.8.0-1 +installed = libsigsegv-2.10-2 +installed = libsm-1.2.2-2 +installed = libsndfile-1.0.27-1 +installed = libsodium-1.0.11-1 +installed = libsoup-2.54.1-1 +installed = libsoxr-0.1.2-1 +installed = libspectre-0.2.8-1 +installed = libspiro-1:0.5.20150702-1 +installed = libspnav-0.2.3-1 +installed = libsrtp-1:1.5.4-1 +installed = libssh-0.7.3-1 +installed = libssh2-1.7.0-2 +installed = libstdc++2.10-glibc2.2_2.95.4-27_i386-0-0 +installed = libstemmer-0+337-2 +installed = libsynctex-2016.41290-6 +installed = libsystemd-231-3 +installed = libtar-1.2.20-2 +installed = libtasn1-4.9-2 +installed = libteam-1.23-1 +installed = libthai-0.1.24-1 +installed = libtheora-1.1.1-3 +installed = libtiff-4.0.6-2 +installed = libtiger-0.3.4-4 +installed = libtirpc-1.0.1-2 +installed = libtool-2.4.6-6 +installed = libtracker-sparql-1.8.0-3 +installed = libtxc_dxtn-1.0.1-6 +installed = libunistring-0.9.6-2 +installed = libunwind-1.1-3 +installed = libupnp-1.6.20-1 +installed = libusb-1.0.20-1 +installed = libusbmuxd-1.0.10-1 +installed = libutempter-1.1.6-2 +installed = libutil-linux-2.28.2-1 +installed = libva-1.7.2-1 +installed = libvdpau-1.1.1-2 +installed = libvirt-2.3.0-1 +installed = libvirt-glib-0.2.3-1 +installed = libvisio-0.1.5-2 +installed = libvisual-0.4.0-6 +installed = libvoikko-4.0.2-1 +installed = libvorbis-1.3.5-1 +installed = libvpx-1.6.0-2 +installed = libwacom-0.22-1 +installed = libwbclient-4.5.0-2 +installed = libwebp-0.5.1-1 +installed = libwmf-0.2.8.4-13 +installed = libwnck3-3.20.1-1 +installed = libwpd-0.10.1-1 +installed = libwpg-0.3.1-1 +installed = libwps-0.4.3-1 +installed = libx11-1.6.4-1 +installed = libx264-2:148.20160920-1 +installed = libx86-1.1-5 +installed = libxau-1.0.8-2 +installed = libxaw-1.0.13-1 +installed = libxcb-1.12-1 +installed = libxcomposite-0.4.4-2 +installed = libxcursor-1.1.14-2 +installed = libxdamage-1.1.4-2 +installed = libxdmcp-1.1.2-1 +installed = libxext-1.3.3-1 +installed = libxfixes-5.0.3-1 +installed = libxfont-1.5.2-1 +installed = libxft-2.3.2-1 +installed = libxi-1.7.7-1 +installed = libxinerama-1.1.3-2 +installed = libxkbcommon-0.6.1-1 +installed = libxkbcommon-x11-0.6.1-1 +installed = libxkbfile-1.0.9-1 +installed = libxklavier-5.4-1 +installed = libxml2-2.9.4+4+g3169602-1 +installed = libxmu-1.1.2-1 +installed = libxpm-3.5.11-1 +installed = libxrandr-1.5.1-1 +installed = libxrender-0.9.10-1 +installed = libxres-1.0.7-1 +installed = libxshmfence-1.2-1 +installed = libxslt-1.1.29-1 +installed = libxss-1.2.2-2 +installed = libxt-1.1.5-1 +installed = libxtst-1.2.3-1 +installed = libxv-1.0.11-1 +installed = libxvmc-1.0.10-1 +installed = libxxf86dga-1.1.4-1 +installed = libxxf86vm-1.1.4-1 +installed = libyaml-0.1.7-1 +installed = libytnef-1.5-4 +installed = libzapojit-0.0.3-2 +installed = licenses-20140629-1 +installed = lightsoff-3.20.0-2 +installed = linux-4.7.6-1 +installed = linux-api-headers-4.7-1 +installed = linux-firmware-20160915.c4c07a8-1 +installed = lios-git-7eeed0be-5 +installed = llvm-libs-3.8.1-1 +installed = log4cplus-1.2.0-3 +installed = log4j-2.3-1 +installed = logrotate-3.10.0-1 +installed = lostlabyrinth-5.3.0-1 +installed = lpsolve-5.5.2.3-1 +installed = lsb-release-1.4-14 +installed = lshw-B.02.18-1 +installed = lua-5.3.3-1 +installed = lua-sdl2-v2.0.3_4.0-1 +installed = lua-socket-20160311-1 +installed = lua51-5.1.5-5 +installed = lua52-5.2.4-1 +installed = lua52-bitop-1.0.2-7 +installed = lua52-expat-1.3.0-3 +installed = lua52-lpeg-1.0.0-1 +installed = lua52-luajson-1.3.3-2 +installed = lua52-socket-20160311-1 +installed = lucene++-3.0.7-7 +installed = lvm2-2.02.166-1 +installed = lz4-131-2 +installed = lzo-2.09-1 +installed = m4-1.4.17-2 +installed = make-4.2.1-1 +installed = man-db-2.7.5-4 +installed = man-pages-4.07-1 +installed = marytts-5.1.2-1 +installed = mbrola-3.0.1h-5 +installed = mbrola-voices-de1-980227-2 +installed = mbrola-voices-de2-990106-4 +installed = mbrola-voices-de3-000307-2 +installed = mbrola-voices-de4-1-1 +installed = mbrola-voices-de5-1-4 +installed = mbrola-voices-de6-1-4 +installed = mbrola-voices-de7-1-1 +installed = mcpp-2.7.2-5 +installed = mdadm-3.4-1 +installed = media-player-info-22-2 +installed = meld-3.16.2-1 +installed = mesa-12.0.3-2 +installed = mime-types-9-1 +installed = miniupnpc-2.0-1 +installed = mjpegtools-2.1.0-3 +installed = mkinitcpio-21-1 +installed = mkinitcpio-busybox-1.24.2-1 +installed = mlocate-0.26-5 +installed = mobile-broadband-provider-info-20151214-1 +installed = mono-4.6.1.3-1 +installed = mono-addins-1.1-1 +installed = monodevelop-5.10.1.6-2 +installed = monodevelop-debugger-gdb-5.0.1-1 +installed = mousetweaks-3.12.0-2 +installed = mozilla-common-1.4-4 +installed = mpfr-3.1.5-1 +installed = mpg123-1.23.6-1 +installed = mps-youtube-0.2.7.1-1 +installed = mpv-1:0.20.0-1 +installed = mtdev-1.1.5-1 +installed = mtools-4.0.18-3 +installed = mumble-1.2.17-1 +installed = mutt-1.7.0-2 +installed = mutter-3.20.3-1 +installed = namcap-3.2.7-1 +installed = nano-2.7.0-1 +installed = nasm-2.11.08-2 +installed = nautilus-3.20.3-1 +installed = nautilus-sendto-3.8.4-2 +installed = ncdu-1.12-1 +installed = ncftp-3.2.5-6 +installed = ncurses-6.0-4 +installed = nemo-3.0.6-1 +installed = neon-0.30.1-2 +installed = net-snmp-5.7.3-3 +installed = netcdf-4.4.1rc1-1 +installed = netcf-0.2.8-3 +installed = netctl-1.12-2 +installed = nettle-3.3-1 +installed = networkmanager-1.4.2-1 +installed = networkmanager-openconnect-1.2.2-1 +installed = networkmanager-openvpn-1.2.6-1 +installed = networkmanager-pptp-1.2.4-1 +installed = nm-connection-editor-1.4.2-1 +installed = nmap-7.30-1 +installed = npth-1.2-1 +installed = nspr-4.12-1 +installed = nss-3.26-1 +installed = ntfs-3g-2016.2.22-1 +installed = ntp-4.2.8.p8-1 +installed = numactl-2.0.11-1 +installed = numix-frost-themes-3.6.2-1 +installed = numix-themes-2.6.4-1 +installed = nvidia-370.28-1 +installed = nvidia-libgl-370.28-1 +installed = nvidia-utils-370.28-1 +installed = ocl-icd-2.2.9-1 +installed = ocrdesktop-1.00-4 +installed = ocrpdf-0.7.0-1 +installed = opal-3.10.11-11 +installed = openal-1.17.2-2 +installed = openbsd-netcat-1.105_7-7 +installed = openclonk-7.0-4 +installed = opencollada-20150702-3 +installed = opencolorio-1.0.9-4 +installed = openconnect-1:7.07-1 +installed = opencore-amr-0.1.3-2 +installed = opencv-3.1.0-3 +installed = opencv-samples-3.1.0-3 +installed = openexr-2.2.0-3 +installed = openimageio-1.6.14-3 +installed = openjpeg-1.5.2-1 +installed = openjpeg2-2.1.2-1 +installed = openobex-1.7.1-1 +installed = openra-20160508-2 +installed = openresolv-3.8.1-1 +installed = openshadinglanguage-1.7.2-3 +installed = openssh-7.3p1-2 +installed = openssl-1.0.2.j-1 +installed = opensubdiv-3.0.5-1 +installed = openvdb-3.1.0-4 +installed = openvpn-2.3.12-1 +installed = opus-1.1.3-2 +installed = opusfile-0.8-1 +installed = orbit2-2.14.19-3 +installed = orc-0.4.26-1 +installed = orca-3.20.2-1 +installed = oxygen-icons-1:5.26.0-1 +installed = p11-kit-0.23.2-1 +installed = package-query-1.8-2 +installed = packagekit-1.1.4-1 +installed = pacman-5.0.1-4 +installed = pacman-mirrorlist-20161005-1 +installed = pam-1.3.0-1 +installed = pambase-20130928-1 +installed = pango-1.40.3-1 +installed = pangomm-2.40.1-1 +installed = pangox-compat-0.0.2-2 +installed = paprefs-0.9.10-6 +installed = parcellite-1.1.9-1 +installed = parted-3.2-4 +installed = patch-2.7.5-1 +installed = pavucontrol-3.0-4 +installed = pcaudiolib-git-4f836ea-1 +installed = pciutils-3.5.1-1 +installed = pcmciautils-018-7 +installed = pcre-8.39-1 +installed = pcsclite-1.8.16-1 +installed = pdfcrack-0.15-1 +installed = perl-5.24.0-2 +installed = perl-clone-0.38-2 +installed = perl-dbi-1.636-2 +installed = perl-error-0.17024-1 +installed = perl-parse-yapp-1.05-6 +installed = perl-xml-libxml-2.0128-1 +installed = perl-xml-namespacesupport-1.11-3 +installed = perl-xml-parser-2.44-3 +installed = perl-xml-sax-0.99-4 +installed = perl-xml-sax-base-1.08-3 +installed = phonon-qt4-4.9.0-1 +installed = phonon-qt4-gstreamer-4.9.0-1 +installed = phonon-qt5-4.9.0-1 +installed = phonon-qt5-gstreamer-4.9.0-1 +installed = physfs-2.0.3-2 +installed = pinentry-0.9.7-3 +installed = pixman-0.34.0-1 +installed = pkcs11-helper-1.11-3 +installed = pkg-config-0.29.1-2 +installed = pkgbuild-introspection-8-1 +installed = poedit-1.8.9-1 +installed = polari-3.20.3-1 +installed = polkit-0.113-4 +installed = polkit-qt4-0.112.0+git20160226-1 +installed = polkit-qt5-0.112.0+git20160226-1 +installed = poppler-0.47.0-1 +installed = poppler-glib-0.47.0-1 +installed = popt-1.16-8 +installed = portaudio-19_20140130-3 +installed = portmidi-217-5 +installed = potrace-1.13-1 +installed = powwow-1.2.17-1 +installed = ppp-2.4.7-2 +installed = pptpclient-1.8.0-2 +installed = procps-ng-3.3.12-1 +installed = protobuf-2.6.1-2 +installed = psmisc-22.21-3 +installed = ptex-2.0.62-2 +installed = ptlib-2.10.11-4 +installed = pulseaudio-9.0-1 +installed = pulseaudio-alsa-2-3 +installed = pulseaudio-bluetooth-9.0-1 +installed = pulseaudio-gconf-9.0-1 +installed = pulseaudio-zeroconf-9.0-1 +installed = pyalpm-0.8-1 +installed = pygobject-devel-3.20.1-1 +installed = pygobject2-devel-2.28.6-12 +installed = pygtk-2.24.0-6 +installed = python-3.5.2-1 +installed = python-appdirs-1.4.0-4 +installed = python-atspi-2.20.2-1 +installed = python-cairo-1.10.0-6 +installed = python-chardet-2.3.0-2 +installed = python-dbus-1.2.4-1 +installed = python-dbus-common-1.2.4-1 +installed = python-decorator-4.0.10-1 +installed = python-espeak-0.5-3 +installed = python-evdev-0.6.1-1 +installed = python-gobject-3.20.1-1 +installed = python-jedi-0.9.0-2 +installed = python-packaging-16.7-1 +installed = python-pafy-0.5.1-2.1 +installed = python-path-8.2.1-1 +installed = python-pexpect-4.2.1-1 +installed = python-pillow-3.4.1-1 +installed = python-prompt_toolkit-1.0.7-1 +installed = python-ptyprocess-0.5.1-1 +installed = python-pycups-1.9.73-2 +installed = python-pycurl-7.43.0-1 +installed = python-pyelftools-0.24-1 +installed = python-pyenchant-1.6.8-1 +installed = python-pygame-1.9.2pre.20141217-1 +installed = python-pygments-2.1.3-1 +installed = python-pyinotify-0.9.6-2 +installed = python-pyinsane-1.3.8-1 +installed = python-pyparsing-2.1.9-1 +installed = python-pysmbc-1.0.15.5-1 +installed = python-requests-2.11.1-1 +installed = python-setuptools-1:28.1.0-1 +installed = python-six-1.10.0-2 +installed = python-systemd-231-1 +installed = python-tesserwrap-0.1.6-2 +installed = python-urllib3-1.18-1 +installed = python-wcwidth-0.1.7-1 +installed = python-xdg-0.25-3 +installed = python2-2.7.12-1 +installed = python2-appdirs-1.4.0-4 +installed = python2-cairo-1.10.0-2 +installed = python2-cffi-1.8.3-1 +installed = python2-cryptography-1.5.2-1 +installed = python2-enum34-1.1.6-1 +installed = python2-gobject-3.20.1-1 +installed = python2-gobject2-2.28.6-12 +installed = python2-idna-2.1-1 +installed = python2-ipaddress-1.0.17-1 +installed = python2-lockfile-0.12.2-1 +installed = python2-packaging-16.7-1 +installed = python2-paramiko-2.0.2-1 +installed = python2-ply-3.9-1 +installed = python2-pyasn1-0.1.9-1 +installed = python2-pycparser-2.14-2 +installed = python2-pyparsing-2.1.9-1 +installed = python2-setuptools-1:28.1.0-1 +installed = python2-six-1.10.0-2 +installed = pythonmagick-0.9.12-3 +installed = qca-qt4-2.1.1-6 +installed = qemu-2.7.0-2 +installed = qjson-0.8.1-5 +installed = qpdf-6.0.0-2 +installed = qqwing-1.3.4-2 +installed = qt-at-spi-0.3.1-4 +installed = qt4-4.8.7-10 +installed = qt5-base-5.7.0-3 +installed = qt5-declarative-5.7.0-3 +installed = qt5-graphicaleffects-5.7.0-1 +installed = qt5-imageformats-5.7.0-1 +installed = qt5-location-5.7.0-1 +installed = qt5-multimedia-5.7.0-1 +installed = qt5-quickcontrols-5.7.0-1 +installed = qt5-quickcontrols2-5.7.0-1 +installed = qt5-script-5.7.0-1 +installed = qt5-sensors-5.7.0-1 +installed = qt5-serialport-5.7.0-1 +installed = qt5-svg-5.7.0-1 +installed = qt5-tools-5.7.0-2 +installed = qt5-webchannel-5.7.0-1 +installed = qt5-webkit-5.7.0-1 +installed = qt5-x11extras-5.7.0-1 +installed = qt5-xmlpatterns-5.7.0-2 +installed = qtcreator-4.1.0-3 +installed = qtwebkit-2.3.4-4 +installed = quadrapassel-3.20.0-2 +installed = radvd-2.15-1 +installed = randrproto-1.5.0-1 +installed = ranger-1.7.2-1 +installed = raptor-2.0.15-4 +installed = rarian-0.8.1-5 +installed = rasqal-1:0.9.33-1 +installed = readline-6.3.008-4 +installed = recode-3.6-9 +installed = recordproto-1.14.2-2 +installed = redland-1:1.0.17-3 +installed = redshift-1.11-3 +installed = redshiftgui-bin-0.2.4-1 +installed = reiserfsprogs-3.6.25-1 +installed = renderproto-0.11.1-3 +installed = rest-0.8.0-1 +installed = rlog-1.4-6 +installed = rsync-3.1.2-1 +installed = rtkit-0.11+6+g417bb7d-1 +installed = rtmpdump-1:2.4.r96.fa8646d-2 +installed = rubberband-1.8.1-3 +installed = run-parts-4.7-1 +installed = rygel-0.30.3-2 +installed = s-nail-14.8.10-1 +installed = samba-4.5.0-2 +installed = sane-1.0.25-1 +installed = sbc-1.3-1 +installed = schroedinger-1.0.11-3 +installed = scons-2.4.1-1 +installed = screen-4.4.0-1 +installed = scrnsaverproto-1.2.2-2 +installed = sdl-1.2.15-7 +installed = sdl2-2.0.4-2 +installed = sdl2_gfx-1:1.0.1-1 +installed = sdl2_image-2.0.1-1 +installed = sdl2_mixer-2.0.1-1 +installed = sdl2_net-1:2.0.1-1 +installed = sdl2_ttf-2.0.14-1 +installed = sdl_gfx-2.0.25-1 +installed = sdl_image-1.2.12-3 +installed = sdl_mixer-1.2.12-4 +installed = sdl_net-1.2.8-2 +installed = sdl_sound-1.0.3-5 +installed = sdl_ttf-2.0.11-3 +installed = seabios-1.9.3-1 +installed = seahorse-3.20.0-2 +installed = seamonkey-2.40-5 +installed = sed-4.2.2-4 +installed = serf-1.3.8-2 +installed = shadow-4.2.1-3 +installed = shared-color-targets-0.1.6-1 +installed = shared-mime-info-1.7-1 +installed = simple-scan-3.20.0-2 +installed = simpleorcapluginsystem-1.00-3 +installed = slang-2.3.0-1 +installed = smbclient-4.5.0-2 +installed = smokinguns-1.1-8 +installed = smokinguns-data-1.1-1 +installed = smpeg-0.4.5-2 +installed = smpeg2-1:2.0.0-2 +installed = snappy-1.1.3-2 +installed = socat-1.7.3.1-2 +installed = solid-5.26.0-1 +installed = sonnet-5.26.0-1 +installed = sound-theme-freedesktop-0.8-2 +installed = soundtouch-1.9.2-1 +installed = sox-14.4.2-1 +installed = spandsp-0.0.6-1 +installed = speakup-utils-3.1.6-3 +installed = speech-dispatcher-0.8.5-1 +installed = speech-dispatcher-ibmtts-0.8-2 +installed = speex-1.2rc2-1 +installed = speexdsp-1.2rc3-2 +installed = spice-0.12.8-1 +installed = spice-glib-0.32-1 +installed = spice-gtk3-0.32-2 +installed = spring-103.0-3 +installed = spring-1944-2.0-2 +installed = sqlite-3.14.2-1 +installed = startup-notification-0.12-4 +installed = steam-1.0.0.52-4 +installed = subversion-1.9.4-1 +installed = sudo-1.8.18-1 +installed = suitesparse-4.5.3-1 +installed = sushi-3.20.0-1 +installed = svox-pico-git-4.4.2_r2.34.g47af76b-1 +installed = swell-foop-3.20.0-2 +installed = swt-4.6-1 +installed = sysfsutils-2.1.0-9 +installed = system-config-printer-1.5.7-2 +installed = systemd-231-3 +installed = systemd-sysvcompat-231-3 +installed = systemd-ui-3-2 +installed = t1lib-5.1.2-5 +installed = taglib-1.11-1 +installed = tali-3.20.0-2 +installed = talloc-2.1.8-1 +installed = tar-1.29-1 +installed = tcl-8.6.6-1 +installed = tdb-1.3.11-1 +installed = teamviewer-11.0.57095-4 +installed = telegramqml-0.9.2-2 +installed = telepathy-farstream-0.6.2-2 +installed = telepathy-glib-0.24.1-1 +installed = telepathy-idle-0.2.0-1 +installed = telepathy-logger-0.8.2-2 +installed = telepathy-mission-control-5.16.4-1 +installed = tesseract-3.04.01-1 +installed = tesseract-data-deu-3.04.00-1 +installed = tesseract-data-eng-3.04.00-1 +installed = tevent-1:0.9.29-2 +installed = texinfo-6.3-1 +installed = texlive-bin-2016.41290-6 +installed = texlive-core-2016.41843-1 +installed = thin-provisioning-tools-0.6.3-1 +installed = thunderbird-45.4.0-1 +installed = thunderbird-i18n-de-45.4.0-1 +installed = tintin-2.01.1-3 +installed = tinyxml2-4.0.1-1 +installed = totem-3.20.1-1 +installed = totem-plparser-3.10.6-1 +installed = tracker-1.8.0-3 +installed = translate-shell-0.9.4-1 +installed = transmission-gtk-2.92-5 +installed = tre-0.8.0-4 +installed = tslib-1.1-1 +installed = ttf-dejavu-2.35-1 +installed = ttf-freefont-20120503-4 +installed = ttf-liberation-2.00.1-6 +installed = ttf-oxygen-1:5.4.3-1 +installed = tzdata-2016g-1 +installed = uchardet-0.0.6-1 +installed = udisks2-2.1.7-1 +installed = unace-2.5-9 +installed = unrar-1:5.4.5-1 +installed = unzip-6.0-12 +installed = upower-0.99.4+12+g402640b-1 +installed = usbmuxd-1.1.0-2 +installed = usbredir-0.7-1 +installed = usbutils-008-1 +installed = util-linux-2.28.2-1 +installed = v4l-utils-1.10.1-1 +installed = vala-0.32.1-1 +installed = valgrind-3.11.0-4 +installed = vamp-plugin-sdk-2.6-1 +installed = vbetool-1.2.2-2 +installed = vde2-2.3.2-8 +installed = vi-1:070224-2 +installed = vid.stab-1.1-1 +installed = videoproto-2.3.3-1 +installed = vim-8.0.0013-1 +installed = vim-runtime-8.0.0013-1 +installed = vino-3.20.2-1 +installed = virglrenderer-0.5.0-1 +installed = vlc-2.2.4-4 +installed = vpnc-0.5.3.svn550-1 +installed = vte-common-0.44.2-1 +installed = vte3-0.44.2-1 +installed = vulscan-2.0-2 +installed = w3m-0.5.3.git20160413-1 +installed = wavpack-4.80.0-1 +installed = wayland-1.12.0-1 +installed = wayland-protocols-1.7-1 +installed = weather-2.1-1 +installed = webkit2gtk-2.12.5-1 +installed = webkitgtk-2.4.11-1 +installed = webrtc-audio-processing-0.3-1 +installed = wesnoth-1.12.6-2 +installed = wesnoth-data-1.12.6-1 +installed = wget-1.18-1 +installed = which-2.21-2 +installed = whois-5.2.12-1 +installed = widelands-18-6 +installed = widelands-data-18-1 +installed = wildmidi-0.4.0-1 +installed = wine-1.9.20-1 +installed = wipe-2.3.1-3 +installed = wireless_tools-30.pre9-1 +installed = wpa_supplicant-1:2.5-3 +installed = wxgtk-3.0.2-5 +installed = x265-2.1-1 +installed = xapian-core-1:1.2.23-1 +installed = xboard-gtk3-git-20150817-1 +installed = xcb-proto-1.12-2 +installed = xcb-util-0.4.0-1 +installed = xcb-util-image-0.4.0-1 +installed = xcb-util-keysyms-0.4.0-1 +installed = xcb-util-wm-0.4.1-1 +installed = xcursor-themes-1.0.4-1 +installed = xdg-user-dirs-0.15-4 +installed = xdg-user-dirs-gtk-0.10-2 +installed = xdg-utils-1.1.1-4 +installed = xdotool-3.20160805.1-1 +installed = xextproto-7.3.0-1 +installed = xf86-input-evdev-2.10.4-1 +installed = xf86-input-libinput-0.20.0-1 +installed = xf86dgaproto-2.1-3 +installed = xf86vidmodeproto-2.3.1-3 +installed = xfsprogs-4.7.0-1 +installed = xine-lib-1.2.6-10 +installed = xineramaproto-1.2.1-3 +installed = xkeyboard-config-2.19-1 +installed = xorg-bdftopcf-1.0.5-1 +installed = xorg-font-util-1.3.1-1 +installed = xorg-font-utils-7.6-4 +installed = xorg-fonts-alias-1.0.3-1 +installed = xorg-fonts-encodings-1.0.4-4 +installed = xorg-fonts-misc-1.0.3-4 +installed = xorg-iceauth-1.0.7-1 +installed = xorg-mkfontdir-1.0.7-2 +installed = xorg-mkfontscale-1.1.2-1 +installed = xorg-server-1.18.4-1 +installed = xorg-server-common-1.18.4-1 +installed = xorg-server-utils-7.6-4 +installed = xorg-server-xwayland-1.18.4-1 +installed = xorg-sessreg-1.1.0-1 +installed = xorg-setxkbmap-1.3.1-1 +installed = xorg-utils-7.6-9 +installed = xorg-xauth-1.0.9-1 +installed = xorg-xbacklight-1.2.1-1 +installed = xorg-xcmsdb-1.0.5-1 +installed = xorg-xdpyinfo-1.3.2-1 +installed = xorg-xdriinfo-1.0.5-1 +installed = xorg-xev-1.2.2-1 +installed = xorg-xgamma-1.0.6-1 +installed = xorg-xhost-1.0.7-1 +installed = xorg-xinit-1.3.4-4 +installed = xorg-xinput-1.6.2-1 +installed = xorg-xkbcomp-1.3.1-1 +installed = xorg-xlsatoms-1.1.2-1 +installed = xorg-xlsclients-1.1.3-1 +installed = xorg-xmodmap-1.0.9-1 +installed = xorg-xprop-1.2.2-1 +installed = xorg-xrandr-1.5.0-1 +installed = xorg-xrdb-1.1.0-2 +installed = xorg-xrefresh-1.0.5-1 +installed = xorg-xset-1.2.3-1 +installed = xorg-xsetroot-1.1.1-2 +installed = xorg-xvinfo-1.1.3-1 +installed = xorg-xwininfo-1.1.3-1 +installed = xproto-7.0.31-1 +installed = xsane-0.999-1 +installed = xvidcore-1.3.4-1 +installed = xz-5.2.2-1 +installed = yad-0.37.0-1 +installed = yajl-2.1.0-1 +installed = yaourt-1.8.1-1 +installed = yelp-3.20.1-1 +installed = yelp-tools-3.18.0-1 +installed = yelp-xsl-3.20.1-1 +installed = youtube-dl-2016.10.07-1 +installed = zeitgeist-0.9.16-1 +installed = zenity-3.20.0-1 +installed = zeromq-4.1.5-1 +installed = zip-3.0-7 +installed = zita-alsa-pcmi-0.2.0-3 +installed = zita-resampler-1.3.0-5 +installed = zlib-1.2.8-4 +installed = zstd-1.1.0-3 +installed = zvbi-0.2.35-1 +installed = zziplib-0.13.62-2 diff --git a/contrib/fenrir-git/pkg/fenrir-git/.INSTALL b/contrib/fenrir-git/pkg/fenrir-git/.INSTALL new file mode 100644 index 00000000..973d87ac --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/.INSTALL @@ -0,0 +1,11 @@ +post_install() { +_alert +} + +_alert() { +cat << EOF +To have fenrir start at boot: +sudo systemctl enable fenrir +EOF +} + diff --git a/contrib/fenrir-git/pkg/fenrir-git/.MTREE b/contrib/fenrir-git/pkg/fenrir-git/.MTREE new file mode 100644 index 00000000..10b9a6ab Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/.MTREE differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/.PKGINFO b/contrib/fenrir-git/pkg/fenrir-git/.PKGINFO new file mode 100644 index 00000000..4f487084 --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/.PKGINFO @@ -0,0 +1,22 @@ +# Generated by makepkg 5.0.1 +# using fakeroot version 1.21 +# Sat Oct 8 20:58:50 UTC 2016 +pkgname = fenrir-git +pkgver = v0.1.7.g6ec714e-1 +pkgdesc = A user space console screen reader written in python3 +url = https://github.com/chrys87/${_pkgname} +builddate = 1475960330 +packager = Unknown Packager +size = 1494016 +arch = any +license = MIT +conflict = fenrir +provides = fenrir +depend = python +depend = python-espeak +depend = python-evdev +optdepend = brltty: For Braille support +optdepend = gstreamer: for soundicons via gstreamer +optdepend = sox: The default sound driver +optdepend = python-enchant: for spell check functionality +makedepend = git diff --git a/contrib/fenrir-git/pkg/fenrir-git/etc/fenrir/keyboard/Readme.md b/contrib/fenrir-git/pkg/fenrir-git/etc/fenrir/keyboard/Readme.md new file mode 100644 index 00000000..d830d2ed --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/etc/fenrir/keyboard/Readme.md @@ -0,0 +1,11 @@ + + + + +0 = key up +1 = key down +2 = key hold + +dict_items([(0, 'KEY_RESERVED'), (1, 'KEY_ESC'), (2, 'KEY_1'), (3, 'KEY_2'), (4, 'KEY_3'), (5, 'KEY_4'), (6, 'KEY_5'), (7, 'KEY_6'), (8, 'KEY_7'), (9, 'KEY_8'), (10, 'KEY_9'), (11, 'KEY_0'), (12, 'KEY_MINUS'), (13, 'KEY_EQUAL'), (14, 'KEY_BACKSPACE'), (15, 'KEY_TAB'), (16, 'KEY_Q'), (17, 'KEY_W'), (18, 'KEY_E'), (19, 'KEY_R'), (20, 'KEY_T'), (21, 'KEY_Y'), (22, 'KEY_U'), (23, 'KEY_I'), (24, 'KEY_O'), (25, 'KEY_P'), (26, 'KEY_LEFTBRACE'), (27, 'KEY_RIGHTBRACE'), (28, 'KEY_ENTER'), (29, 'KEY_LEFTCTRL'), (30, 'KEY_A'), (31, 'KEY_S'), (32, 'KEY_D'), (33, 'KEY_F'), (34, 'KEY_G'), (35, 'KEY_H'), (36, 'KEY_J'), (37, 'KEY_K'), (38, 'KEY_L'), (39, 'KEY_SEMICOLON'), (40, 'KEY_APOSTROPHE'), (41, 'KEY_GRAVE'), (42, 'KEY_LEFTSHIFT'), (43, 'KEY_BACKSLASH'), (44, 'KEY_Z'), (45, 'KEY_X'), (46, 'KEY_C'), (47, 'KEY_V'), (48, 'KEY_B'), (49, 'KEY_ +'), (50, 'KEY_M'), (51, 'KEY_COMMA'), (52, 'KEY_DOT'), (53, 'KEY_SLASH'), (54, 'KEY_RIGHTSHIFT'), (55, 'KEY_KPASTERISK'), (56, 'KEY_LEFTALT'), (57, 'KEY_SPACE'), (58, 'KEY_CAPSLOCK'), (59, 'KEY_F1'), (60, 'KEY_F2'), (61, 'KEY_F3'), (62, 'KEY_F4'), (63, 'KEY_F5'), (64, 'KEY_F6'), (65, 'KEY_F7'), (66, 'KEY_F8'), (67, 'KEY_F9'), (68, 'KEY_F10'), (69, 'KEY_NUMLOCK'), (70, 'KEY_SCROLLLOCK'), (71, 'KEY_KP7'), (72, 'KEY_KP8'), (73, 'KEY_KP9'), (74, 'KEY_KPMINUS'), (75, 'KEY_KP4'), (76, 'KEY_KP5'), (77, 'KEY_KP6'), (78, 'KEY_KPPLUS'), (79, 'KEY_KP1'), (80, 'KEY_KP2'), (81, 'KEY_KP3'), (82, 'KEY_KP0'), (83, 'KEY_KPDOT'), (85, 'KEY_ZENKAKUHANKAKU'), (86, 'KEY_102ND'), (87, 'KEY_F11'), (88, 'KEY_F12'), (89, 'KEY_RO'), (90, 'KEY_KATAKANA'), (91, 'KEY_HIRAGANA'), (92, 'KEY_HENKAN'), (93, 'KEY_KATAKANAHIRAGANA'), (94, 'KEY_MUHENKAN'), (95, 'KEY_KPJPCOMMA'), (96, 'KEY_KPENTER'), (97, 'KEY_RIGHTCTRL'), (98, 'KEY_KPSLASH'), (99, 'KEY_SYSRQ'), (100, 'KEY_RIGHTALT'), (101, 'KEY_LINEFEED'), (102, 'KEY_HOME'), (103, 'KEY_UP'), (104, 'KEY_PAGEUP'), (105, 'KEY_LEFT'), (106, 'KEY_RIGHT'), (107, 'KEY_END'), (108, 'KEY_DOWN'), (109, 'KEY_PAGEDOWN'), (110, 'KEY_INSERT'), (111, 'KEY_DELETE'), (112, 'KEY_MACRO'), (113, ['KEY_MIN_INTERESTING', 'KEY_MUTE']), (114, 'KEY_VOLUMEDOWN'), (115, 'KEY_VOLUMEUP'), (116, 'KEY_POWER'), (117, 'KEY_KPEQUAL'), (118, 'KEY_KPPLUSMINUS'), (119, 'KEY_PAUSE'), (120, 'KEY_SCALE'), (121, 'KEY_KPCOMMA'), (122, ['KEY_HANGEUL', 'KEY_HANGUEL']), (123, 'KEY_HANJA'), (124, 'KEY_YEN'), (125, 'KEY_LEFTMETA'), (126, 'KEY_RIGHTMETA'), (127, 'KEY_COMPOSE'), (128, 'KEY_STOP'), (129, 'KEY_AGAIN'), (130, 'KEY_PROPS'), (131, 'KEY_UNDO'), (132, 'KEY_FRONT'), (133, 'KEY_COPY'), (134, 'KEY_OPEN'), (135, 'KEY_PASTE'), (136, 'KEY_FIND'), (137, 'KEY_CUT'), (138, 'KEY_HELP'), (139, 'KEY_MENU'), (140, 'KEY_CALC'), (141, 'KEY_SETUP'), (142, 'KEY_SLEEP'), (143, 'KEY_WAKEUP'), (144, 'KEY_FILE'), (145, 'KEY_SENDFILE'), (146, 'KEY_DELETEFILE'), (147, 'KEY_XFER'), (148, 'KEY_PROG1'), (149, 'KEY_PROG2'), (150, 'KEY_WWW'), (151, 'KEY_MSDOS'), (152, ['KEY_COFFEE', 'KEY_SCREENLOCK']), (153, ['KEY_DIRECTION', 'KEY_ROTATE_DISPLAY']), (154, 'KEY_CYCLEWINDOWS'), (155, 'KEY_MAIL'), (156, 'KEY_BOOKMARKS'), (157, 'KEY_COMPUTER'), (158, 'KEY_BACK'), (159, 'KEY_FORWARD'), (160, 'KEY_CLOSECD'), (161, 'KEY_EJECTCD'), (162, 'KEY_EJECTCLOSECD'), (163, 'KEY_NEXTSONG'), (164, 'KEY_PLAYPAUSE'), (165, 'KEY_PREVIOUSSONG'), (166, 'KEY_STOPCD'), (167, 'KEY_RECORD'), (168, 'KEY_REWIND'), (169, 'KEY_PHONE'), (170, 'KEY_ISO'), (171, 'KEY_CONFIG'), (172, 'KEY_HOMEPAGE'), (173, 'KEY_REFRESH'), (174, 'KEY_EXIT'), (175, 'KEY_MOVE'), (176, 'KEY_EDIT'), (177, 'KEY_SCROLLUP'), (178, 'KEY_SCROLLDOWN'), (179, 'KEY_KPLEFTPAREN'), (180, 'KEY_KPRIGHTPAREN'), (181, 'KEY_NEW'), (182, 'KEY_REDO'), (183, 'KEY_F13'), (184, 'KEY_F14'), (185, 'KEY_F15'), (186, 'KEY_F16'), (187, 'KEY_F17'), (188, 'KEY_F18'), (189, 'KEY_F19'), (190, 'KEY_F20'), (191, 'KEY_F21'), (192, 'KEY_F22'), (193, 'KEY_F23'), (194, 'KEY_F24'), (200, 'KEY_PLAYCD'), (201, 'KEY_PAUSECD'), (202, 'KEY_PROG3'), (203, 'KEY_PROG4'), (204, 'KEY_DASHBOARD'), (205, 'KEY_SUSPEND'), (206, 'KEY_CLOSE'), (207, 'KEY_PLAY'), (208, 'KEY_FASTFORWARD'), (209, 'KEY_BASSBOOST'), (210, 'KEY_PRINT'), (211, 'KEY_HP'), (212, 'KEY_CAMERA'), (213, 'KEY_SOUND'), (214, 'KEY_QUESTION'), (215, 'KEY_EMAIL'), (216, 'KEY_CHAT'), (217, 'KEY_SEARCH'), (218, 'KEY_CONNECT'), (219, 'KEY_FINANCE'), (220, 'KEY_SPORT'), (221, 'KEY_SHOP'), (222, 'KEY_ALTERASE'), (223, 'KEY_CANCEL'), (224, 'KEY_BRIGHTNESSDOWN'), (225, 'KEY_BRIGHTNESSUP'), (226, 'KEY_MEDIA'), (227, 'KEY_SWITCHVIDEOMODE'), (228, 'KEY_KBDILLUMTOGGLE'), (229, 'KEY_KBDILLUMDOWN'), (230, 'KEY_KBDILLUMUP'), (231, 'KEY_SEND'), (232, 'KEY_REPLY'), (233, 'KEY_FORWARDMAIL'), (234, 'KEY_SAVE'), (235, 'KEY_DOCUMENTS'), (236, 'KEY_BATTERY'), (237, 'KEY_BLUETOOTH'), (238, 'KEY_WLAN'), (239, 'KEY_UWB'), (240, 'KEY_UNKNOWN'), (241, 'KEY_VIDEO_NEXT'), (242, 'KEY_VIDEO_PREV'), (243, 'KEY_BRIGHTNESS_CYCLE'), (244, ['KEY_BRIGHTNESS_AUTO', 'KEY_BRIGHTNESS_ZERO']), (245, 'KEY_DISPLAY_OFF'), (246, ['KEY_WIMAX', 'KEY_WWAN']), (247, 'KEY_RFKILL'), (248, 'KEY_MICMUTE'), (256, ['BTN_0', 'BTN_MISC']), (257, 'BTN_1'), (258, 'BTN_2'), (259, 'BTN_3'), (260, 'BTN_4'), (261, 'BTN_5'), (262, 'BTN_6'), (263, 'BTN_7'), (264, 'BTN_8'), (265, 'BTN_9'), (272, ['BTN_LEFT', 'BTN_MOUSE']), (273, 'BTN_RIGHT'), (274, 'BTN_MIDDLE'), (275, 'BTN_SIDE'), (276, 'BTN_EXTRA'), (277, 'BTN_FORWARD'), (278, 'BTN_BACK'), (279, 'BTN_TASK'), (288, ['BTN_JOYSTICK', 'BTN_TRIGGER']), (289, 'BTN_THUMB'), (290, 'BTN_THUMB2'), (291, 'BTN_TOP'), (292, 'BTN_TOP2'), (293, 'BTN_PINKIE'), (294, 'BTN_BASE'), (295, 'BTN_BASE2'), (296, 'BTN_BASE3'), (297, 'BTN_BASE4'), (298, 'BTN_BASE5'), (299, 'BTN_BASE6'), (303, 'BTN_DEAD'), (304, ['BTN_A', 'BTN_GAMEPAD', 'BTN_SOUTH']), (305, ['BTN_B', 'BTN_EAST']), (306, 'BTN_C'), (307, ['BTN_NORTH', 'BTN_X']), (308, ['BTN_WEST', 'BTN_Y']), (309, 'BTN_Z'), (310, 'BTN_TL'), (311, 'BTN_TR'), (312, 'BTN_TL2'), (313, 'BTN_TR2'), (314, 'BTN_SELECT'), (315, 'BTN_START'), (316, 'BTN_MODE'), (317, 'BTN_THUMBL'), (318, 'BTN_THUMBR'), (320, ['BTN_DIGI', 'BTN_TOOL_PEN']), (321, 'BTN_TOOL_RUBBER'), (322, 'BTN_TOOL_BRUSH'), (323, 'BTN_TOOL_PENCIL'), (324, 'BTN_TOOL_AIRBRUSH'), (325, 'BTN_TOOL_FINGER'), (326, 'BTN_TOOL_MOUSE'), (327, 'BTN_TOOL_LENS'), (328, 'BTN_TOOL_QUINTTAP'), (330, 'BTN_TOUCH'), (331, 'BTN_STYLUS'), (332, 'BTN_STYLUS2'), (333, 'BTN_TOOL_DOUBLETAP'), (334, 'BTN_TOOL_TRIPLETAP'), (335, 'BTN_TOOL_QUADTAP'), (336, ['BTN_GEAR_DOWN', 'BTN_WHEEL']), (337, 'BTN_GEAR_UP'), (352, 'KEY_OK'), (353, 'KEY_SELECT'), (354, 'KEY_GOTO'), (355, 'KEY_CLEAR'), (356, 'KEY_POWER2'), (357, 'KEY_OPTION'), (358, 'KEY_INFO'), (359, 'KEY_TIME'), (360, 'KEY_VENDOR'), (361, 'KEY_ARCHIVE'), (362, 'KEY_PROGRAM'), (363, 'KEY_CHANNEL'), (364, 'KEY_FAVORITES'), (365, 'KEY_EPG'), (366, 'KEY_PVR'), (367, 'KEY_MHP'), (368, 'KEY_LANGUAGE'), (369, 'KEY_TITLE'), (370, 'KEY_SUBTITLE'), (371, 'KEY_ANGLE'), (372, 'KEY_ZOOM'), (373, 'KEY_MODE'), (374, 'KEY_KEYBOARD'), (375, 'KEY_SCREEN'), (376, 'KEY_PC'), (377, 'KEY_TV'), (378, 'KEY_TV2'), (379, 'KEY_VCR'), (380, 'KEY_VCR2'), (381, 'KEY_SAT'), (382, 'KEY_SAT2'), (383, 'KEY_CD'), (384, 'KEY_TAPE'), (385, 'KEY_RADIO'), (386, 'KEY_TUNER'), (387, 'KEY_PLAYER'), (388, 'KEY_TEXT'), (389, 'KEY_DVD'), (390, 'KEY_AUX'), (391, 'KEY_MP3'), (392, 'KEY_AUDIO'), (393, 'KEY_VIDEO'), (394, 'KEY_DIRECTORY'), (395, 'KEY_LIST'), (396, 'KEY_MEMO'), (397, 'KEY_CALENDAR'), (398, 'KEY_RED'), (399, 'KEY_GREEN'), (400, 'KEY_YELLOW'), (401, 'KEY_BLUE'), (402, 'KEY_CHANNELUP'), (403, 'KEY_CHANNELDOWN'), (404, 'KEY_FIRST'), (405, 'KEY_LAST'), (406, 'KEY_AB'), (407, 'KEY_NEXT'), (408, 'KEY_RESTART'), (409, 'KEY_SLOW'), (410, 'KEY_SHUFFLE'), (411, 'KEY_BREAK'), (412, 'KEY_PREVIOUS'), (413, 'KEY_DIGITS'), (414, 'KEY_TEEN'), (415, 'KEY_TWEN'), (416, 'KEY_VIDEOPHONE'), (417, 'KEY_GAMES'), (418, 'KEY_ZOOMIN'), (419, 'KEY_ZOOMOUT'), (420, 'KEY_ZOOMRESET'), (421, 'KEY_WORDPROCESSOR'), (422, 'KEY_EDITOR'), (423, 'KEY_SPREADSHEET'), (424, 'KEY_GRAPHICSEDITOR'), (425, 'KEY_PRESENTATION'), (426, 'KEY_DATABASE'), (427, 'KEY_NEWS'), (428, 'KEY_VOICEMAIL'), (429, 'KEY_ADDRESSBOOK'), (430, 'KEY_MESSENGER'), (431, ['KEY_BRIGHTNESS_TOGGLE', 'KEY_DISPLAYTOGGLE']), (432, 'KEY_SPELLCHECK'), (433, 'KEY_LOGOFF'), (434, 'KEY_DOLLAR'), (435, 'KEY_EURO'), (436, 'KEY_FRAMEBACK'), (437, 'KEY_FRAMEFORWARD'), (438, 'KEY_CONTEXT_MENU'), (439, 'KEY_MEDIA_REPEAT'), (440, 'KEY_10CHANNELSUP'), (441, 'KEY_10CHANNELSDOWN'), (442, 'KEY_IMAGES'), (448, 'KEY_DEL_EOL'), (449, 'KEY_DEL_EOS'), (450, 'KEY_INS_LINE'), (451, 'KEY_DEL_LINE'), (464, 'KEY_FN'), (465, 'KEY_FN_ESC'), (466, 'KEY_FN_F1'), (467, 'KEY_FN_F2'), (468, 'KEY_FN_F3'), (469, 'KEY_FN_F4'), (470, 'KEY_FN_F5'), (471, 'KEY_FN_F6'), (472, 'KEY_FN_F7'), (473, 'KEY_FN_F8'), (474, 'KEY_FN_F9'), (475, 'KEY_FN_F10'), (476, 'KEY_FN_F11'), (477, 'KEY_FN_F12'), (478, 'KEY_FN_1'), (479, 'KEY_FN_2'), (480, 'KEY_FN_D'), (481, 'KEY_FN_E'), (482, 'KEY_FN_F'), (483, 'KEY_FN_S'), (484, 'KEY_FN_B'), (497, 'KEY_BRL_DOT1'), (498, 'KEY_BRL_DOT2'), (499, 'KEY_BRL_DOT3'), (500, 'KEY_BRL_DOT4'), (501, 'KEY_BRL_DOT5'), (502, 'KEY_BRL_DOT6'), (503, 'KEY_BRL_DOT7'), (504, 'KEY_BRL_DOT8'), (505, 'KEY_BRL_DOT9'), (506, 'KEY_BRL_DOT10'), (512, 'KEY_NUMERIC_0'), (513, 'KEY_NUMERIC_1'), (514, 'KEY_NUMERIC_2'), (515, 'KEY_NUMERIC_3'), (516, 'KEY_NUMERIC_4'), (517, 'KEY_NUMERIC_5'), (518, 'KEY_NUMERIC_6'), (519, 'KEY_NUMERIC_7'), (520, 'KEY_NUMERIC_8'), (521, 'KEY_NUMERIC_9'), (522, 'KEY_NUMERIC_STAR'), (523, 'KEY_NUMERIC_POUND'), (524, 'KEY_NUMERIC_A'), (525, 'KEY_NUMERIC_B'), (526, 'KEY_NUMERIC_C'), (527, 'KEY_NUMERIC_D'), (528, 'KEY_CAMERA_FOCUS'), (529, 'KEY_WPS_BUTTON'), (530, 'KEY_TOUCHPAD_TOGGLE'), (531, 'KEY_TOUCHPAD_ON'), (532, 'KEY_TOUCHPAD_OFF'), (533, 'KEY_CAMERA_ZOOMIN'), (534, 'KEY_CAMERA_ZOOMOUT'), (535, 'KEY_CAMERA_UP'), (536, 'KEY_CAMERA_DOWN'), (537, 'KEY_CAMERA_LEFT'), (538, 'KEY_CAMERA_RIGHT'), (539, 'KEY_ATTENDANT_ON'), (540, 'KEY_ATTENDANT_OFF'), (541, 'KEY_ATTENDANT_TOGGLE'), (542, 'KEY_LIGHTS_TOGGLE'), (544, 'BTN_DPAD_UP'), (545, 'BTN_DPAD_DOWN'), (546, 'BTN_DPAD_LEFT'), (547, 'BTN_DPAD_RIGHT'), (560, 'KEY_ALS_TOGGLE'), (576, 'KEY_BUTTONCONFIG'), (577, 'KEY_TASKMANAGER'), (578, 'KEY_JOURNAL'), (579, 'KEY_CONTROLPANEL'), (580, 'KEY_APPSELECT'), (581, 'KEY_SCREENSAVER'), (582, 'KEY_VOICECOMMAND'), (592, 'KEY_BRIGHTNESS_MIN'), (593, 'KEY_BRIGHTNESS_MAX'), (608, 'KEY_KBDINPUTASSIST_PREV'), (609, 'KEY_KBDINPUTASSIST_NEXT'), (610, 'KEY_KBDINPUTASSIST_PREVGROUP'), (611, 'KEY_KBDINPUTASSIST_NEXTGROUP'), (612, 'KEY_KBDINPUTASSIST_ACCEPT'), (613, 'KEY_KBDINPUTASSIST_CANCEL'), (704, ['BTN_TRIGGER_HAPPY', 'BTN_TRIGGER_HAPPY1']), (705, 'BTN_TRIGGER_HAPPY2'), (706, 'BTN_TRIGGER_HAPPY3'), (707, 'BTN_TRIGGER_HAPPY4'), (708, 'BTN_TRIGGER_HAPPY5'), (709, 'BTN_TRIGGER_HAPPY6'), (710, 'BTN_TRIGGER_HAPPY7'), (711, 'BTN_TRIGGER_HAPPY8'), (712, 'BTN_TRIGGER_HAPPY9'), (713, 'BTN_TRIGGER_HAPPY10'), (714, 'BTN_TRIGGER_HAPPY11'), (715, 'BTN_TRIGGER_HAPPY12'), (716, 'BTN_TRIGGER_HAPPY13'), (717, 'BTN_TRIGGER_HAPPY14'), (718, 'BTN_TRIGGER_HAPPY15'), (719, 'BTN_TRIGGER_HAPPY16'), (720, 'BTN_TRIGGER_HAPPY17'), (721, 'BTN_TRIGGER_HAPPY18'), (722, 'BTN_TRIGGER_HAPPY19'), (723, 'BTN_TRIGGER_HAPPY20'), (724, 'BTN_TRIGGER_HAPPY21'), (725, 'BTN_TRIGGER_HAPPY22'), (726, 'BTN_TRIGGER_HAPPY23'), (727, 'BTN_TRIGGER_HAPPY24'), (728, 'BTN_TRIGGER_HAPPY25'), (729, 'BTN_TRIGGER_HAPPY26'), (730, 'BTN_TRIGGER_HAPPY27'), (731, 'BTN_TRIGGER_HAPPY28'), (732, 'BTN_TRIGGER_HAPPY29'), (733, 'BTN_TRIGGER_HAPPY30'), (734, 'BTN_TRIGGER_HAPPY31'), (735, 'BTN_TRIGGER_HAPPY32'), (736, 'BTN_TRIGGER_HAPPY33'), (737, 'BTN_TRIGGER_HAPPY34'), (738, 'BTN_TRIGGER_HAPPY35'), (739, 'BTN_TRIGGER_HAPPY36'), (740, 'BTN_TRIGGER_HAPPY37'), (741, 'BTN_TRIGGER_HAPPY38'), (742, 'BTN_TRIGGER_HAPPY39'), (743, 'BTN_TRIGGER_HAPPY40')]) + diff --git a/contrib/fenrir-git/pkg/fenrir-git/etc/fenrir/keyboard/desktop.conf b/contrib/fenrir-git/pkg/fenrir-git/etc/fenrir/keyboard/desktop.conf new file mode 100644 index 00000000..d5fe4d40 --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/etc/fenrir/keyboard/desktop.conf @@ -0,0 +1,96 @@ +KEY_FENRIR,KEY_H=toggle_tutorial_mode +KEY_CTRL=shut_up +KEY_FENRIR,KEY_KP9=review_bottom +KEY_FENRIR,KEY_KP7=review_top +KEY_KP8=review_curr_line +KEY_KP7=review_prev_line +KEY_KP9=review_next_line +KEY_FENRIR,KEY_KP4=review_line_begin +KEY_FENRIR,KEY_KP6=review_line_end +KEY_FENRIR,KEY_KP1=review_line_first_char +KEY_FENRIR,KEY_KP3=review_line_last_char +KEY_FENRIR,KEY_ALT,KEY_1=present_first_line +KEY_FENRIR,KEY_ALT,KEY_2=present_last_line +KEY_KP5=review_curr_word +KEY_KP4=review_prev_word +KEY_KP6=review_next_word +KEY_SHIFT,KEY_KP5=curr_word_phonetic +KEY_KP2=review_curr_char +KEY_KP1=review_prev_char +KEY_KP3=review_next_char +KEY_SHIFT,KEY_KP2=curr_char_phonetic +#=review_up +#=review_down +KEY_KPDOT=cursor_position +KEY_FENRIR,KEY_I=indent_curr_line +KEY_FENRIR,KEY_KPDOT=exit_review +KEY_FENRIR,KEY_KP5=curr_screen +KEY_FENRIR,KEY_KP8=curr_screen_before_cursor +KEY_FENRIR,KEY_KP2=curr_screen_after_cursor +KEY_FENRIR,KEY_CTRL,KEY_1=clear_bookmark_1 +KEY_FENRIR,KEY_SHIFT,KEY_1=set_bookmark_1 +KEY_FENRIR,KEY_1=bookmark_1 +KEY_FENRIR,KEY_CTRL,KEY_2=clear_bookmark_2 +KEY_FENRIR,KEY_SHIFT,KEY_2=set_bookmark_2 +KEY_FENRIR,KEY_2=bookmark_2 +KEY_FENRIR,KEY_CTRL,KEY_3=clear_bookmark_3 +KEY_FENRIR,KEY_SHIFT,KEY_3=set_bookmark_3 +KEY_FENRIR,KEY_3=bookmark_3 +KEY_FENRIR,KEY_CTRL,KEY_4=clear_bookmark_4 +KEY_FENRIR,KEY_SHIFT,KEY_4=set_bookmark_4 +KEY_FENRIR,KEY_4=bookmark_4 +KEY_FENRIR,KEY_CTRL,KEY_5=clear_bookmark_5 +KEY_FENRIR,KEY_SHIFT,KEY_5=set_bookmark_5 +KEY_FENRIR,KEY_5=bookmark_5 +KEY_FENRIR,KEY_CTRL,KEY_6=clear_bookmark_6 +KEY_FENRIR,KEY_SHIFT,KEY_6=set_bookmark_6 +KEY_FENRIR,KEY_6=bookmark_6 +KEY_FENRIR,KEY_CTRL,KEY_7=clear_bookmark_7 +KEY_FENRIR,KEY_SHIFT,KEY_7=set_bookmark_7 +KEY_FENRIR,KEY_7=bookmark_7 +KEY_FENRIR,KEY_CTRL,KEY_8=clear_bookmark_8 +KEY_FENRIR,KEY_SHIFT,KEY_8=set_bookmark_8 +KEY_FENRIR,KEY_8=bookmark_8 +KEY_FENRIR,KEY_CTRL,KEY_9=clear_bookmark_9 +KEY_FENRIR,KEY_SHIFT,KEY_9=set_bookmark_9 +KEY_FENRIR,KEY_9=bookmark_9 +KEY_FENRIR,KEY_CTRL,KEY_0=clear_bookmark_10 +KEY_FENRIR,KEY_SHIFT,KEY_0=set_bookmark_10 +KEY_FENRIR,KEY_0=bookmark_10 +KEY_FENRIR,KEY_KPSLASH=set_window_application +2,KEY_FENRIR,KEY_KPSLASH=clear_window_application +KEY_KPPLUS=last_incoming +KEY_FENRIR,KEY_F2=toggle_braille +KEY_FENRIR,KEY_F3=toggle_sound +KEY_FENRIR,KEY_F4=toggle_speech +KEY_FENRIR,KEY_CTRL,KEY_P=toggle_punctuation_level +KEY_FENRIR,KEY_RIGHTBRACE=toggle_auto_spell_check +KEY_FENRIR,KEY_BACKSLASH=toggle_output +key_FENRIR,KEY_KPENTER=toggle_auto_read +KEY_FENRIR,KEY_Q=quit_fenrir +KEY_FENRIR,KEY_T=time +2,KEY_FENRIR,KEY_T=date +KEY_FENRIR,KEY_S=spell_check +2,KEY_FENRIR,KEY_S=add_word_to_spell_check +KEY_FENRIR,KEY_SHIFT,KEY_S=remove_word_from_spell_check +KEY_FENRIR,KEY_BACKSPACE=forward_keypress +KEY_FENRIR,KEY_UP=inc_speech_volume +KEY_FENRIR,KEY_DOWN=dec_speech_volume +KEY_FENRIR,KEY_RIGHT=inc_speech_rate +KEY_FENRIR,KEY_LEFT=dec_speech_rate +KEY_FENRIR,KEY_ALT,KEY_RIGHT=inc_speech_pitch +KEY_FENRIR,KEY_ALT,KEY_LEFT=dec_speech_pitch +KEY_FENRIR,KEY_ALT,KEY_UP=inc_sound_volume +KEY_FENRIR,KEY_ALT,KEY_DOWN=dec_sound_volume +KEY_FENRIR,KEY_CTRL,KEY_SHIFT,KEY_C=clear_clipboard +KEY_FENRIR,KEY_CTRL,KEY_SHIFT,KEY_X=remove_marks +KEY_FENRIR,KEY_HOME=first_clipboard +KEY_FENRIR,KEY_END=last_clipboard +KEY_FENRIR,KEY_PAGEUP=prev_clipboard +KEY_FENRIR,KEY_PAGEDOWN=next_clipboard +KEY_FENRIR,KEY_SHIFT,KEY_C=curr_clipboard +KEY_FENRIR,KEY_X=set_mark +KEY_FENRIR,KEY_SHIFT,KEY_X=marked_text +KEY_FENRIR,KEY_C=copy_marked_to_clipboard +# linux only +KEY_FENRIR,KEY_V=linux_paste_clipboard diff --git a/contrib/fenrir-git/pkg/fenrir-git/etc/fenrir/keyboard/laptop.conf b/contrib/fenrir-git/pkg/fenrir-git/etc/fenrir/keyboard/laptop.conf new file mode 100644 index 00000000..d85e04f7 --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/etc/fenrir/keyboard/laptop.conf @@ -0,0 +1,96 @@ +KEY_FENRIR,KEY_H=toggle_tutorial_mode +KEY_CTRL=shut_up +KEY_FENRIR,KEY_SHIFT,KEY_O=review_bottom +KEY_FENRIR,KEY_SHIFT,KEY_U=review_top +KEY_FENRIR,KEY_I=review_curr_line +KEY_FENRIR,KEY_U=review_prev_line +KEY_FENRIR,KEY_O=review_next_line +KEY_FENRIR,KEY_SHIFT,KEY_J=review_line_begin +KEY_FENRIR,KEY_SHFIT,KEY_L=review_line_end +KEY_FENRIR,KEY_CTRL,KEY_J=review_line_first_char +KEY_FENRIR,KEY_CTRL,KEY_L=review_line_last_char +KEY_FENRIR,KEY_ALT,KEY_1=present_first_line +KEY_FENRIR,KEY_ALT,KEY_2=present_last_line +KEY_FENRIR,KEY_K=review_curr_word +KEY_FENRIR,KEY_J=review_prev_word +KEY_FENRIR,KEY_L=review_next_word +2,KEY_FENRIR,KEY_K=curr_word_phonetic +KEY_FENRIR,KEY_COMMA=review_curr_char +KEY_FENRIR,KEY_M=review_prev_char +KEY_FENRIR,KEY_DOT=review_next_char +2,KEY_FENRIR,KEY_COMMA=curr_char_phonetic +#=review_up +#=review_down +KEY_FENRIR,KEY_SLASH=exit_review +KEY_FENRIR,KEY_SHIFT,KEY_DOT=cursor_position +KEY_FENRIR,KEY_SHIFT,KEY_K=curr_screen +KEY_FENRIR,KEY_SHIFT,KEY_I=curr_screen_before_cursor +KEY_FENRIR,KEY_SHIFT,KEY_COMMA=curr_screen_after_cursor +KEY_FENRIR,KEY_CTRL,KEY_1=clear_bookmark_1 +KEY_FENRIR,KEY_SHIFT,KEY_1=set_bookmark_1 +KEY_FENRIR,KEY_1=bookmark_1 +KEY_FENRIR,KEY_CTRL,KEY_2=clear_bookmark_2 +KEY_FENRIR,KEY_SHIFT,KEY_2=set_bookmark_2 +KEY_FENRIR,KEY_2=bookmark_2 +KEY_FENRIR,KEY_CTRL,KEY_3=clear_bookmark_3 +KEY_FENRIR,KEY_SHIFT,KEY_3=set_bookmark_3 +KEY_FENRIR,KEY_3=bookmark_3 +KEY_FENRIR,KEY_CTRL,KEY_4=clear_bookmark_4 +KEY_FENRIR,KEY_SHIFT,KEY_4=set_bookmark_4 +KEY_FENRIR,KEY_4=bookmark_4 +KEY_FENRIR,KEY_CTRL,KEY_5=clear_bookmark_5 +KEY_FENRIR,KEY_SHIFT,KEY_5=set_bookmark_5 +KEY_FENRIR,KEY_5=bookmark_5 +KEY_FENRIR,KEY_CTRL,KEY_6=clear_bookmark_6 +KEY_FENRIR,KEY_SHIFT,KEY_6=set_bookmark_6 +KEY_FENRIR,KEY_6=bookmark_6 +KEY_FENRIR,KEY_CTRL,KEY_7=clear_bookmark_7 +KEY_FENRIR,KEY_SHIFT,KEY_7=set_bookmark_7 +KEY_FENRIR,KEY_7=bookmark_7 +KEY_FENRIR,KEY_CTRL,KEY_8=clear_bookmark_8 +KEY_FENRIR,KEY_SHIFT,KEY_8=set_bookmark_8 +KEY_FENRIR,KEY_8=bookmark_8 +KEY_FENRIR,KEY_CTRL,KEY_9=clear_bookmark_9 +KEY_FENRIR,KEY_SHIFT,KEY_9=set_bookmark_9 +KEY_FENRIR,KEY_9=bookmark_9 +KEY_FENRIR,KEY_CTRL,KEY_0=clear_bookmark_10 +KEY_FENRIR,KEY_SHIFT,KEY_0=set_bookmark_10 +KEY_FENRIR,KEY_0=bookmark_10 +KEY_FENRIR,KEY_CTRL,KEY_8=set_window_application +2,KEY_FENRIR,KEY_CTRL,KEY_8=clear_window_application +2,KEY_FENRIR,KEY_I=indent_curr_line +KEY_FENRIR,KEY_SEMICOLON=last_incoming +KEY_FENRIR,KEY_F2=toggle_braille +KEY_FENRIR,KEY_F3=toggle_sound +KEY_FENRIR,KEY_F4=toggle_speech +KEY_FENRIR,KEY_SHIFT,KEY_CTRL,KEY_P=toggle_punctuation_level +KEY_FENRIR,KEY_RIGHTBRACE=toggle_auto_spell_check +KEY_FENRIR,KEY_SHIFT,KEY_ENTER=toggle_output +KEY_FENRIR,KEY_ENTER=toggle_auto_read +KEY_FENRIR,KEY_Q=quit_fenrir +KEY_FENRIR,KEY_T=time +2,KEY_FENRIR,KEY_T=date +KEY_FENRIR,KEY_S=spell_check +2,KEY_FENRIR,KEY_S=add_word_to_spell_check +KEY_FENRIR,KEY_SHIFT,KEY_S=remove_word_from_spell_check +KEY_FENRIR,KEY_BACKSPACE=forward_keypress +KEY_FENRIR,KEY_UP=inc_speech_volume +KEY_FENRIR,KEY_DOWN=dec_speech_volume +KEY_FENRIR,KEY_RIGHT=inc_speech_rate +KEY_FENRIR,KEY_LEFT=dec_speech_rate +KEY_FENRIR,KEY_ALT,KEY_RIGHT=inc_speech_pitch +KEY_FENRIR,KEY_ALT,KEY_LEFT=dec_speech_pitch +KEY_FENRIR,KEY_ALT,KEY_UP=inc_sound_volume +KEY_FENRIR,KEY_ALT,KEY_DOWN=dec_sound_volume +KEY_FENRIR,KEY_CTRL,KEY_SHIFT,KEY_C=clear_clipboard +KEY_FENRIR,KEY_CTRL,KEY_SHIFT 0: + self.environment['input']['keyForeward'] -=1 + self.environment['runtime']['screenManager'].update('onInput') + self.environment['runtime']['commandManager'].executeDefaultTrigger('onInput') + else: + self.environment['runtime']['screenManager'].update('onUpdate') + if self.environment['runtime']['applicationManager'].isApplicationChange(): + self.environment['runtime']['commandManager'].executeDefaultTrigger('onApplicationChange') + self.environment['runtime']['commandManager'].executeSwitchTrigger('onSwitchApplicationProfile', \ + self.environment['runtime']['applicationManager'].getPrevApplication(), \ + self.environment['runtime']['applicationManager'].getCurrentApplication()) + + if self.environment['runtime']['screenManager'].isScreenChange(): + self.environment['runtime']['commandManager'].executeDefaultTrigger('onScreenChanged') + else: + self.environment['runtime']['commandManager'].executeDefaultTrigger('onScreenUpdate') + + self.handleCommands() + #print(time.time()-startTime) + + def prepareCommand(self): + if self.environment['runtime']['screenManager'].isSuspendingScreen(): + return + if self.environment['runtime']['inputManager'].noKeyPressed(): + return + if self.environment['input']['keyForeward'] > 0: + return + shortcut = self.environment['runtime']['inputManager'].getCurrShortcut() + command = self.environment['runtime']['inputManager'].getCommandForShortcut(shortcut) + if len(self.environment['input']['prevDeepestInput']) <= len(self.environment['input']['currInput']): + self.wasCommand = command != '' + if command == '': + return + + self.environment['runtime']['commandManager'].queueCommand(command) + + + def handleCommands(self): + if not self.environment['runtime']['commandManager'].isCommandQueued(): + return + self.environment['runtime']['commandManager'].executeCommand( self.environment['commandInfo']['currCommand'], 'commands') + + def shutdownRequest(self): + self.environment['generalInformation']['running'] = False + + def captureSignal(self, siginit, frame): + self.shutdownRequest() + + def shutdown(self): + if self.environment['runtime']['inputManager']: + self.environment['runtime']['inputManager'].shutdown() + del self.environment['runtime']['inputManager'] + self.environment['runtime']['outputManager'].presentText("Quit Fenrir", soundIcon='ScreenReaderOff', interrupt=True) + time.sleep(0.9) # wait a little for sound + + if self.environment['runtime']['screenManager']: + self.environment['runtime']['screenManager'].shutdown() + del self.environment['runtime']['screenManager'] + if self.environment['runtime']['commandManager']: + self.environment['runtime']['commandManager'].shutdown() + del self.environment['runtime']['commandManager'] + if self.environment['runtime']['outputManager']: + self.environment['runtime']['outputManager'].shutdown() + del self.environment['runtime']['outputManager'] + if self.environment['runtime']['punctuationManager']: + self.environment['runtime']['punctuationManager'].shutdown() + del self.environment['runtime']['punctuationManager'] + if self.environment['runtime']['cursorManager']: + self.environment['runtime']['cursorManager'].shutdown() + del self.environment['runtime']['cursorManager'] + if self.environment['runtime']['applicationManager']: + self.environment['runtime']['applicationManager'].shutdown() + del self.environment['runtime']['applicationManager'] + + if self.environment['runtime']['debug']: + self.environment['runtime']['debug'].shutdown() + del self.environment['runtime']['debug'] + time.sleep(0.2) # wait a little before splatter it :) + self.environment = None + +def main(): + #if __name__ == "__main__": + app = fenrir() + app.proceed() + del app + +if __name__ == "__main__": + main() diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/PKG-INFO b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/PKG-INFO new file mode 100644 index 00000000..468e22da --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/PKG-INFO @@ -0,0 +1,40 @@ +Metadata-Version: 1.1 +Name: fenrir +Version: 0.1a0 +Summary: An TTY Screen Reader For Linux. +Home-page: https://github.com/chrys87/fenrir/ +Author: Chrys and others +Author-email: chrys87@web.de +License: UNKNOWN +Description: # fenrir (Alfa) + An TTY screenreader for Linux. + Its an early alpha version. You can test it. It is not recommended for production use. If you want to help just let me know. + + # requirements + - linux + - python3 + - python-espeak + - python-evdev + - loaded uinput kernel module + Read permission to the following files: + /sys/devices/virtual/tty/tty0/active + /dev/vcsa[1-64] + ReadWrite permission + /dev/input + /dev/uinput + + # optional + - sox [its used by default in the generic sound driver for playing sound-icons] + - speech-dispatcher, python3-speechd [to use the speech-dispatcher driver] + - brltty, python-brlapi [for using braille] # (not implemented yet) + - gstreamer [for soundicons via gstreamer] # not working yet + - python-pyenchant for spell check functionality + + # installation + Currently there is no setupscript (sorry). But you can just run as root or setup needed permission + cd src/fenrir-package/ + sudo ./fenrir.py + Settings are located in the config directory. + +Platform: UNKNOWN +Classifier: Development Status :: 3 - Alpha diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/SOURCES.txt b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/SOURCES.txt new file mode 100644 index 00000000..16a43f15 --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/SOURCES.txt @@ -0,0 +1,169 @@ +setup.py +src/fenrir/fenrir +src/fenrir/commands/__init__.py +src/fenrir/commands/command_template.py +src/fenrir/commands/switchTrigger_template.py +src/fenrir/commands/commands/__init__.py +src/fenrir/commands/commands/add_word_to_spell_check.py +src/fenrir/commands/commands/bookmark_1.py +src/fenrir/commands/commands/bookmark_10.py +src/fenrir/commands/commands/bookmark_2.py +src/fenrir/commands/commands/bookmark_3.py +src/fenrir/commands/commands/bookmark_4.py +src/fenrir/commands/commands/bookmark_5.py +src/fenrir/commands/commands/bookmark_6.py +src/fenrir/commands/commands/bookmark_7.py +src/fenrir/commands/commands/bookmark_8.py +src/fenrir/commands/commands/bookmark_9.py +src/fenrir/commands/commands/clear_bookmark_1.py +src/fenrir/commands/commands/clear_bookmark_10.py +src/fenrir/commands/commands/clear_bookmark_2.py +src/fenrir/commands/commands/clear_bookmark_3.py +src/fenrir/commands/commands/clear_bookmark_4.py +src/fenrir/commands/commands/clear_bookmark_5.py +src/fenrir/commands/commands/clear_bookmark_6.py +src/fenrir/commands/commands/clear_bookmark_7.py +src/fenrir/commands/commands/clear_bookmark_8.py +src/fenrir/commands/commands/clear_bookmark_9.py +src/fenrir/commands/commands/clear_clipboard.py +src/fenrir/commands/commands/clear_window_application.py +src/fenrir/commands/commands/copy_marked_to_clipboard.py +src/fenrir/commands/commands/curr_char_phonetic.py +src/fenrir/commands/commands/curr_clipboard.py +src/fenrir/commands/commands/curr_screen.py +src/fenrir/commands/commands/curr_screen_after_cursor.py +src/fenrir/commands/commands/curr_screen_before_cursor.py +src/fenrir/commands/commands/curr_word_phonetic.py +src/fenrir/commands/commands/cursor_position.py +src/fenrir/commands/commands/date.py +src/fenrir/commands/commands/dec_sound_volume.py +src/fenrir/commands/commands/dec_speech_pitch.py +src/fenrir/commands/commands/dec_speech_rate.py +src/fenrir/commands/commands/dec_speech_volume.py +src/fenrir/commands/commands/exit_review.py +src/fenrir/commands/commands/first_clipboard.py +src/fenrir/commands/commands/forward_keypress.py +src/fenrir/commands/commands/inc_sound_volume.py +src/fenrir/commands/commands/inc_speech_pitch.py +src/fenrir/commands/commands/inc_speech_rate.py +src/fenrir/commands/commands/inc_speech_volume.py +src/fenrir/commands/commands/indent_curr_line.py +src/fenrir/commands/commands/last_clipboard.py +src/fenrir/commands/commands/last_incoming.py +src/fenrir/commands/commands/linux_paste_clipboard.py +src/fenrir/commands/commands/marked_text.py +src/fenrir/commands/commands/next_clipboard.py +src/fenrir/commands/commands/present_first_line.py +src/fenrir/commands/commands/present_last_line.py +src/fenrir/commands/commands/prev_clipboard.py +src/fenrir/commands/commands/quit_fenrir.py +src/fenrir/commands/commands/remove_marks.py +src/fenrir/commands/commands/remove_word_from_spell_check.py +src/fenrir/commands/commands/review_bottom.py +src/fenrir/commands/commands/review_curr_char.py +src/fenrir/commands/commands/review_curr_line.py +src/fenrir/commands/commands/review_curr_word.py +src/fenrir/commands/commands/review_down.py +src/fenrir/commands/commands/review_line_begin.py +src/fenrir/commands/commands/review_line_end.py +src/fenrir/commands/commands/review_line_first_char.py +src/fenrir/commands/commands/review_line_last_char.py +src/fenrir/commands/commands/review_next_char.py +src/fenrir/commands/commands/review_next_line.py +src/fenrir/commands/commands/review_next_word.py +src/fenrir/commands/commands/review_prev_char.py +src/fenrir/commands/commands/review_prev_line.py +src/fenrir/commands/commands/review_prev_word.py +src/fenrir/commands/commands/review_top.py +src/fenrir/commands/commands/review_up.py +src/fenrir/commands/commands/set_bookmark_1.py +src/fenrir/commands/commands/set_bookmark_10.py +src/fenrir/commands/commands/set_bookmark_2.py +src/fenrir/commands/commands/set_bookmark_3.py +src/fenrir/commands/commands/set_bookmark_4.py +src/fenrir/commands/commands/set_bookmark_5.py +src/fenrir/commands/commands/set_bookmark_6.py +src/fenrir/commands/commands/set_bookmark_7.py +src/fenrir/commands/commands/set_bookmark_8.py +src/fenrir/commands/commands/set_bookmark_9.py +src/fenrir/commands/commands/set_mark.py +src/fenrir/commands/commands/set_window_application.py +src/fenrir/commands/commands/shut_up.py +src/fenrir/commands/commands/spell_check.py +src/fenrir/commands/commands/time.py +src/fenrir/commands/commands/toggle_auto_read.py +src/fenrir/commands/commands/toggle_auto_spell_check.py +src/fenrir/commands/commands/toggle_braille.py +src/fenrir/commands/commands/toggle_output.py +src/fenrir/commands/commands/toggle_punctuation_level.py +src/fenrir/commands/commands/toggle_sound.py +src/fenrir/commands/commands/toggle_speech.py +src/fenrir/commands/commands/toggle_tutorial_mode.py +src/fenrir/commands/onApplicationChange/__init__.py +src/fenrir/commands/onApplicationChange/test.py +src/fenrir/commands/onInput/10000-shut_up.py +src/fenrir/commands/onInput/45000-present_char_if_cursor_change_horizontal.py +src/fenrir/commands/onInput/50000-char_echo.py +src/fenrir/commands/onInput/55000-present_line_if_cursor_change_vertical.py +src/fenrir/commands/onInput/60000-word_echo.py +src/fenrir/commands/onInput/62000-spell_check.py +src/fenrir/commands/onInput/65000-char_delete_echo.py +src/fenrir/commands/onInput/80000-capslock.py +src/fenrir/commands/onInput/80300-scrolllock.py +src/fenrir/commands/onInput/80500-numlock.py +src/fenrir/commands/onInput/__init__.py +src/fenrir/commands/onScreenChanged/10000-shut_up.py +src/fenrir/commands/onScreenChanged/80000-screen_change_announcement.py +src/fenrir/commands/onScreenChanged/85000-screen_chnage_reset_marks.py +src/fenrir/commands/onScreenChanged/85000-screen_chnage_reset_review.py +src/fenrir/commands/onScreenChanged/89000-screen_chnage_leve_review_mode.py +src/fenrir/commands/onScreenChanged/__init__.py +src/fenrir/commands/onScreenUpdate/70000-incoming.py +src/fenrir/commands/onScreenUpdate/75000-incoming_promote.py +src/fenrir/commands/onScreenUpdate/__init__.py +src/fenrir/commands/onSwitchApplicationProfile/__init__.py +src/fenrir/commands/onSwitchApplicationProfile/agetty.py +src/fenrir/commands/onSwitchApplicationProfile/bash.py +src/fenrir/commands/onSwitchApplicationProfile/default.py +src/fenrir/commands/onSwitchApplicationProfile/vim.py +src/fenrir/core/__init__.py +src/fenrir/core/applicationManager.py +src/fenrir/core/commandManager.py +src/fenrir/core/commands.py +src/fenrir/core/cursorManager.py +src/fenrir/core/debug.py +src/fenrir/core/environment.py +src/fenrir/core/generalInformation.py +src/fenrir/core/inputEvent.py +src/fenrir/core/inputManager.py +src/fenrir/core/outputManager.py +src/fenrir/core/punctuationManager.py +src/fenrir/core/runtime.py +src/fenrir/core/screenData.py +src/fenrir/core/screenManager.py +src/fenrir/core/settings.py +src/fenrir/core/settingsManager.py +src/fenrir/fenrir.egg-info/PKG-INFO +src/fenrir/fenrir.egg-info/SOURCES.txt +src/fenrir/fenrir.egg-info/dependency_links.txt +src/fenrir/fenrir.egg-info/not-zip-safe +src/fenrir/fenrir.egg-info/requires.txt +src/fenrir/fenrir.egg-info/top_level.txt +src/fenrir/inputDriver/__init__.py +src/fenrir/inputDriver/evdev.py +src/fenrir/screenDriver/__init__.py +src/fenrir/screenDriver/linux.py +src/fenrir/soundDriver/__init__.py +src/fenrir/soundDriver/generic.py +src/fenrir/soundDriver/gstreamer.py +src/fenrir/speechDriver/__init__.py +src/fenrir/speechDriver/espeak.py +src/fenrir/speechDriver/generic.py +src/fenrir/speechDriver/speechd.py +src/fenrir/utils/__init__.py +src/fenrir/utils/char_utils.py +src/fenrir/utils/fenrir-config.py +src/fenrir/utils/line_utils.py +src/fenrir/utils/mark_utils.py +src/fenrir/utils/review_utils.py +src/fenrir/utils/word_utils.py \ No newline at end of file diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/dependency_links.txt b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/dependency_links.txt new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/dependency_links.txt @@ -0,0 +1 @@ + diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/not-zip-safe b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/not-zip-safe new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/not-zip-safe @@ -0,0 +1 @@ + diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/requires.txt b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/requires.txt new file mode 100644 index 00000000..96c1e4c9 --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/requires.txt @@ -0,0 +1,3 @@ +evdev +sox +python-espeak diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/top_level.txt b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/top_level.txt new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/python3.5/site-packages/fenrir-0.1a0-py3.5.egg-info/top_level.txt @@ -0,0 +1 @@ + diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/lib/systemd/system/fenrir.service b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/systemd/system/fenrir.service new file mode 100644 index 00000000..f79dd40c --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/lib/systemd/system/fenrir.service @@ -0,0 +1,13 @@ +[Unit] +Description=Fenrir screenreader + +[Service] +Type=forking +PIDFile=/var/run/fenrir.pid +ExecStart=/usr/bin/fenrir +Restart=on-abort +#Group=fenrir +#User=fenrir + +[Install] +WantedBy=sound.target diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/Accept.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/Accept.wav new file mode 100644 index 00000000..d0fd482c Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/Accept.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/BrailleOff.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/BrailleOff.wav new file mode 100644 index 00000000..083fc283 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/BrailleOff.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/BrailleOn.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/BrailleOn.wav new file mode 100644 index 00000000..00674359 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/BrailleOn.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/Cancel.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/Cancel.wav new file mode 100644 index 00000000..d09d1f36 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/Cancel.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/Caps.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/Caps.wav new file mode 100644 index 00000000..f9120bca Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/Caps.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ChangeTTY.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ChangeTTY.wav new file mode 100644 index 00000000..124e213c Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ChangeTTY.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ContentChanged.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ContentChanged.wav new file mode 100644 index 00000000..692725ad Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ContentChanged.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/CopyToClipboard.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/CopyToClipboard.wav new file mode 100644 index 00000000..bcaf44be Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/CopyToClipboard.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/EmptyLine.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/EmptyLine.wav new file mode 100644 index 00000000..68683eef Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/EmptyLine.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/EndOfLine.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/EndOfLine.wav new file mode 100644 index 00000000..c782c6cd Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/EndOfLine.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/EndOfScreen.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/EndOfScreen.wav new file mode 100644 index 00000000..48ae1532 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/EndOfScreen.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ErrorBraille.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ErrorBraille.wav new file mode 100644 index 00000000..189eda41 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ErrorBraille.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ErrorScreen.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ErrorScreen.wav new file mode 100644 index 00000000..189eda41 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ErrorScreen.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ErrorSpeech.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ErrorSpeech.wav new file mode 100644 index 00000000..189eda41 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ErrorSpeech.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/HasAtributes.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/HasAtributes.wav new file mode 100644 index 00000000..516ceae3 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/HasAtributes.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PasteClipboardOnScreen.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PasteClipboardOnScreen.wav new file mode 100644 index 00000000..429d8cbc Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PasteClipboardOnScreen.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PlaceEndMark.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PlaceEndMark.wav new file mode 100644 index 00000000..44b592e9 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PlaceEndMark.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PlaceStartMark.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PlaceStartMark.wav new file mode 100644 index 00000000..ef2b75d0 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PlaceStartMark.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PromotedText.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PromotedText.wav new file mode 100644 index 00000000..210ff236 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/PromotedText.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ScreenReaderOff.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ScreenReaderOff.wav new file mode 100644 index 00000000..fcca3d08 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ScreenReaderOff.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ScreenReaderOn.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ScreenReaderOn.wav new file mode 100644 index 00000000..95aefffc Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/ScreenReaderOn.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SoundOff.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SoundOff.wav new file mode 100644 index 00000000..9f93ee5f Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SoundOff.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SoundOn.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SoundOn.wav new file mode 100644 index 00000000..16c193cb Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SoundOn.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SpeechOff.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SpeechOff.wav new file mode 100644 index 00000000..df71ed8c Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SpeechOff.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SpeechOn.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SpeechOn.wav new file mode 100644 index 00000000..cf19b3cf Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/SpeechOn.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/StartOfLine.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/StartOfLine.wav new file mode 100644 index 00000000..1e78066b Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/StartOfLine.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/StartOfScreen.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/StartOfScreen.wav new file mode 100644 index 00000000..3992153b Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/StartOfScreen.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/mispell.wav b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/mispell.wav new file mode 100644 index 00000000..2497c3d3 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/mispell.wav differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/soundicons.conf b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/soundicons.conf new file mode 100644 index 00000000..4e34285a --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default-wav/soundicons.conf @@ -0,0 +1,50 @@ +# Screen Reader Turned On or Off +ScreenReaderOn='ScreenReaderOn.wav' +ScreenReaderOff='ScreenReaderOff.wav' +# Cancel the current command +Cancel='Cancel.wav' +# Accept command +Accept='Accept.wav' +# Bell a sound if the TTY is changed (ctrl + alt +FX) +ChangeTTY='ChangeTTY.wav' +# Is the first Position on the line +StartOfLine='StartOfLine.wav' +# Is the last position of the Line +EndOfLine='EndOfLine.wav' +# the Line is empty +EmptyLine='EmptyLine.wav' +# Is the first line on the screen. +StartOfScreen='StartOfScreen.wav' +# Is the last line on the screen +EndOfScreen='EndOfScreen.wav' +# The content has changed +ContentChanged='ContentChanged.wav' +# Speech has turned On or Off +SpeechOn='SpeechOn.wav' +SpeechOff='SpeechOff.wav' +# Braille has turned On or Off +BrailleOn='BrailleOn.wav' +BrailleOff='BrailleOff.wav' +# SoundIcons has turned On or Off +SoundOn='SoundOn.wav' +SoundOff='SoundOff.wav' +# Set beginnig mark +PlaceStartMark='PlaceStartMark.wav' +# Set end mark +PlaceEndMark='PlaceEndMark.wav' +# Copied to clipboard +CopyToClipboard='CopyToClipboard.wav' +# Pasted on the screen +PasteClipboardOnScreen='PasteClipboardOnScreen.wav' +# An error accoured while speech or braille output or reading the screen +ErrorSpeech='ErrorSpeech.wav' +ErrorBraille='ErrorBraille.wav' +ErrorScreen='ErrorScreen.wav' +# If you cursor over an text that has attributs (like color) +HasAttributes='HasAttributes.wav' +# fenrir can promote strings if they appear on the screen. +PromotedText='PromotedText.wav' +# missspelled indicator +mispell='mispell.wav' +# the for capital letter +capital='Caps.wav' diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/Accept.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/Accept.opus new file mode 100644 index 00000000..8b1cd4e4 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/Accept.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/BrailleOff.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/BrailleOff.opus new file mode 100644 index 00000000..e1e67309 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/BrailleOff.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/BrailleOn.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/BrailleOn.opus new file mode 100644 index 00000000..4d130803 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/BrailleOn.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/Cancel.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/Cancel.opus new file mode 100644 index 00000000..03dd35b1 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/Cancel.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/Caps.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/Caps.opus new file mode 100644 index 00000000..2e5d92e6 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/Caps.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ChangeTTY.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ChangeTTY.opus new file mode 100644 index 00000000..e147023b Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ChangeTTY.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ContentChanged.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ContentChanged.opus new file mode 100644 index 00000000..06570aac Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ContentChanged.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/CopyToClipboard.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/CopyToClipboard.opus new file mode 100644 index 00000000..420dc4bd Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/CopyToClipboard.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/EmptyLine.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/EmptyLine.opus new file mode 100644 index 00000000..10bb7faa Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/EmptyLine.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/EndOfLine.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/EndOfLine.opus new file mode 100644 index 00000000..2bfa35c1 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/EndOfLine.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/EndOfScreen.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/EndOfScreen.opus new file mode 100644 index 00000000..4206a0cb Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/EndOfScreen.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ErrorBraille.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ErrorBraille.opus new file mode 100644 index 00000000..1374c3ec Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ErrorBraille.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ErrorScreen.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ErrorScreen.opus new file mode 100644 index 00000000..40e94fc2 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ErrorScreen.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ErrorSpeech.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ErrorSpeech.opus new file mode 100644 index 00000000..be975329 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ErrorSpeech.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/HasAtributes.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/HasAtributes.opus new file mode 100644 index 00000000..18558892 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/HasAtributes.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PasteClipboardOnScreen.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PasteClipboardOnScreen.opus new file mode 100644 index 00000000..cd71fef2 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PasteClipboardOnScreen.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PlaceEndMark.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PlaceEndMark.opus new file mode 100644 index 00000000..06decdb4 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PlaceEndMark.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PlaceStartMark.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PlaceStartMark.opus new file mode 100644 index 00000000..7f7fac93 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PlaceStartMark.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PromotedText.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PromotedText.opus new file mode 100644 index 00000000..d4b4b34f Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/PromotedText.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ScreenReaderOff.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ScreenReaderOff.opus new file mode 100644 index 00000000..f29e49f2 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ScreenReaderOff.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ScreenReaderOn.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ScreenReaderOn.opus new file mode 100644 index 00000000..8bdd974b Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/ScreenReaderOn.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SoundOff.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SoundOff.opus new file mode 100644 index 00000000..06fdfceb Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SoundOff.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SoundOn.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SoundOn.opus new file mode 100644 index 00000000..80162dea Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SoundOn.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SpeechOff.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SpeechOff.opus new file mode 100644 index 00000000..d0ed221c Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SpeechOff.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SpeechOn.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SpeechOn.opus new file mode 100644 index 00000000..cb0723a9 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/SpeechOn.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/StartOfLine.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/StartOfLine.opus new file mode 100644 index 00000000..bf368879 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/StartOfLine.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/StartOfScreen.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/StartOfScreen.opus new file mode 100644 index 00000000..c85a213f Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/StartOfScreen.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/mispell.opus b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/mispell.opus new file mode 100644 index 00000000..a4839140 Binary files /dev/null and b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/mispell.opus differ diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/soundicons.conf b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/soundicons.conf new file mode 100644 index 00000000..53a4068e --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/default/soundicons.conf @@ -0,0 +1,50 @@ +# Screen Reader Turned On or Off +ScreenReaderOn='ScreenReaderOn.opus' +ScreenReaderOff='ScreenReaderOff.opus' +# Cancel the current command +Cancel='Cancel.opus' +# Accept command +Accept='Accept.opus' +# Bell a sound if the TTY is changed (ctrl + alt +FX) +ChangeTTY='ChangeTTY.opus' +# Is the first Position on the line +StartOfLine='StartOfLine.opus' +# Is the last position of the Line +EndOfLine='EndOfLine.opus' +# the Line is empty +EmptyLine='EmptyLine.opus' +# Is the first line on the screen. +StartOfScreen='StartOfScreen.opus' +# Is the last line on the screen +EndOfScreen='EndOfScreen.opus' +# The content has changed +ContentChanged='ContentChanged.opus' +# Speech has turned On or Off +SpeechOn='SpeechOn.opus' +SpeechOff='SpeechOff.opus' +# Braille has turned On or Off +BrailleOn='BrailleOn.opus' +BrailleOff='BrailleOff.opus' +# SoundIcons has turned On or Off +SoundOn='SoundOn.opus' +SoundOff='SoundOff.opus' +# Set beginnig mark for copy to clipboard +PlaceStartMark='PlaceStartMark.opus' +# Set end mark for copy to clipboard +PlaceEndMark='PlaceEndMark.opus' +# Copied to clipboard +CopyToClipboard='CopyToClipboard.opus' +# Pasted on the screen +PasteClipboardOnScreen='PasteClipboardOnScreen.opus' +# An error accoured while speech or braille output or reading the screen +ErrorSpeech='ErrorSpeech.opus' +ErrorBraille='ErrorBraille.opus' +ErrorScreen='ErrorScreen.opus' +# If you cursor over an text that has attributs (like color) +HasAttributes='HasAttributes.opus' +# fenrir can promote strings if they appear on the screen. +PromotedText='PromotedText.opus' +# missspelled indicator +mispell='mispell.opus' +# the for capital letter +capital='Caps.opus' diff --git a/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/template/soundicons.conf b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/template/soundicons.conf new file mode 100644 index 00000000..fadbbb0b --- /dev/null +++ b/contrib/fenrir-git/pkg/fenrir-git/usr/share/sounds/fenrir/template/soundicons.conf @@ -0,0 +1,50 @@ +# Screen Reader Turned On or Off +ScreenReaderOn='' +ScreenReaderOff='' +# Cancel the current command +Cancel='' +# Accept command +Accept='' +# Bell a sound if the TTY is changed (ctrl + alt +FX) +ChangeTTY='' +# Is the first Position on the line +StartOfLine='' +# Is the last position of the Line +EndOfLine='' +# the Line is empty +EmptyLine='' +# Is the first line on the screen. +StartOfScreen='' +# Is the last line on the screen +EndOfScreen='' +# The content has changed +ContentChanged='' +# Speech has turned On or Off +SpeechOn='' +SpeechOff='' +# Braille has turned On or Off +BrailleOn='' +BrailleOff='' +# SoundIcons has turned On or Off +SoundIconsOn='' +SoundIconsOff='' +# Set beginnig mark for copy to clipboard +PlaceStartCopyMark='' +# Set end mark for copy to clipboard +PlaceEndCopyMark='' +# Copied to clipboard +CopyToClipboard='' +# Pasted on the screen +PasedClipboardOnScreen='' +# An error accoured while speech or braille output or reading the screen +ErrorSpeech='' +ErrorBraille='' +ErrorScreen='' +# If you cursor over an text that has attributs (like color) +HasAttributes='' +# fenrir can promote strings if they appear on the screen. +PromotedText='' +# misspelled indicator +mispell='' +# the for capital letter: +capital='' diff --git a/contrib/fenrir-git/src/fenrir b/contrib/fenrir-git/src/fenrir new file mode 160000 index 00000000..6ec714e4 --- /dev/null +++ b/contrib/fenrir-git/src/fenrir @@ -0,0 +1 @@ +Subproject commit 6ec714e494427833f92360eef428fb4cede32993 diff --git a/contrib/fenrir-git/src/fenrir-git.install b/contrib/fenrir-git/src/fenrir-git.install new file mode 120000 index 00000000..2d564f53 --- /dev/null +++ b/contrib/fenrir-git/src/fenrir-git.install @@ -0,0 +1 @@ +/home/chrys/Projekte/fenrir/fenrir/contrib/fenrir-git/fenrir-git.install \ No newline at end of file diff --git a/dist/fenrir-0.1a0-py3.5.egg b/dist/fenrir-0.1a0-py3.5.egg new file mode 100644 index 00000000..8f0ef168 Binary files /dev/null and b/dist/fenrir-0.1a0-py3.5.egg differ diff --git a/src/fenrir/commands/commands/toggle_emoticons.py b/src/fenrir/commands/commands/toggle_emoticons.py new file mode 100644 index 00000000..fc1872df --- /dev/null +++ b/src/fenrir/commands/commands/toggle_emoticons.py @@ -0,0 +1,26 @@ +#!/bin/python +# -*- coding: utf-8 -*- + +# Fenrir TTY screen reader +# By Chrys, Storm Dragon, and contributers. + +from core import debug +class command(): + def __init__(self): + pass + def initialize(self, environment): + self.env = environment + def shutdown(self): + pass + def getDescription(self): + return 'enables or disables announcement of emoticons insteed of chars' + + def run(self): + self.env['runtime']['settingsManager'].setSetting('general', 'emoticons', str(not self.env['runtime']['settingsManager'].getSettingAsBool('general', 'emoticons'))) + if self.env['runtime']['settingsManager'].getSettingAsBool('general', 'emoticons'): + self.env['runtime']['outputManager'].presentText("emoticons enabled", soundIcon='', interrupt=True) + else: + self.env['runtime']['outputManager'].presentText("emoticons disabled", soundIcon='', interrupt=True) + + def setCallback(self, callback): + pass diff --git a/src/fenrir/core/commandManager.py b/src/fenrir/core/commandManager.py index 1822066a..36d8d97f 100644 --- a/src/fenrir/core/commandManager.py +++ b/src/fenrir/core/commandManager.py @@ -34,10 +34,9 @@ class commandManager(): commandList = glob.glob(commandFolder+'*') for command in commandList: try: - print(command) fileName, fileExtension = os.path.splitext(command) fileName = fileName.split('/')[-1] - if fileName in ['__init__','__pycache__']: + if fileName.startswith('__'): continue if fileExtension.lower() == '.py': spec = importlib.util.spec_from_file_location(fileName, command) @@ -46,7 +45,7 @@ class commandManager(): self.env['commands'][section][fileName.upper()] = command_mod.command() self.env['commandsIgnore'][section][fileName.upper()[fileName.upper().find('-')+1:]+'_IGNORE'] = False self.env['commands'][section][fileName.upper()].initialize(self.env) - self.env['runtime']['debug'].writeDebugOut("Load command:" + section + "." + fileName.upper() ,debug.debugLevel.INFO) + self.env['runtime']['debug'].writeDebugOut("Load command:" + section + "." + fileName.upper() ,debug.debugLevel.INFO, onAnyLevel=True) except Exception as e: print(e) self.env['runtime']['debug'].writeDebugOut("Loading command:" + command ,debug.debugLevel.ERROR) diff --git a/src/fenrir/core/debug.py b/src/fenrir/core/debug.py index 9b64b035..0935af91 100644 --- a/src/fenrir/core/debug.py +++ b/src/fenrir/core/debug.py @@ -37,16 +37,21 @@ class debug(): self._file = open(self._fileName,'a') self._fileOpened = True - def writeDebugOut(self, text, level = debugLevel.DEACTIVE): - if self.env['runtime']['settingsManager'].getSettingAsInt('general','debugLevel') < int(level): + def writeDebugOut(self, text, level = debugLevel.DEACTIVE, onAnyLevel=False): + if (self.env['runtime']['settingsManager'].getSettingAsInt('general','debugLevel') < int(level)) or \ + not (onAnyLevel and self.env['runtime']['settingsManager'].getSettingAsInt('general','debugLevel') > int(debugLevel.DEACTIVE)) : if self._fileOpened: self.closeDebugFile() return else: if not self._fileOpened: self.openDebugFile() - msg = str(level) +' ' + str(datetime.utcnow().strftime('%Y-%m-%d %H:%M:%S.%f') -) + ': ' + text + if onAnyLevel: + msg = 'INFO ' + str(datetime.utcnow().strftime('%Y-%m-%d %H:%M:%S.%f')) + else: + msg = str(level) +' ' + str(datetime.utcnow().strftime('%Y-%m-%d %H:%M:%S.%f') +) + msg += ': ' + text print(msg) self._file.write(msg + '\n') diff --git a/src/fenrir/core/environment.py b/src/fenrir/core/environment.py index 6d66dc85..367305a8 100644 --- a/src/fenrir/core/environment.py +++ b/src/fenrir/core/environment.py @@ -11,6 +11,7 @@ from core import screenData from core import generalInformation from core import commands from core import inputEvent +from core import punctuation environment = { 'screenData': screenData.screenData, @@ -22,6 +23,7 @@ environment = { 'commandInfo': commands.commandInfo, 'commandBuffer': commands.commandBuffer, 'input': inputEvent.input, +'punctuation': punctuation.punctuation, 'soundIcons': {}, 'bindings': {}, } diff --git a/src/fenrir/core/inputManager.py b/src/fenrir/core/inputManager.py index 325d8a34..62d0414a 100644 --- a/src/fenrir/core/inputManager.py +++ b/src/fenrir/core/inputManager.py @@ -41,7 +41,8 @@ class inputManager(): self.env['input']['currInput'] = sorted(self.env['input']['currInput']) if len(self.env['input']['currInput']) == 0: self.env['input']['prevDeepestInput'] = [] - self.env['input']['shortcutRepeat'] = 1 + self.env['input']['shortcutRepeat'] = 1 + self.env['input']['lastInputTime'] = time.time() elif mEvent['EventState'] == 1: if not mEvent['EventName'] in self.env['input']['currInput']: self.env['input']['currInput'].append(mEvent['EventName']) @@ -50,8 +51,11 @@ class inputManager(): if len(self.env['input']['prevDeepestInput']) < len(self.env['input']['currInput']): self.env['input']['prevDeepestInput'] = self.env['input']['currInput'].copy() elif self.env['input']['prevDeepestInput'] == self.env['input']['currInput']: - self.env['input']['shortcutRepeat'] += 1 - + if time.time() - self.env['input']['lastInputTime'] <= self.env['runtime']['settingsManager'].getSettingAsFloat('keyboard','doubleTapTimeout'): + self.env['input']['shortcutRepeat'] += 1 + else: + self.env['input']['shortcutRepeat'] = 1 + self.env['input']['lastInputTime'] = time.time() elif mEvent['EventState'] == 2: pass else: @@ -62,7 +66,7 @@ class inputManager(): self.env['input']['newCapsLock'] = self.env['runtime']['inputDriver'].getCapslock() self.env['input']['oldScrollLock'] = self.env['input']['newScrollLock'] self.env['input']['newScrollLock'] = self.env['runtime']['inputDriver'].getScrollLock() - self.env['input']['lastInputTime'] = time.time() + return eventReceived def grabDevices(self): diff --git a/src/fenrir/core/punctuation.py b/src/fenrir/core/punctuation.py new file mode 100644 index 00000000..9045a227 --- /dev/null +++ b/src/fenrir/core/punctuation.py @@ -0,0 +1,61 @@ +#!/bin/python +# -*- coding: utf-8 -*- + +# Fenrir TTY screen reader +# By Chrys, Storm Dragon, and contributers. + +from core import debug +import string + +punctuation = { +'LEVELDICT':{ + 'none': '', + 'some': '#-$~+*-/\\@', + 'most': '.,:-$~+*-/\\@!#%^&*()[]}{<>;', + 'all': string.punctuation, + }, +'PUNCTDICT':{ + '&':'and', + "'":"apostrophe", + '@':'at', + '\\':'backslash', + '|':'bar', + '!':'bang', + '^':'carrot', + ':':'colon', + ',':'comma', + '-':'dash', + '$':'dollar', + '.':'dot', + '>':'greater', + '`':'grave', + '#':'hash', + '{':'left brace', + '[':'left bracket', + '(':'left paren', + '<':'less', + '%':'percent', + '+':'plus', + '?':'question', + '"':'quote', + ')':'right paren', + '}':'right brace', + ']':'right bracket', + ';':'semicolon', + '/':'slash', + '*':'star', + '~':'tilde', + '_':'line', + '=':'equals', + }, +'CUSTOMDICT':{ + 'chrys': 'nice chrys' + }, +'EMOTICONDICT':{ + ':)':'smiley', + ';)':'winking face', + 'XD':'loool', + ':@':'angry face', + ':D':'lought' + }, +} diff --git a/src/fenrir/core/punctuationManager.py b/src/fenrir/core/punctuationManager.py index 38cfccbe..1b3ad8d8 100644 --- a/src/fenrir/core/punctuationManager.py +++ b/src/fenrir/core/punctuationManager.py @@ -17,62 +17,7 @@ class punctuationManager(): # dot, comma, grave, apostrophe for char in [ord('.'),ord(','),ord('`'),ord("'")]: self.allPunctNone[char] = None - self.punctuation = { - 'levels':{ - 'none': '', - 'some': '#-$~+*-/\\@', - 'most': '.,:-$~+*-/\\@!#%^&*()[]}{<>;', - 'all': string.punctuation, - }, - 'punctuationDict':{ - '&':'and', - "'":"apostrophe", - '@':'at', - '\\':'backslash', - '|':'bar', - '!':'bang', - '^':'carrot', - ':':'colon', - ',':'comma', - '-':'dash', - '$':'dollar', - '.':'dot', - '>':'greater', - '`':'grave', - '#':'hash', - '{':'left brace', - '[':'left bracket', - '(':'left paren', - '<':'less', - '%':'percent', - '+':'plus', - '?':'question', - '"':'quote', - ')':'right paren', - '}':'right brace', - ']':'right bracket', - ';':'semicolon', - '/':'slash', - '*':'star', - '~':'tilde', - '_':'line', - '=':'equals', - }, - 'customDict':{ - '>:)':'evil smiley', - '>:-)':'evil smiley', - '>:)}':'evil beerded smiley', - '>:-)}':'evil beerded smiley', - ':)':'smiley', - ':-)':'smiley', - ':)}':'beerded smiley', - ':-)}':'beerded smiley', - ';)':'winking face', - 'XD':'loool', - ':@':'angry face', - ':D':'lought' - } - } + def shutdown(self): pass def removeUnused(self, text): @@ -94,18 +39,21 @@ class punctuationManager(): return resultText def proceedPunctuation(self, text, ignorePunctuation=False): - resultText = self.useCustomDict(text, self.punctuation['customDict']) + resultText = text + resultText = self.useCustomDict(resultText, self.env['punctuation']['CUSTOMDICT']) + if self.env['runtime']['settingsManager'].getSetting('general', 'emoticons'): + resultText = self.useCustomDict(resultText, self.env['punctuation']['EMOTICONDICT']) currPunctLevel = '' - if not ignorePunctuation and self.env['runtime']['settingsManager'].getSetting('general', 'punctuationLevel').lower() in self.punctuation['levels']: - currPunctLevel = self.punctuation['levels'][self.env['runtime']['settingsManager'].getSetting('general', 'punctuationLevel').lower()] + if not ignorePunctuation and self.env['runtime']['settingsManager'].getSetting('general', 'punctuationLevel').lower() in self.env['punctuation']['LEVELDICT']: + currPunctLevel = self.env['punctuation']['LEVELDICT'][self.env['runtime']['settingsManager'].getSetting('general', 'punctuationLevel').lower()] else: currPunctLevel = string.punctuation - resultText = self.usePunctuationDict(resultText, self.punctuation['punctuationDict'], currPunctLevel) + resultText = self.usePunctuationDict(resultText, self.env['punctuation']['PUNCTDICT'], currPunctLevel) resultText = self.removeUnused(resultText) return resultText def cyclePunctuation(self): - punctList = list(self.punctuation['levels'].keys()) + punctList = list(self.env['punctuation']['LEVELDICT'].keys()) try: currIndex = punctList.index(self.env['runtime']['settingsManager'].getSetting('general', 'punctuationLevel').lower()) # curr punctuation except: diff --git a/src/fenrir/core/settings.py b/src/fenrir/core/settings.py index a4fcbb12..adbbabc0 100644 --- a/src/fenrir/core/settings.py +++ b/src/fenrir/core/settings.py @@ -41,8 +41,10 @@ settings = { }, 'general':{ 'debugLevel': debug.debugLevel.DEACTIVE, + 'punctuationProfile':'default', 'punctuationLevel': 1, 'numberOfClipboards': 10, + 'emoticons': True, 'fenrirKeys': ['KEY_KP0'], 'timeFormat': '%I:%M%P', 'dateFormat': '%A, %B %d, %Y', @@ -64,6 +66,6 @@ settings = { 'charDeleteEcho': True, 'wordEcho': True, 'interruptOnKeyPress': True, - 'doubleTapDelay': 0.2, + 'doubleTapTimeout': 0.2, } } diff --git a/src/fenrir/core/settingsManager.py b/src/fenrir/core/settingsManager.py index 0d540500..ec345864 100644 --- a/src/fenrir/core/settingsManager.py +++ b/src/fenrir/core/settingsManager.py @@ -33,6 +33,8 @@ class settingsManager(): if not line: break line = line.replace('\n','') + if line.replace(" ","") == '': + continue if line.replace(" ","").startswith("#"): continue if line.count("=") != 1: @@ -53,7 +55,7 @@ class settingsManager(): shortcutKeys.append(key.upper()) shortcut.append(shortcutRepeat) shortcut.append(sorted(shortcutKeys)) - self.env['runtime']['debug'].writeDebugOut("Shortcut: "+ str(shortcut) + ' command:' +commandName ,debug.debugLevel.INFO) + self.env['runtime']['debug'].writeDebugOut("Shortcut: "+ str(shortcut) + ' command:' +commandName ,debug.debugLevel.INFO, onAnyLevel=True) self.env['bindings'][str(shortcut)] = commandName kbConfig.close() @@ -64,6 +66,8 @@ class settingsManager(): if not line: break line = line.replace('\n','') + if line.replace(" ","") == '': + continue if line.replace(" ","").startswith("#"): continue if line.count("=") != 1: @@ -81,8 +85,40 @@ class settingsManager(): if os.path.exists(soundIconPath + Values[1]): soundIconFile = soundIconPath + Values[1] self.env['soundIcons'][soundIcon] = soundIconFile + self.env['runtime']['debug'].writeDebugOut("SoundIcon: " + soundIcon + '.' + soundIconFile, debug.debugLevel.INFO, onAnyLevel=True) siConfig.close() + def loadDicts(self, dictConfigPath=os.path.dirname(os.path.realpath(__main__.__file__)) + '/../../config/punctuation/default.conf'): + dictConfig = open(dictConfigPath,"r") + currDictName = '' + while(True): + line = dictConfig.readline() + if not line: + break + line = line.replace('\n','') + if line.replace(" ","") == '': + continue + if line.replace(" ","").startswith("#"): + continue + if line.replace(" ","").upper().startswith("[") and \ + line.replace(" ","").upper().endswith("DICT]"): + currDictName = line[line.find('[') + 1 :line.upper().find('DICT]') + 4].upper() + else: + if currDictName == '': + continue + if not ":===:" in line: + continue + sepLine = line.split(':===:') + if len(sepLine) == 1: + sepLine.append('') + elif len(sepLine) < 1: + continue + elif len(sepLine) > 2: + sepLine[1] = ':===:' + self.env['punctuation'][currDictName][sepLine[0]] = sepLine[1] + self.env['runtime']['debug'].writeDebugOut("Punctuation: " + currDictName + '.' + str(sepLine[0]) + ' :' + sepLine[1] ,debug.debugLevel.INFO, onAnyLevel=True) + dictConfig.close() + def loadSettings(self, settingConfigPath): if not os.path.exists(settingConfigPath): return False @@ -189,6 +225,16 @@ class settingsManager(): else: environment['runtime']['settingsManager'].loadSoundIcons(self.getSetting('sound','theme')) + if not os.path.exists(self.getSetting('general','punctuationProfile')): + if os.path.exists(settingsRoot + 'punctuation/' + self.getSetting('general','punctuationProfile')): + self.setSetting('general', 'punctuationProfile', settingsRoot + 'punctuation/' + self.getSetting('general','punctuationProfile')) + environment['runtime']['settingsManager'].loadDicts(self.getSetting('general','punctuationProfile')) + if os.path.exists(settingsRoot + 'punctuation/' + self.getSetting('general','punctuationProfile') + '.conf'): + self.setSetting('general', 'punctuationProfile', settingsRoot + 'punctuation/' + self.getSetting('general','punctuationProfile') + '.conf') + environment['runtime']['settingsManager'].loadDicts(self.getSetting('general','punctuationProfile')) + else: + environment['runtime']['settingsManager'].loadDicts(self.getSetting('general','punctuationProfile')) + environment['runtime']['inputManager'] = inputManager.inputManager() environment['runtime']['inputManager'].initialize(environment) environment['runtime']['outputManager'] = outputManager.outputManager() @@ -206,10 +252,10 @@ class settingsManager(): environment['runtime']['screenManager'] = screenManager.screenManager() environment['runtime']['screenManager'].initialize(environment) - environment['runtime']['debug'].writeDebugOut('\/-------environment-------\/',debug.debugLevel.ERROR) - environment['runtime']['debug'].writeDebugOut(str(environment),debug.debugLevel.ERROR) - environment['runtime']['debug'].writeDebugOut('\/-------settings.conf-------\/',debug.debugLevel.ERROR) + environment['runtime']['debug'].writeDebugOut('\/-------environment-------\/',debug.debugLevel.INFO, onAnyLevel=True) + environment['runtime']['debug'].writeDebugOut(str(environment),debug.debugLevel.INFO, onAnyLevel=True) + environment['runtime']['debug'].writeDebugOut('\/-------settings.conf-------\/',debug.debugLevel.INFO, onAnyLevel=True) environment['runtime']['debug'].writeDebugOut(str(environment['settings']._sections -),debug.debugLevel.ERROR) +),debug.debugLevel.INFO, onAnyLevel=True) return environment diff --git a/src/fenrir/inputDriver/evdev.py b/src/fenrir/inputDriver/evdev.py index 33976591..134c7703 100644 --- a/src/fenrir/inputDriver/evdev.py +++ b/src/fenrir/inputDriver/evdev.py @@ -117,20 +117,24 @@ class driver(): return False def grabDevices(self): +# leve the old code until the new one is better tested +# for fd in self.iDevices: +# dev = self.iDevices[fd] +# cap = dev.capabilities() +# del cap[0] +# self.uDevices[fd] = UInput( +# cap, +# dev.name, +# #dev.info.vendor, +# #dev.info.product, +# #dev.version, +# #dev.info.bustype, +# #'/dev/uinput' +# ) +# dev.grab() for fd in self.iDevices: - dev = self.iDevices[fd] - cap = dev.capabilities() - del cap[0] - self.uDevices[fd] = UInput( - cap, - dev.name, - #dev.info.vendor, - #dev.info.product, - #dev.version, - #dev.info.bustype, - #'/dev/uinput' - ) - dev.grab() + self.uDevices[fd] = UInput.from_device(self.iDevices[fd].fn) + self.iDevices[fd].grab() def releaseDevices(self): for fd in self.iDevices: