summaryrefslogtreecommitdiff
path: root/packages/scripts/resources/bin
diff options
context:
space:
mode:
authorYves Fischer <yvesf-git@xapek.org>2016-02-27 15:58:12 +0100
committerYves Fischer <yvesf-git@xapek.org>2016-02-27 15:58:12 +0100
commita307e0474e78c51590aeac95dbc5587a87ef6501 (patch)
treec5c7ca86b0b86704a4c1adc588e7ce249826e98f /packages/scripts/resources/bin
parent77955935e9549a847ae7e0d78819f090d429fdb6 (diff)
downloaddebian-packages-a307e0474e78c51590aeac95dbc5587a87ef6501.tar.gz
debian-packages-a307e0474e78c51590aeac95dbc5587a87ef6501.zip
refactor scripts packages
Diffstat (limited to 'packages/scripts/resources/bin')
-rwxr-xr-xpackages/scripts/resources/bin/dmenu-pass.sh40
-rwxr-xr-xpackages/scripts/resources/bin/dmenu-software.sh13
-rwxr-xr-xpackages/scripts/resources/bin/gnome-commands.md19
-rwxr-xr-xpackages/scripts/resources/bin/smtp-server.py20
-rwxr-xr-xpackages/scripts/resources/bin/telepath-setpresence.sh6
5 files changed, 98 insertions, 0 deletions
diff --git a/packages/scripts/resources/bin/dmenu-pass.sh b/packages/scripts/resources/bin/dmenu-pass.sh
new file mode 100755
index 0000000..bb3be7a
--- /dev/null
+++ b/packages/scripts/resources/bin/dmenu-pass.sh
@@ -0,0 +1,40 @@
+#!/usr/bin/env bash
+
+shopt -s nullglob globstar
+
+prefix=${PASSWORD_STORE_DIR-~/.password-store}
+password_files=( "$prefix"/**/*.gpg )
+password_files=( "${password_files[@]#"$prefix"/}" )
+password_files=( "${password_files[@]%.gpg}" )
+
+password=$(printf '%s\n' "${password_files[@]}" | dmenu "$@")
+
+[[ -n $password ]] || exit
+
+while true; do
+ pass show "$password" 2>&1 \
+ | sed -e 's/^pass:.*/pass: XXXX/' \
+ | xmessage -file - \
+ -buttons "Done:1,Copy 'login':2,Copy 'pass':3,Copy all:4" \
+ -default "Done" \
+ -nearmouse -timeout 10
+ case "$?" in
+ 2)
+ pass show "$password" 2>&1 \
+ | sed -ne 's/^login: \(.*\)/\1/p' \
+ | xclip -i -verbose -l 1 2>/dev/null
+ ;;
+ 3)
+ pass show "$password" 2>&1 \
+ | sed -ne 's/^pass: \(.*\)/\1/p' \
+ | xclip -i -verbose -l 1 2>/dev/null
+ ;;
+ 4)
+ pass show "$password" 2>&1 \
+ | xclip -i -verbose -l 1 2>/dev/null
+ ;;
+ *)
+ break
+ ;;
+ esac
+done
diff --git a/packages/scripts/resources/bin/dmenu-software.sh b/packages/scripts/resources/bin/dmenu-software.sh
new file mode 100755
index 0000000..bca5b54
--- /dev/null
+++ b/packages/scripts/resources/bin/dmenu-software.sh
@@ -0,0 +1,13 @@
+#!/bin/bash -l
+
+sysenv='System native environment'
+
+env=`(echo "$sysenv"; plain_list_envs) | dmenu`
+
+test -f "$HOME/.cache/dmenu_run" && rm -f "$HOME/.cache/dmenu_run"
+
+if [ "$env" == "$sysenv" ]; then
+ dmenu_run
+else
+ bash -l -c "activate $env; dmenu_run"
+fi
diff --git a/packages/scripts/resources/bin/gnome-commands.md b/packages/scripts/resources/bin/gnome-commands.md
new file mode 100755
index 0000000..56ff017
--- /dev/null
+++ b/packages/scripts/resources/bin/gnome-commands.md
@@ -0,0 +1,19 @@
+
+here=`dirname "$0"`
+here=`realpath "$here"`
+set -x
+dconf write /org/mate/marco/keybinding-commands/command-1 "'$here/telepath-setpresence.sh available'"
+dconf write /org/mate/marco/global-keybindings/run-command-1 "'<Super>n'"
+
+dconf write /org/mate/marco/keybinding-commands/command-2 "'$here/telepath-setpresence.sh busy'"
+dconf write /org/mate/marco/global-keybindings/run-command-2 "'<Super>b'"
+
+dconf write /org/mate/marco/keybinding-commands/command-3 "'mate-terminal'"
+dconf write /org/mate/marco/global-keybindings/run-command-3 "'<Super>Return'"
+
+dconf write /org/mate/marco/keybinding-commands/command-4 "'$here/dmenu-software.sh'"
+dconf write /org/mate/marco/global-keybindings/run-command-4 "'<Super>c'"
+
+dconf write /org/mate/marco/keybinding-commands/command-5 "'$here/dmenu-pass.sh'"
+dconf write /org/mate/marco/global-keybindings/run-command-5 "'<Super>p'"
+
diff --git a/packages/scripts/resources/bin/smtp-server.py b/packages/scripts/resources/bin/smtp-server.py
new file mode 100755
index 0000000..1cfef81
--- /dev/null
+++ b/packages/scripts/resources/bin/smtp-server.py
@@ -0,0 +1,20 @@
+#!/usr/bin/env python
+import sys, os, mailbox, email, smtpd, asyncore
+
+class MaildirServer(smtpd.PureProxy):
+ def __init__(self, localaddr, remoteaddr):
+ smtpd.SMTPServer.__init__(self, localaddr, remoteaddr)
+ self.maildir = mailbox.Maildir("./Maildir", create=True)
+ def _deliver(self, mailfrom, rcpttos, data):
+ mail = email.message_from_string(data)
+ maildirMail = Message(mail)
+ self.maildir.add(maildirMail)
+
+if __name__ == '__main__':
+ muttrc = os.path.join(os.path.dirname(__file__), "muttrc")
+ print("Use `mutt -F {}' to read mails".format(muttrc))
+ smtpd.DEBUGSTREAM = sys.stderr
+ server = MaildirServer(("0.0.0.0", 8025), (None, None))
+ asyncore.loop()
+
+# vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4
diff --git a/packages/scripts/resources/bin/telepath-setpresence.sh b/packages/scripts/resources/bin/telepath-setpresence.sh
new file mode 100755
index 0000000..5187bb6
--- /dev/null
+++ b/packages/scripts/resources/bin/telepath-setpresence.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+# $1 can be 'available' or 'busy' or ?
+qdbus org.freedesktop.Telepathy.Connection.haze.sipe.yves_2efischer_40cern_2ech_2cyfischer \
+ /org/freedesktop/Telepathy/Connection/haze/sipe/yves_2efischer_40cern_2ech_2cyfischer \
+ org.freedesktop.Telepathy.Connection.Interface.SimplePresence.SetPresence \
+ "$1" ""