kontaktformulartest


Dein Name (Pflichtfeld)

Deine E-Mail-Adresse (Pflichtfeld)

Adresse

Communities

Betreff

Deine Nachricht

Posted in Uncategorized | Leave a comment

Freifunk Communityübersicht erweitert

Dtabelle_suche_nach_ortie Communityübersicht auf http://community.freifunk.net ist eine unserer wichtigsten Seiten, die Menschen hilft, Freifunk Communities in der Umgebung zu finden oder überhaupt einen Überblick zu bekommen. Diese habe ich vor kurzem aktualisiert und mit neuen Funktionen versehen. Sowohl die Karte als auch die tabellarische Übersicht lassen sich als Shortcodes einbinden und durch Parameter anpassen. Beide Shortcodes sind im Plugin FF Communitymap zusammengefasst. Das Plugin ist im WordPress Plugin Directory auffindbar und kann so bequem installiert werden.

Die Neuerungen

  • Anzeige von Neuigkeiten und Terminen in der Karte auf den Popups pro Community
  • Karte und Tabelle sind konfigurierbar: Für die Karte kann man die Größe und den Mittelpunkt angeben, sie kann also auch Teilausschnitte für andere Regionen darstellen. Man kann außerdem die Darstellung der Karte selbst beeinflussen und viele weitere Details wie Länge und Anzahl der Neuigkeiten oder Events einstellen.tabelle_mobile
  • Das wichtigste neue Feature ist aber die Orts- bzw. Postleitzahlensuche. Sie ermöglicht die Einschränkung der Tabelle auf die nächsten Communities um einen Ort oder Postleitzahlenbereich herum.
  • Die Tabelle wird nun auch auf mobilen Endgeräten in einer lesbaren Form angezeigt. Dazu blenden wir Spalten aus, die dann bei Bedarf angezeigt werden können.

Werkzeuge

karte_popup_weimarnetzDie Shortcodes nutzen einige Werkzeuge, die im Umfeld der Freifunk API entstanden sind. Dazu gehören der Aggregator, der die einzelnen API-Files regelmäßig abholt und sie zu einer Datei zusammenfasst und in verschiedenen Formaten bereitstellt. Diese Datei wird beim Aufruf der Seite geladen und und insbesondere bei der Tabelle immer wieder verwendet. Außerdem wird der Feed-Aggregator benutzt, um die News je Community beim Aufruf des Popups zu laden und darzustellen. Zum Einsatz kommt auch der im letzten Jahr entwickelte ICS Merger, der die Kalenderfeeds der Communities zu einem einzelnen Feed verarbeitet. Die dabei entstandene Calendar API kann außerdem die Veranstaltungen pro Community herausgeben, die in den Popups auf der Karte auftauchen.

Das jQuery-Plugin footable nutzen wir, um die Tabelle zu erstellen. Es erlaubt eine Sortierung und das Aus- und Einblenden von Spalten abhängig von der Größe des Displays.

Für die Suche nach Orten, Adressen oder Postleitzahlen kommt die Nominatim API von OpenStreetmap zum Einsatz. Sie liefert zu einer Eingabe Geokoordinaten zurück, mit deren Hilfe die Entfernung zu den nächsten Communities bestimmt werden kann.  Um alles einfach zu halten verzichten wir bei uneindeutigen Angaben auf eine Auswahl, sondern zeigen das erste gefundene Ergebnis an. Falls der Ort nicht stimmt hilft eine detailliertere Angabe, z.B. die Ergänzung einer Postleitzahl oder einer Straße.

Posted in Software | Tagged , , , , | Leave a comment

ffmap

Shortcode ohne Optionen [ffcommunitymap]:

Shortcode 500px * 700 px [ffcommunitymap height=500px width=700px]

Shortcode quadratisch centered am Horn von Afrika [ffcommunitymap center=14,46 height=200px width=200px]

Shortcode mit andere Mapbox-Tile-Id:

Communitytable

Communities in deiner Nähe

Übersicht

Stadt/Region Name Firmware Routing Knoten Kontakt Entfernung

Dein Name (Pflichtfeld)

Deine E-Mail-Adresse (Pflichtfeld)

Adresse

Communities

Betreff

Deine Nachricht

Posted in Uncategorized | Leave a comment

How to renew your GPG key

Ana Beatriz Guerrero López wrote a very helpful article some years ago. Some steps aren’t necessary anymore, you can now create RSA keys for signing and encrypting in one step.

Right after creating my new key I followed the CACert Guide to get my new key signed by CACert. I had to split my key because I use multiple UIDs to get every single UID to be signed by CACert.

BTW: My public key is

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2

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
FQgJCgsCBBYCAwECHgECF4AACgkQgxno/i53XXYoGACgxnk2XnwjC1AuZMe/oRtP
0FhzrH4AoOr2PZcPEcJF7r1o69opT+MMiYDLtCdBbmRyZWFzIEJyw6R1IDxhbmRy
ZWFzLmJyYWV1QGFuZGk5NS5kZT6IYAQTEQIAIAUCSMY6/gIbAwYLCQgHAwIEFQII
AwQWAgMBAh4BAheAAAoJEIMZ6P4ud112VT8AoNwxxDhCiM14aeD7phqW3Wav1VId
AJ0aXQ/rtEb1iGz0Y4Kk/x1N2LzE/YhrBBARAgArBQJIxjhiBYMB4oUAHhpodHRw
Oi8vd3d3LmNhY2VydC5vcmcvY3BzLnBocAAKCRDSuw0BZdD9WF4aAJ9PHy4atKSM
CZNRVeVnNUr7LyWR0gCdENt+IqY2m7oUNMC6gYnn2nwdzu3R/wAAJYL/AAAlfQEQ
AAEBAAAAAAAAAAAAAAAA/9j/4AAQSkZJRgABAQEASABIAAD/7QA8UGhvdG9zaG9w
IDMuMAA4QklNBAQAAAAAAB8cAVoAAxslRxwCAAACAAIcAhkAC1Bob3RvIEJvb3Ro
AP/hAIBFeGlmAABNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsA
BQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAA
SAAAAAEAAqACAAQAAAABAAAA8KADAAQAAAABAAAAtAAAAAD/2wBDAAcFBQYFBAcG
BQYHBwcIChELCgkJChQODwwRGBUZGRgVFxcaHiYgGhwkHRcXIS0iJCcpKysrGiAv
Mi4pMiYqKyn/2wBDAQcHBwoJChMLCxMpGxcbKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSn/wAARCAC0APADASIAAhEBAxEB
/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUF
BAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcY
GRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqD
hIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW
19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAEC
AwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMi
MoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaan
qKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6
/9oADAMBAAIRAxEAPwD1W1u77VvDdyl1btbXZJiAYEZB+635H8xXCfGuZ7E6Rci+
u7JC/lyTWs3lPjP9705FesIWKAsMHuK4P4q6Fa65punxX141lCk+4yrEZDxg4wPX
FeQ1ZXZ1Rep5PJ4ouF0mY6R4o1ie42bV8zUvOzz/AHfLA/Wual1LXpLUh9b1ouR8
y+cdmfwf+lemRaP4GjTyDqkrEHJ/0MAn/wAdrRbwr4S1EZW7uOf+ednGP/ZahVLM
2seWeBtQ8RjxJHDpc0jKDiaORvvcehzX0Hpt5NFAp1JBE+Ofm46ZrjPDXgfR/DXi
Q6vb6pfzEvuEP2RVA4IxkH39K2NdvLJftmpTPrxtIIt0rRWwZIlC4PU+n86Umm7o
T1IfiXa6frPhl5Y7iAXVn+8h+YOD0ypUHoRxXjPhHxVdaRqtrLYysqwXEbPCSdso
BIwf5fgK9Ee40LUdCiv4bXxXPZ3jhIp4o0jVizbQBlj34rBbwxpFjcSW9l4U8S3F
xEBITc30MRxkkH7p7g01s7gjOl8QS69+0NoWp3EUULvPDGUjzjgbe9VfFnge6Xxh
qMkmq2oZ5mdtmSVJOcfWuh8F6JpmuS/8Jklg6R6TeorLLekupBByAqYOM9Ca2fHH
hnVhdahrWnpZX1vKJLvy/OMbxxgZORjk/Q1cpy0S3Ekrnl0+kNpNvI737XZdNoJH
3DkH+lbGgXchii/iYjnaOtMtbfWtXsWmGjWT24ETlXuyOJG2r0966j4e6R/b/izU
vDuqaHY20WmR/wCkNBOxYsfugHPIqJRlJO+5fMkaFpexBQszqrY6dT+lasXlMhkV
12g4JJxXQN4YsLOZkijlQL0UHj88VJdeF7OfRbp3RgwiYqS3cKSO1c6psOdHM6kg
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
BBYCAwECHgECF4AACgkQgxno/i53XXZ5FQCcD14xbQgAD5b+us2Cl6jIn0yicDwA
oMz+dgKS5Viqql4fhEhvtu3AIU79iGsEEBECACsFAkjGOGIFgwHihQAeGmh0dHA6
Ly93d3cuY2FjZXJ0Lm9yZy9jcHMucGhwAAoJENK7DQFl0P1Y5RMAn3X2bFUOg0Pb
CROXHut1hjGnwaooAJoDWdUgTbYiZfsPzWygjQOYLBrQ37QtQW5kcmVhcyBCcsOk
dSA8YW5kcmVhcy5icmFldUBtZWQudW5pLWplbmEuZGU+iGAEExECACACGwMGCwkI
BwMCBBUCCAMEFgIDAQIeAQIXgAUCSMY9dgAKCRCDGej+LndddhJeAKCsK0OW4QuW
zI1MuGXPldvXGCV2hgCg5BCPRCzb5yTGvozEg4kOKr+fz0mIYAQTEQIAIAUCSMVX
KQIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEIMZ6P4ud1122f0An12Cb/b2
+oiCBK8OlXLeKVUrvIG6AJ4u82Gkyi88CAr3Iahxrw/LobD1+YhrBBARAgArBQJI
xjhiBYMB4oUAHhpodHRwOi8vd3d3LmNhY2VydC5vcmcvY3BzLnBocAAKCRDSuw0B
ZdD9WHelAKCgZppu/eZh7oyA7h5P1+zoiHwyKgCgi4B0IC6ZfZ6aTzSGSz+r+vLc
QYy0NEFuZHJlYXMgQnLDpHUgPGFuZHJlYXMuYnJhZXVAaW5mb3JtYXRpay51bmkt
amVuYS5kZT6IRgQQEQIABgUCQ8kBnwAKCRBJRlfhUH3xcyD9AKCnA0TzTQkLub0D
NrcLUhw20WcfxwCgsWbe37VCW/VUDoPjg+Awxz9dGm6IRgQQEQIABgUCQ/NQmAAK
CRBWbTYs7gl36AhbAKCfS6MdLv7bn0ILvdRuHu7IwhT0pQCfZsepztX6BjamD74T
JDJILlhmX8mIRgQTEQIABgUCSEUDhwAKCRC6DJEvNu+5IWDVAJsFSmZCJIHAIgwC
EQnSlqINUbgltgCeNymha/ydY4D55/v+PBEa5mVUZMyISQQwEQIACQUCSMVXBAId
AAAKCRCDGej+LndddmvhAJ90lBjiGUHInjfaPFaqp8Cv5WWmcwCg2az0ulyzPoxq
6p0xrJhPYFE0oc2IWwQTEQIAGwUCQSOstgYLCQgHAwIDFQIDAxYCAQIeAQIXgAAK
CRCDGej+LndddoWCAKCIoSveh7Xioy5AIhCDZoGox02e7ACghqqN1Qf4W9QKlfKf
FR/uvBQ8Dz+5Ag0EQSOsvhAIANc30xRzgCuTU9PsYro9vFcIfxVKZQ6RUpGyEl74
uS+Kx7r8rcW1kVUznAuTh5/LDkKq7UMJuL1CX0tMJatCO5sT4PICJ1gido4gKamY
GH844ry3VkCfLbLm6opr4cF2Byl6kVn/sGUocCP+lyqSMn3Qa8UEakjLBTCW+SK0
iLxhJgwsxLzqIk4yxzp7sw3RyQmnIpvTT3fLezRguvR011gio4nA/YqVxEDdxqfg
IeW6Jr5Arp7It0v7Ju752pyFWZDZEcCUwTka0AGnIsIeP4rP0GBNBDJ7WcewX9Tj
QzukR6vJC9x+0dAS6hJqdFvWZ5Sa9jUyvzQSW7ogGSfIkMMAAwUIAJdi9bbSvUCQ
BuZDf+m6LGnxw+rhysNyT3hOu7WoTHTY0vs8tGW6lXIc61Y9aBkOEeNILLpwcrFj
n54iW8lvP8L3IJE7Qw3XpzFTllWpIXAUufKMnCbABUrnlWPY140idzRcOAG6fhhT
+LznteV1sTrrNXWDUVs+z5M9dnKP/lB9rDLoqJfgIzdHEqRhMFrbEh5V5Ta8aAEm
fBfAdjFyxck+zSDLPzlVT2dDqyJKHbBijf7zznXNOKKA0yFCcHaexsk9EXqKhI64
EBTKp13JJHJg+S+XO9fARvv977ziWJjjOodAm5o5wKeV/s0eYsmjfnSNfRxPS3WI
QvH6CEp1FOWIRgQYEQIABgUCQSOsvgAKCRCDGej+Lndddgo8AKC/4W+WAOUzJv/8
UlAtG72IxdiXpwCgiXhF4+fA3KGNNF2IuSeSAt5tuQ6ZAg0EVLTYcgEQAMD62Tgn
Pq3BHAWSQjssbTPK6Cd1Ozn5QVnrp6WtfKuKH3Pe0NO9eD5QTtm4ssxOG4DJ/dBJ
KZUBLhrC6m0fF/Xkb8ZbBvmDms9otH97qrftwZ/ASe9/pvz1WmAqgQNRrbYe27UL
Jq0DH0IHPl71b/Z3mrQUeM8B9RfM6H5Zn73qHjvQThJPH2utbUnGTAOlCFnyrqRx
HCbvBcnord/RiiANzzym6bH1enjfS8ousds+QytnJPHNg+N1yHhcQ6u9v5dn6jiK
lh4jh1sWDxYWYtVpmC7MMcAfeHHYsUZDyDdLFyqTq2G9fWNZvVNMDRnP+13ts7VA
Nwj3ctA+J5OVYtkugey3dEh9d8O5P+VxKnjzd8U+e+RtDEnY1mDJ0KdSek2H8LVB
nxdWgWRvPVGixmvK8UuculGcDjpzF2Evf8ikmqD6/hfyLuovdJVWg9cMTPt/oLoq
rHZ8i6jHd5UfP3OtjanFlxWAYH6z2IOP/XbvvYKadQ14d+rx5b8SGlh6EDG9hvmy
f1DCTMWfvxQHrSTgoFTuVC01wfBVtNkKW2ZdmSUFCwX9hhCd4zn+hub1rsAAmU9C
yz7fipuhctna/CKnnua5oW32tJBCOApmmjey3Qg22xai5B3K4pUflQ8dT/ONMb/a
TSqWS9d61gdMFxn5c3a8vhk5pCfNtBpADZdzABEBAAG0J0FuZHJlYXMgQnLDpHUg
PGFuZHJlYXMuYnJhZXVAYW5kaTk1LmRlPokCOgQTAQgAJAIbAwULCQgHAwUVCgkI
CwUWAgMBAAIeAQIXgAUCVLTbIQIZAQAKCRDP0n5Rt+BIGCR9EACBvODSaSrnPT/U
AhjZn2U8G+/2wJca4jEKCQ1LDNMPEt8rxeNGvy9nXhrMRgpOcRWOl8gt2zy5eGnt
hZ/VD2LJTyeZu9jRz//0EK28be0hppXw5n9jsPk9JK/KfEX3jwKtMac+4BNx4SIT
O6Cq1q6hT481W2eReCyISep3/kM3KbF1b06aZ2753KyOT//h4N/8pVwe8p3T1CTQ
fLehw8U6SrVqCSJ3OjhikTj9iGIV3W6GcV4npoSwMTIWPziLldwUlPCSqoObpxJw
sDLLd7ltZbnGVtlbore/wW/E3Px//rwvi8ZuhsbkxFCoqD5zwjmTOGysEzQugxb4
p+6AwRPdPs+A7dn1zNFE/v2TaqyuV+tEYI4KYZrwuSjMeLlXNgNdrAD90P43ylP9
pt/PSrr8I6mpItwHjqJl/BhcyiccPhEt0sb9Hvgwl7Iolhoe3ozIspoCXT30zP0E
h9p8zHfCpNGpTkaa0IvQPjDmS7+Q5KyaCtJ0IXkor+adfdxkMpuFiF5/S+jkJiVL
VKcdPXZKkaCRiVlEvR8l/QpH9h0C3+1T3t2wZCAoya+qJ7OgeNS1af374tsjVxox
HhdCe1nimulDQz8w/LuukVBn+4ZDQMn5CNcVkhrjUdmx5vTkLbr2uh3rNJpXrJn5
iL1eraypHzf7DADX4j3udHXndRtvPIhGBBARCAAGBQJUtNvJAAoJEIMZ6P4ud112
tckAoJx0dv03AKNQqPOjTMnjGMaeR7tJAKCDssnssi0vpiiCtu6khOtomknpBIhr
BBARAgArBQJUtOVgBYMB4oUAHhpodHRwOi8vd3d3LmNhY2VydC5vcmcvY3BzLnBo
cAAKCRDSuw0BZdD9WKJ5AKCL0u77zLGbaaoll1hUWQG/ST/ujgCglHLDQd0kOlLo
mfVy5aPs2pXhXSu0HEFuZHJlYXMgQnLDpHUgPGFiQGFuZGk5NS5kZT6JAjcEEwEI
ACEFAlS02HICGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQz9J+UbfgSBjv
iw//dCz38aSyeGiC78+39DtP7Q3cfMJwohS5Nin9sqIns9KjlD3l/YEo8NUUKhnF
pIVEE+Xg+ndyF7hTG4cE2xlDRLjb7YF0RVNqUQX2promjSRL48MAWfMZnLkGpjNd
Z87oVPknz9kV22/ixnS3z1z5Uf2EvDAz9w46b/3dQpAGIb1MM6IAUssIKzjCL+ji
AqCphVp6Urd1YtvUchuJOC4qR/3Mb5JRDr4OS1wJp3Y2rPHjZNWAr0OeWHnJddg5
VpebXifOAnh4o09vhHHNaYH1NUr5P2xwzks5x+mf14BfR9/M+XlbNAtvsxVSM5bT
aAjqQVe5CM5sNQRjZOwLJFPolV8L3ZNQccn36KGjFu5kumFkmcYelX6QNRE9QcBm
4CRpqsw9kqXnJqEtKW0wsa1WfAI2KR54rWaerexyhazPcO204eDKC5XsqGaYCLmM
LnQr4VVEybNhRj7vJfFEDD82GNPENBsNW/YCqlS7NPKuQpK9yQxkoFOXqjShyFw0
v3mq5fUXQQ7Eua3VRNHUMVzStkgUZ9QuiRHMyfI+1RZe1CCQr1rCLY7aYGUQSfGx
UDMczzjC/jbGo3AIsoDuRPRCUZYQ1oTJ0nK90fqrjLQJu6K0m1/Yc/e5Bunq6ooa
eUMBIjrftvuTw+4AwMSvV23a//F7qnlGHPZVHiudgTMDdHeIRgQQEQgABgUCVLTb
zgAKCRCDGej+LndddlMbAKDrSF2At9hqUoLHGrgCDeSCkNLWBQCfWFweOb/rIJH7
K3aA1EbHbO8f63SIawQQEQIAKwUCVLTmVAWDAeKFAB4aaHR0cDovL3d3dy5jYWNl
cnQub3JnL2Nwcy5waHAACgkQ0rsNAWXQ/ViKigCfZFFPdion8OjuMss25Kfvn3b3
Q8YAnjFqZa2tZfLp2XAuL3VM+2lq3tGztCFBbmRyZWFzIEJyw6R1IDxhbmRpQGph
LmlzaGFsdC5zbz6JAjcEEwEIACEFAlS02jwCGwMFCwkIBwMFFQoJCAsFFgIDAQAC
HgECF4AACgkQz9J+UbfgSBgOsw/+Oj1KPLEoYOVAQWBurOYSMej5XzA2iku9IvDO
h5SwOfJ0qU9PGYs2/qhAid1JyA+CiOrTFhN/qwdiTW23sODRkD2KJ3IYQVbgNHWu
lil7sN1ztkc4I31RUFTD5KnAU6f0CXErHS7A2i9OCK9BD9m0xJNqKXo12D2rbLIt
RzY9bjHmqhOSeteEnNBfbT8zvaG8igFNzvuxTQIsJREdS2U3yuj5+fC+h0QK3wlU
Dwzrog/16/auOmYV+p09kWGl1+1iSZWCka6gcStzZUHfaPhDMVHS821lIi9a8EBN
62yl43qdSDONvic6cOdYR0ktCJAed46jPuwcikFee2HUMfmwkC5Vc75J65QMfPYl
A1/82+oRyeyJ0woM+xN4a0ANPkCpbuqKuts+n8PVbiCHV53P6N4RyX5FKEBL6vLJ
F+v9cKXMD2aoRADNgG1+kVklTqK2xeE+rx5tk9vnQHibPxEhvlJDCtgNPeWmNssG
hUHRMjIPFG73GsQIjiWkSP7V43Gx1zOxanmYbpTFEvra2ib4GogGAsaArsJWmXQT
W545c8zN30PRJhgDJqkhLoOjmzwnsZRnkzVXIst7/vHpizDOxq5yaKaftNKBg+b2
/WLGj8knBi/qRcrjWSq1toaBxhybvj9rTebFIUX6/QyACpI8GQqFTBEGTcKSINlo
Ro1lyLqIRgQQEQgABgUCVLTbzgAKCRCDGej+Lnddds7UAJwM5BZFLewo/Hj9p3t7
uprC9qoWEgCgwjfWiZwH6VFPSnaUjXKH6M2i1+SIawQQEQIAKwUCVLTkEAWDAeKF
AB4aaHR0cDovL3d3dy5jYWNlcnQub3JnL2Nwcy5waHAACgkQ0rsNAWXQ/VgCeACd
E56EHWygdWFEQt4HWRfuhaeIytUAnjr0Qi0DHXxptT5ARgxMMBsMG1VruQINBFS0
2HIBEADRXjQsfl2M+oRP5WRhmmAcB1gYv5fSnminO0Ey9AriAFOHM0ed8ieKCKhc
6P0KZaILaGsyLHHeD9TUKzu55olOvQG1eG30RYTwQwE+XmlK8zvktb4BynICP4eb
7qEGZ8Vcboa3oyabXDOfUZ/9pY65DhxVmlbbqmMiKL04oc6ZXFrqk3c4cmnhDZm5
aXoDRiS411HGnmNyfNReYQ4FAWA+ScWNyhM0NovvrBnqir8IFM19qSOAZ+XowrXU
Hau7uBn42x05BXQoBmEea0y56PrwkgdvDeXsMwcxm6mfwWO5k/m9sdX+XwW9Rmnz
Va21R05eIY0xk1kNpiPCCL9dyCTyyBe9G/jpmCCXzMZs/ZSmCas0zbLYezO+r1FR
rvKz6zpYcUl1cjP0aX4qJ0gRERb6wlxCzapp8++VsU1CIfL5/wDBZ016V5nX6aaC
29Ete1xjYNpfjPB+Ttozflm/fa7uPkBKZZ0WkjpkF4CfLyvSZhBqCl3EtNkWAYtG
1yRnAhSC5cYk4xNgKFAv74WifBCy47dm4jm/m3pQoW2DLBrOg48AFfC2bRRMpC3h
djSv4vDz+bwaQa1UeV5bVejM6vYodjNaFrWrWJR+0NGa+6iMcb75uZnhKKWwh11g
g5kcj2ljtkYoMpLHNHSyoHLG+bBu+vf8voIQpMP5EJSF+ce9owARAQABiQIfBBgB
CAAJBQJUtNhyAhsMAAoJEM/SflG34EgYRWwQAIWiSo3EDt1bW8icyQE+ptEuxGzU
f3QbyTkhrHhwcG4qlrnSFKyQBS3ZYZT7scxsxA8yFynk4EtpEMgXsabBXqGCzcG1
I1KqNpPFgMNkDmi0sqMXV2l0Atn8+ntxC6Wq3fnMXWT7MSATZ5uIfkK6W2r60iqP
NfsA5f9AOe48ciquUvb4eQzM/32XHWpLB/3Glf8iVMfwaqfHXH0uIr+lFdsUGWo7
CuudcFOiZy8uWBEYIB9Lm8jITFTAtzhdC0q0mdWBokUxRVQkn+F+0BCZu5IwWkTA
p1q41fj36CZq26WrguA8FSFu02LhkyocTAAriGsZb+OXhZxTuA7wz8QUuBB/3SsD
pe1NZoGlzbHz6f0o/Vjvy9GVctWIQupnHcjRCUBlYaXUY9wH8vwuyzZm0i8NX7vk
KpUSIJynVFWDtDBmGiLsUDaHb5hfjQdP1ovCK+TmqR4sCJl1stc3Q3/4LfQ6PMJn
i5jtQSgdLb1V11NZtjnZ1IombyvmgCXF311xGL5bsoUtIknaqPUq7sTpQy3t/njp
tw3sJoZ9Qw/W2LTHQ+ilEzw5EbEcFLm3E9I+T6vuEn75bx/1aEjG4W6F1A6N0jzX
CM/lpbWNDnpxGpHIOdrqdYVRA0Ku0Ss4Uh8mSIe0tXPzqViq9EiU2pKeTPdCqJuZ
MDfxh2+JorXRGjVf
=wMjA
-----END PGP PUBLIC KEY BLOCK-----
Posted in Dateien, Kleinigkeiten | Leave a comment

GPS4CAM and Linux

GPS4CAM is a wonderful tool for geotagging photos taken with a camera without GPS support. You just install an app on our iPhone or Android device and then start a new trip. At the end of your trip you take a photo of one or more QRcode containing all your trip data. The Desktop App will later recognize those QRcodes and adds geotags to the photos.

The only thing I miss is desktop support for Linux. First of all I tried to start gps4cam with wine, but I didn’t get it to work as Java Libraries could not be found. Inspired by this error message I figured out gps4cam.exe as a self-extracting Jar file that could be run on Linux Desktops by typing

java -jar gps4cam.exe

gps4cam_start

Now gps4cam is running kind of natively on Linux. The next thing was to integrate all the tools gps4cam needs as everything was preconfigured expection tools in Windows Pathes. First of all you need to install dcraw and the perl based tool exiftool.

On Arch Linux type:

pacman -S dcraw perl-image-exiftool

On Debian or Ubuntu based systems type:

apt-get install dcraw libimage-exiftool-perl

Next step is to change the pathes in Preferences in gps4cam. On Arch Linux it looks like that:

gps4cam_preferences

Maybe you need to find the binaries on your system and adjust the locations.

Now you’ll be able to geotag your photos on Linux based systems, too. Enjoy!

 

Posted in Dateien | Tagged , , | Leave a comment

Feste dynamische IPs

DynDNS ist eine schöne Sache, wenn man Dienste hinter einem DSL-Anschluss anbieten will.

Möchte man seine DynDNS-Domain zur Steuerung von Zugriffsberechtigungen verwenden stößt man schnell an die Grenzen. Squid und iptables lösen den DNS-Namen zum Startzeitpunkt auf und arbeiten ab dann mit der IP weiter. xinetd geht sogar noch weiter und macht einen ReverseDNS-Lookup auf die eingehende IP und vergleich das Ergebnis mit der eingetragenen IP, den ReverseDNS-Eintrag kann man jedoch nur der Provider festlegen. Xinetd ist mit dynamischen IP-Adressen gar nicht nutzbar. Continue reading

Posted in Clouddienste, Kleinigkeiten | Tagged , , , , | Leave a comment

Vertraute Verbindung aus unsicheren Netzen

Warum?

Es ist sicher schon jedem passiert: Man befindet sich in einem unbekannten Netz, mag es in einem Café, ein offenes Netz in der Stadt oder auf Arbeit sein. Neben dem eigenen Sicherheitsgefühl nicht zu wissen, wer im Netz mithört, existiert ein solches oft auch auf Seiten des Netzbetreibers, der bestimmte Inhalte oder Teile des Internets sperrt.
Die eigene Sicherheit lässt sich bereits deutlich steigern, in dem man Ende-zu-Ende-Verschlüsselung benutzt, beispielsweise Seiten mit https aufruft, Email- und Chatverbindungen mit verschlüsselten Protokollen aufbaut. Doch das ist nicht immer möglich und gesperrte Inhalte sind noch immer nicht zugänglich. Continue reading

Posted in Kleinigkeiten | Leave a comment

Hello world!

In Kürze™ werden hier die ersten (hoffentlich hilfreichen) Beiträge landen, die über die Möglichkeiten zum Einsatz von Open Source Software berichten.

 

Posted in Uncategorized | Leave a comment