diff --git a/fhem/contrib/debianfhemde/README b/fhem/contrib/debianfhemde/README new file mode 100644 index 000000000..4427ac381 --- /dev/null +++ b/fhem/contrib/debianfhemde/README @@ -0,0 +1,97 @@ +-------------------------------------------------------------------------------- + +Nutzung der Skripte zur Erstellung und Pflege von http://debian.fhem.de + +$Id:$ + +-------------------------------------------------------------------------------- + +Annahmen: + +1. der gesamte Ordner liegt im home-Verzeichnis eines Linux Users +2. der Linux User benötigt root-Rechte auf die Befehle rm und chown + Eintrag in /etc/sudoers für user debianfhemde: + debianfhemde ALL = NOPASSWD: /bin/chown, /bin/rm + +3. der gpg key für das Signieren wurde erstellt + $ gpg --gen-key + + und der öffentliche Teil wurde nach ./debianfhemde/archive.key exportiert + $ gpg --armor --export "" > ~/debianfhemde/archive.key + + Tipp: Man sollte auch eine Widerrufsurkunde erstellen und sicher verwahren: + $ gpg --output revoke.asc --gen-revoke "" + +-------------------------------------------------------------------------------- + +Erstellung des stable Repository + +1. das aktuelle fhem.deb muss von http://fhem.de geladen werden, + diese Datei kommt in das Verzeichnis ./debianfhemde/stable + +2. die Datei muss auch in ./debianfhemde verfügbar sein, + entweder als symlink auf die Datei in stable oder als Kopie + (AWS S3 unterstützt beispielsweise keine Links!) + +3. ./scripts/mkfhemstable muss einmalig ausgeführt werden + +-------------------------------------------------------------------------------- + +Erstellung des nightly Repository + +1. fhem muss erstmalig manuell aus SVN nach fhem.svn ausgecheckt werden + +2. in ./scripts/mkfhemnightly muss am Ende des Skripts die Synchronisation geprüft und ggf. angepaßt werden + +3. ./scripts/mkfhemnightly einmalig ausführen, um alle benötigten Dateien initial zu erstellen + und um zu testen, ob der gesamte Ablauf korrekt funktioniert + +4. cronjob einplanen, um die Generierung täglich auszuführen + (Empfehlung: morgens um 8 Uhr, damit das nightly build weitestgehend mit dem offiziellen update übereinstimmt) + +-------------------------------------------------------------------------------- + +Komplette Baumstruktur: + +debianfhemde/ +|-- archive.key +|-- fhem-5.8.deb +|-- grafik +| |-- favicon.ico +| `-- fhemicon.png +|-- html +| |-- default.html +| |-- gpg_trouble.html +| |-- https_trouble.html +| |-- manual.html +| |-- nightly.html +| `-- stable.html +|-- index.html +|-- nightly +| |-- Packages +| |-- Release +| |-- Release.gpg +| `-- fhem-5.8.deb +|-- robots.txt +|-- stable +| |-- Packages +| |-- Release +| |-- Release.gpg +| `-- fhem-5.8.deb +`-- style + `-- style.css +scripts/ +|-- mkfhemnightly +|-- mkfhemstable +`-- templates + |-- index.template + |-- major.shtml + |-- manual.template + |-- nightly.template + `-- nversion.shtml + +-------------------------------------------------------------------------------- + +2017-02-25 - betateilchen + +-------------------------------------------------------------------------------- diff --git a/fhem/contrib/debianfhemde/debianfhemde/grafik/favicon.ico b/fhem/contrib/debianfhemde/debianfhemde/grafik/favicon.ico new file mode 100644 index 000000000..0c9725f4b Binary files /dev/null and b/fhem/contrib/debianfhemde/debianfhemde/grafik/favicon.ico differ diff --git a/fhem/contrib/debianfhemde/debianfhemde/grafik/fhemicon.png b/fhem/contrib/debianfhemde/debianfhemde/grafik/fhemicon.png new file mode 100755 index 000000000..3a1223a28 Binary files /dev/null and b/fhem/contrib/debianfhemde/debianfhemde/grafik/fhemicon.png differ diff --git a/fhem/contrib/debianfhemde/debianfhemde/html/default.html b/fhem/contrib/debianfhemde/debianfhemde/html/default.html new file mode 100755 index 000000000..953626868 --- /dev/null +++ b/fhem/contrib/debianfhemde/debianfhemde/html/default.html @@ -0,0 +1,21 @@ + + + + + + + + + +

Several ways to install FHEM on Debian-based systems

+ + All procedures are intended to create FHEM installations from scratch.
+ Do not use these procedures for updates/upgrades!
+
+gpg key changed on 2016-12-26,
+see section "gpg key Trouble" in navigation bar for further details.
+ + + diff --git a/fhem/contrib/debianfhemde/debianfhemde/html/gpg_trouble.html b/fhem/contrib/debianfhemde/debianfhemde/html/gpg_trouble.html new file mode 100755 index 000000000..7167b1e3c --- /dev/null +++ b/fhem/contrib/debianfhemde/debianfhemde/html/gpg_trouble.html @@ -0,0 +1,43 @@ + + + + + + + + + + + +

Having trouble in use of apt-get update?

+ + + + +
+ + + diff --git a/fhem/contrib/debianfhemde/debianfhemde/html/https_trouble.html b/fhem/contrib/debianfhemde/debianfhemde/html/https_trouble.html new file mode 100755 index 000000000..9cf4071a6 --- /dev/null +++ b/fhem/contrib/debianfhemde/debianfhemde/html/https_trouble.html @@ -0,0 +1,28 @@ + + + + + + + + + + + +

Having trouble when connecting apt via https?

+ +
+ + + diff --git a/fhem/contrib/debianfhemde/debianfhemde/html/stable.html b/fhem/contrib/debianfhemde/debianfhemde/html/stable.html new file mode 100755 index 000000000..355d1bac5 --- /dev/null +++ b/fhem/contrib/debianfhemde/debianfhemde/html/stable.html @@ -0,0 +1,30 @@ + + + + + + + + + + + +

Use aptitude to install fhem (stable package from current release) and all dependencies

+ +
+ + + diff --git a/fhem/contrib/debianfhemde/debianfhemde/nightly/.gitkeep b/fhem/contrib/debianfhemde/debianfhemde/nightly/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/fhem/contrib/debianfhemde/debianfhemde/robots.txt b/fhem/contrib/debianfhemde/debianfhemde/robots.txt new file mode 100644 index 000000000..6ffbc308f --- /dev/null +++ b/fhem/contrib/debianfhemde/debianfhemde/robots.txt @@ -0,0 +1,3 @@ +User-agent: * +Disallow: / + diff --git a/fhem/contrib/debianfhemde/debianfhemde/stable/.gitkeep b/fhem/contrib/debianfhemde/debianfhemde/stable/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/fhem/contrib/debianfhemde/debianfhemde/style/style.css b/fhem/contrib/debianfhemde/debianfhemde/style/style.css new file mode 100755 index 000000000..3d59067f9 --- /dev/null +++ b/fhem/contrib/debianfhemde/debianfhemde/style/style.css @@ -0,0 +1,80 @@ +body { background-color: #FFFFE7; + font-family:Arial, sans-serif; font-size:16px;} +input { font-family:Arial, sans-serif; font-size:16px; } +select { font-family:Arial, sans-serif; font-size:16px; } + +#aws { margin-top:10px; margin-left:30px; width:120px; height:45px; + content:url(../grafik/aws.png); } +#logo { margin-top:10px; margin-left:30px; width:120px; height:132px; + background-image:url(../grafik/fhemicon.png); } +#menu { margin-top:10px; margin-left:20px; width:140px; } +#menuScrollArea { width: 175px; left:0px; top:0px; height:100%; + position:fixed; overflow-x:hidden; overflow-y:auto; } + +#hdr { position:absolute; top:10px; left:180px; } +#content { position:absolute; top:50px; left:180px; bottom:20px; right:10px; } + +#connect_err { background-color: #000000; color: #FFFFFF; + position:absolute; top:0px; left:40px; z-index: 10; } +.devType { padding-top:20px; } + +a { color: #278727; } +p.a { color: #278727; } + +img { border-style: none; } + +.wide { width:100%; } + +table.block { border:1px solid gray; background: #F8F8E0; } +table.block tr.odd { background: #F0F0D8; } +table.block tr.sel { background: #F0F0D8; } +table { border-radius:8px; } + +table.room { border:1px solid gray; width: 100%; background: #D7FFFF; } +table.room tr.sel { background: #A0FFFF; } + +#right { position:absolute; top:0px; left:180px; width:80%; height:100%; } + +h2,h3,h4 { color:#52865D; line-height:1.3; + margin-top:1.5em; font-family:Arial,Sans-serif; } +div.dist { padding-top:0.3em; } +div.clock { } +button.dist { margin:10px; background:transparent; border:0px; cursor:pointer; } + +a img { border-style:none; } +.col2 { text-align:center; } + +/* detail-selector & slider */ +.makeTable { display:inline; float:left; clear:left; + margin-top:10px; margin-bottom:20px;} +.makeSelect { display:inline; float:left; clear:left; } + +select { margin-left:5px; margin-right:5px; } +.get,.set,.attr { margin-bottom:5px; float:left; } +.slider { float:left; width:250px; height:26px; } + +/* detail only */ +.makeSelect .slider {background:#F0F0D8; border-radius:8px;} + +/* timepicker */ +.set .set { margin-bottom:2px; margin-top:3px; } + +.handle { position:relative; cursor:pointer; width:50px; + height:20px; line-height:20px; + -webkit-user-select:none; -moz-user-select:none; -user-select:none; + border:3px solid; color:#278727; text-align:center; } +.downText { margin-top:2px; } + +pre { white-space: pre-wrap; } + +svg { height:32px; width:32px; fill:#278727; } +svg.on,svg.FS20_on { fill:orange; } + +/* next lines are for remotecontrol */ +.rc_body { border-style: solid; border-color: gray; border-width: 2px; padding: 5px; + background: #C8C8B0; font-size:6px;} +.rc_button { padding: 5px 7px;} +.rc_button img { border-style: solid; border-width: 1px; border-color: transparent; } +.rc_button img:active { border-color: gray; } + +.changed { color:red; } diff --git a/fhem/contrib/debianfhemde/scripts/mkfhemnightly b/fhem/contrib/debianfhemde/scripts/mkfhemnightly new file mode 100755 index 000000000..6f42fc2a9 --- /dev/null +++ b/fhem/contrib/debianfhemde/scripts/mkfhemnightly @@ -0,0 +1,63 @@ +#!/bin/sh +# +# create nightly build and transfer it to static webspace +# (C) 2013-2017 betateilchen +# + +clear + +# remove old version infos +# +rm ~/scripts/templates/nversion.shtml +rm ~/scripts/templates/major.shtml + + +# update svn repo +# +cd ~/fhem.svn +svn update + + +# replace version infos in various html files +# because Amazon S3 does not support shtml +# +svn info | grep 'Revision' | awk '{ print $2; }' > ~/scripts/templates/nversion.shtml +cat Makefile |grep '^VERS=' |sed 's/VERS=//' |sed 's/\r//' > ~/scripts/templates/major.shtml + +cd ~/scripts +cp templates/index.template index.html +sed -i s/==MINOR==/`cat templates/nversion.shtml`/g index.html +mv index.html ../debianfhemde/ + +cp templates/nightly.template nightly.html +sed -i s/==MAJOR==/`cat templates/major.shtml`/g nightly.html +sed -i s/==MINOR==/`cat templates/nversion.shtml`/g nightly.html +mv nightly.html ../debianfhemde/html/ +B +cp templates/manual.template manual.html +sed -i s/==MAJOR==/`cat templates/major.shtml`/g manual.html +mv manual.html ../debianfhemde/html/ + + +# build nightly deb package +# +cd ~/fhem.svn +make deb +mv fhem-5.8.deb ~/debianfhemde/nightly + + +# create package informations for aptitude +# and sign all the stuff +# +cd ~/debianfhemde/nightly +apt-ftparchive packages . > Packages +apt-ftparchive release . > Release +gpg --batch --yes --passphrase anton1142 --output Release.gpg -bas Release + +# sync to Amazon S3 Instance +# +cd ~/debianfhemde +aws s3 sync . s3://debian.fhem.de --delete + +### + diff --git a/fhem/contrib/debianfhemde/scripts/mkfhemstable b/fhem/contrib/debianfhemde/scripts/mkfhemstable new file mode 100755 index 000000000..2c5a758b0 --- /dev/null +++ b/fhem/contrib/debianfhemde/scripts/mkfhemstable @@ -0,0 +1,6 @@ +#!/bin/sh + +cd ~/debianfhemde/stable +apt-ftparchive packages . > Packages +apt-ftparchive release . > Release +gpg --batch --yes --passphrase anton1142 --output Release.gpg -bas Release diff --git a/fhem/contrib/debianfhemde/scripts/templates/index.template b/fhem/contrib/debianfhemde/scripts/templates/index.template new file mode 100755 index 000000000..c947f37fb --- /dev/null +++ b/fhem/contrib/debianfhemde/scripts/templates/index.template @@ -0,0 +1,53 @@ + + +FHEM for Debian + + + + + + + + + + + + + + diff --git a/fhem/contrib/debianfhemde/scripts/templates/manual.template b/fhem/contrib/debianfhemde/scripts/templates/manual.template new file mode 100755 index 000000000..2df47b6e3 --- /dev/null +++ b/fhem/contrib/debianfhemde/scripts/templates/manual.template @@ -0,0 +1,32 @@ + + + + + + + + + + + +

Manual installation from console

+ +
+ + + diff --git a/fhem/contrib/debianfhemde/scripts/templates/nightly.template b/fhem/contrib/debianfhemde/scripts/templates/nightly.template new file mode 100755 index 000000000..9771c066b --- /dev/null +++ b/fhem/contrib/debianfhemde/scripts/templates/nightly.template @@ -0,0 +1,33 @@ + + + + + + + + + + + +

Nightly builds (use it at your own risk!)

+ +
+ +