Christoph https://christoph-polcin.com/ first-name@family-name.de Christoph Polcin tag:christoph-polcin.com,2011-06-11:/atom/ https://christoph-polcin.com/favicon.ico https://christoph-polcin.com/feed-logo.png 2017-11-25T21:00:00Z acrylamid Pagan tag:christoph-polcin.com,2017-11-25:/2017/11/25/pagan 2017-11-25T21:00:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="https://christoph-polcin.com/sketches/20171125-pagan.jpg"><img alt="Pagan" src="https://christoph-polcin.com/sketches/thumbs/20171125-pagan.jpg" title="Strum"/></a></p> <p><center>Here we dance on the grave<br> of the nothingness they've created:<br> There is no evil nor good.<br> Better back in chains than being saved.<br> <br> Inspired by <a href="https://magdalenemagdalene.bandcamp.com/track/pagan">Magdalene - Sail with the tide</a> </center></p> Kleinzschocher ist schraeg tag:christoph-polcin.com,2017-11-23:/2017/11/23/kleinzschocher-ist-schraeg 2017-11-23T21:00:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><center><a href="https://christoph-polcin.com/sketches/20171123-kleinzschocher_ist_schraeg.jpg"><img alt="Kleinzschocher ist schraeg" src="https://christoph-polcin.com/sketches/thumbs/20171123-kleinzschocher_ist_schraeg.jpg" title="Kleinzschocher ist Schraeg"/></a></center></p> Sturm tag:christoph-polcin.com,2017-11-22:/2017/11/22/sturm 2017-11-22T21:00:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="https://christoph-polcin.com/sketches/20171122-sturm.jpg"><img alt="Sturm" src="https://christoph-polcin.com/sketches/thumbs/20171122-sturm.jpg" title="Strum"/></a></p> Heiszeluft tag:christoph-polcin.com,2017-11-20:/2017/11/20/heiszeluft 2017-11-20T21:00:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><center><a href="https://christoph-polcin.com/sketches/20171120-heiszeluft.jpg"><img alt="Heiszeluft" src="https://christoph-polcin.com/sketches/thumbs/20171120-heiszeluft.jpg" title="Heiszeluft"/></a></center></p> Gefangen tag:christoph-polcin.com,2017-11-18:/2017/11/18/gefangen 2017-11-18T21:05:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="https://christoph-polcin.com/sketches/20171118-gefangen.jpg"><img alt="Gefangen" src="https://christoph-polcin.com/sketches/thumbs/20171118-gefangen.jpg" title="Gefangen"/></a></p> Chemnitzer Linux-Tage 2015 mit Gentoo tag:christoph-polcin.com,2015-03-19:/2015/03/19/chemnitzer-linux-tage-2015-mit-gentoo-linux 2015-03-19T09:00:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="http://gentoo.org/" title="gentoo linux">Gentoo Linux</a> ist bei den <a href="https://chemnitzer.linux-tage.de/2015/de" title="Chemnitzer Linux-Tage 2015">Chemnitzer Linux-Tagen</a> am Samstag 21. und Sonntag 22. März 2015 mit einem Stand vertreten. Es gibt unter anderem Gentoo-T-Shirts, Lanyards und Buttons zum selbst kompilieren.</p> <p>Wir freuen uns euch zu sehen.</p> My PDF attach_files script tag:christoph-polcin.com,2014-10-05:/2014/10/05/pdf-attatch-files-script 2014-10-05T13:40:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="http://en.wikipedia.org/wiki/Portable_Document_Format">pdftk</a> is a awesome toolkit to modify <a href="http://en.wikipedia.org/wiki/Portable_Document_Format">PDF</a> files. The shell script below converts a input file to a PDF file with the help of Open- or LibreOffice and attaches the source to the end of the output file. It does an additional convertion if the input file is a <code>docx</code>, <code>rft</code> or <code>txt</code> file.</p> <!-- highlight: lang-sh --> <table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55</pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="ch">#!/bin/sh</span> <span class="c1"># http://christoph-polcin.com/</span> <span class="nv">TMP</span><span class="o">=</span>/tmp <span class="o">[</span> <span class="nv">$#</span> -lt <span class="m">1</span> <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="se">\</span> <span class="nb">echo</span> <span class="s2">&quot;usage: </span><span class="k">$(</span>basename <span class="nv">$0</span><span class="k">)</span><span class="s2"> input_file [output.pdf]&quot;</span> <span class="o">&amp;&amp;</span> <span class="se">\</span> <span class="nb">exit</span> <span class="m">1</span> <span class="o">[</span> ! -f <span class="s2">&quot;</span><span class="nv">$1</span><span class="s2">&quot;</span> <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="se">\</span> <span class="nb">echo</span> <span class="s2">&quot;input file not found: </span><span class="nv">$1</span><span class="s2">&quot;</span> <span class="o">&amp;&amp;</span> <span class="se">\</span> <span class="nb">exit</span> <span class="m">1</span> <span class="nv">IN</span><span class="o">=</span><span class="nv">$1</span> <span class="nv">NAME</span><span class="o">=</span><span class="k">$(</span><span class="nb">echo</span> -n <span class="s2">&quot;</span><span class="nv">$IN</span><span class="s2">&quot;</span> <span class="p">|</span> sed <span class="s1">&#39;s/\.[^\.]*$//&#39;</span><span class="k">)</span> <span class="k">if</span> <span class="o">[</span> <span class="nv">$#</span> -gt <span class="m">1</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span> <span class="nv">OUT</span><span class="o">=</span><span class="nv">$2</span> <span class="k">else</span> <span class="nv">OUT</span><span class="o">=</span>./<span class="si">${</span><span class="nv">NAME</span><span class="si">}</span>.pdf <span class="k">fi</span> <span class="o">[</span> -e <span class="s2">&quot;</span><span class="nv">$OUT</span><span class="s2">&quot;</span> <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="se">\</span> <span class="nb">echo</span> <span class="s2">&quot;output already exists: </span><span class="nv">$OUT</span><span class="s2">&quot;</span> <span class="o">&amp;&amp;</span> <span class="se">\</span> <span class="nb">exit</span> <span class="m">1</span> <span class="k">if</span> which libreoffice &gt;/dev/null<span class="p">;</span> <span class="k">then</span> <span class="nv">CONVERTER</span><span class="o">=</span>libreoffice <span class="k">else</span> <span class="nv">CONVERTER</span><span class="o">=</span>openoffice <span class="k">fi</span> <span class="nv">EXT</span><span class="o">=</span><span class="k">$(</span><span class="nb">echo</span> -n <span class="s2">&quot;</span><span class="nv">$IN</span><span class="s2">&quot;</span> <span class="p">|</span> sed <span class="s1">&#39;s/^.*\.//;s/.*/\L&amp;/&#39;</span><span class="k">)</span> <span class="k">case</span> <span class="s2">&quot;</span><span class="nv">$EXT</span><span class="s2">&quot;</span> in pdf<span class="o">)</span> <span class="nb">echo</span> <span class="s2">&quot;inputfile is already a pdf: </span><span class="nv">$IN</span><span class="s2">&quot;</span> <span class="nb">exit</span> <span class="m">1</span> <span class="p">;;</span> docx<span class="p">|</span>rtf<span class="p">|</span>txt<span class="o">)</span> <span class="nv">$CONVERTER</span> --convert-to odt --headless --outdir <span class="si">${</span><span class="nv">TMP</span><span class="si">}</span> <span class="s2">&quot;</span><span class="nv">$IN</span><span class="s2">&quot;</span> <span class="nv">IN</span><span class="o">=</span><span class="si">${</span><span class="nv">TMP</span><span class="si">}</span>/<span class="si">${</span><span class="nv">NAME</span><span class="si">}</span>.odt <span class="p">;;</span> *<span class="o">)</span> <span class="p">;;</span> <span class="k">esac</span><span class="p">;</span> <span class="nv">$CONVERTER</span> --convert-to pdf --headless --outdir <span class="si">${</span><span class="nv">TMP</span><span class="si">}</span> <span class="s2">&quot;</span><span class="nv">$IN</span><span class="s2">&quot;</span> pdftk <span class="s2">&quot;</span><span class="si">${</span><span class="nv">TMP</span><span class="si">}</span><span class="s2">/</span><span class="si">${</span><span class="nv">NAME</span><span class="si">}</span><span class="s2">.pdf&quot;</span> <span class="se">\</span> attach_files <span class="s2">&quot;</span><span class="nv">$IN</span><span class="s2">&quot;</span> topage end <span class="se">\</span> output <span class="s2">&quot;</span><span class="nv">$OUT</span><span class="s2">&quot;</span> rm -f <span class="s2">&quot;</span><span class="si">${</span><span class="nv">TMP</span><span class="si">}</span><span class="s2">/</span><span class="si">${</span><span class="nv">NAME</span><span class="si">}</span><span class="s2">.pdf&quot;</span> <span class="nb">echo</span> output: <span class="si">${</span><span class="nv">OUT</span><span class="si">}</span> </pre></div> </td></tr></table> My Libreoffice Concatenate Cells Macro tag:christoph-polcin.com,2014-09-30:/2014/09/30/libreoffice-concatenate-cells-macro 2014-09-30T16:40:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="http://www.libreoffice.org/">LibreOffice</a> is a modern heavyweight, formerly <a href="http://www.openoffice.org/">OpenOffice</a>. The built-in <code>CONCATENATE</code> function accepts only single cells as arguments but not a range of cells. This has always bugged me. To concatenate a range of cells you must create a macro, which does the work for you. Afterwards you can use the function across your document. <a href="http://www.pitonyak.org/">Andrew Pitonyak</a> has written a nice and profound <a href="http://www.pitonyak.org/oo.php">macro documentation</a> for OpenOffice, which is available as <a href="http://www.hentzenwerke.com/catalog/oome.htm">book</a> too. These docs will also work for LibreOffice. Likewise, the <a href="http://www.libreoffice.org/get-help/documentation/">official documentation</a> is a good starting point.</p> <p>To create custom macros you need to open a document and execute <code>Tool &gt; Macros &gt; Organize Macros &gt; LibreOffice Basic</code> from the application menu. Select your document, create a new module and paste the snippet. Save the document and close the window. Now you can use <code>=MyConcat($A1:$A99, "; ")</code> or <code>=MyConcat($A1:$F1)</code> to concatenate a range of cells.</p> <!-- highlight: lang-basic --> <div class="highlight"><pre><span></span>REM ***** BASIC ***** Sub Main End Sub Function MyConcat(arr(), Optional sep as String) as String Dim i as String Dim r as String Dim s as String If Not IsMissing (sep) Then s = sep Else s = &quot;, &quot; EndIf r = &quot;&quot; For Each i In arr() If i &lt;&gt; &quot;&quot; Then r = r &amp; i &amp; s EndIf Next i If Len(r) &gt; Len(s) Then r = Left(r, Len(r)-Len(s)) EndIf MyConcat = r End Function </pre></div> WRTNode Ausgepackt tag:christoph-polcin.com,2014-09-18:/2014/09/18/wrtnode-unboxing 2014-09-18T17:01:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p>Endlich etwas Zeit gefunden, um den kleinen <a href="http://wrtnode.com/">WRTnode</a> zumindest einmal auszupacken. Für 25$ gibts ein Hacker freundliches <a href="http://www.anz.ru/files/mediatek/MT7620_Datasheet.pdf">MIPS</a> Board mit 600 Mhz, 512Mb RAM, WLAN 802.11n, 23 GPIO-Ports, sowie JTAG, SPI, I2C, Uart Lite und USB 2.0 HOST Schnittstelle. <a href="https://github.com/WRTnode">Quellcode</a> und <a href="http://cn.wrtnode.com/w/wp-content/uploads/2014/05/WRTnode_sch_v01.pdf">Schaltbild</a> stehen frei zur Verfügung. U-Boot und ein angepasstes <a href="https://openwrt.org/">Open Wrt</a> Linux mit einem 3.10er Kernel treiben die 4.5 x 5.0 cm Platine an. Das <a href="http://wiki.wrtnode.com/">Wiki</a> ist ein guter Startpunkt.</p> <figure class="gallery"> <a href="https://christoph-polcin.com/images/2014-wrtnode/00-wrtnode.jpg" class="thumb first "> <img src="https://christoph-polcin.com/images/2014-wrtnode/thumbs/00-wrtnode.jpg" alt="00-wrtnode.jpg"/> </a><a href="https://christoph-polcin.com/images/2014-wrtnode/01-wrtnode.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/2014-wrtnode/thumbs/01-wrtnode.jpg" alt="01-wrtnode.jpg"/> </a><a href="https://christoph-polcin.com/images/2014-wrtnode/02-wrtnode.jpg" class="thumb last"> <img src="https://christoph-polcin.com/images/2014-wrtnode/thumbs/02-wrtnode.jpg" alt="02-wrtnode.jpg"/> </a> </figure> DIY Kinderherd tag:christoph-polcin.com,2014-09-13:/2014/09/13/diy-kinderherd 2014-09-13T15:25:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p>Eine Holzkiste, Schaniere, Schrauben, Farbe, Holzreste, Drehregler vom Schrottcontainer, Werkzeug und ein wenig Zeit.</p> <figure class="gallery"> <a href="https://christoph-polcin.com/images/2014-diy-kinderherd/00-diy-kinderherd.jpg" class="thumb first "> <img src="https://christoph-polcin.com/images/2014-diy-kinderherd/thumbs/00-diy-kinderherd.jpg" alt="00-diy-kinderherd.jpg"/> </a><a href="https://christoph-polcin.com/images/2014-diy-kinderherd/01-diy-kinderherd.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/2014-diy-kinderherd/thumbs/01-diy-kinderherd.jpg" alt="01-diy-kinderherd.jpg"/> </a><a href="https://christoph-polcin.com/images/2014-diy-kinderherd/02-diy-kinderherd.jpg" class="thumb last"> <img src="https://christoph-polcin.com/images/2014-diy-kinderherd/thumbs/02-diy-kinderherd.jpg" alt="02-diy-kinderherd.jpg"/> </a> </figure> Fluff Fest 2014 tag:christoph-polcin.com,2014-07-27:/2014/07/27/fluff-fest-2014 2014-07-27T21:59:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <figure class="gallery"> <a href="https://christoph-polcin.com/images/2014-fluff-fest/00-laa-aeroklub-rokycany.jpg" class="thumb first "> <img src="https://christoph-polcin.com/images/2014-fluff-fest/thumbs/00-laa-aeroklub-rokycany.jpg" alt="00-laa-aeroklub-rokycany.jpg"/> </a><a href="https://christoph-polcin.com/images/2014-fluff-fest/01-vestiges.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/2014-fluff-fest/thumbs/01-vestiges.jpg" alt="01-vestiges.jpg"/> </a><a href="https://christoph-polcin.com/images/2014-fluff-fest/02-lawine.jpg" class="thumb last"> <img src="https://christoph-polcin.com/images/2014-fluff-fest/thumbs/02-lawine.jpg" alt="02-lawine.jpg"/> </a> </figure> <p>just awesome!</p> Aktion Sag NEIN zu Milch tag:christoph-polcin.com,2014-05-25:/2014/05/25/sag-nein-zu-milch 2014-05-25T21:55:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p>Zum <a href="http://www.connewitzerstrassenfest.de/" title="Webseite Connewitzer Straßenfest">Connewitzer Straßenfest</a> am 25. Mai in Leipzig, boten lokale Tierrechts Organisationen gemeinsam einen sehr gut gelungenen Infostand an. Verwöhnt wurden Interessenten mit <em>Milchreis</em> und <em>Milchshakes</em>. Unschlagbar köstlich und gegen Spende! Impressionen und Bilder findet Ihr unter anderem im <a href="http://bueleti.de/blog/2014/5/26/aktion-sag-nein-zu-milch" title="Bündnis Leipziger Tierrechtler - Aktion Sag NEIN zu Milch">Bündnis Blog</a>.</p> <p><a href="http://bueleti.de/blog/2014/5/26/aktion-sag-nein-zu-milch" title="Bündnis Leipziger Tierrechtler - Aktion Sag NEIN zu Milch"><img alt="Sag NEIN zu Milch Aktion" src="https://christoph-polcin.com/images/2014/sag-nein-zu-milch.jpg" title="Sag NEIN zu Milch Aktion"/></a></p> Sieg der Vernunft tag:christoph-polcin.com,2014-04-27:/2014/04/27/sa-und-so-rennrad-verboten 2014-04-27T20:00:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><img alt="Rennrad verboten" src="https://christoph-polcin.com/images/2014/sa-so-rennrad-verboten.jpg" title="Sa + So Rennrad verboten"/></p> Offene Standards tag:christoph-polcin.com,2014-03-26:/2014/03/26/document-freedom-day 2014-03-25T22:01:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="http://documentfreedom.org/" title="Document Freedom Day"><img alt="#DOCUMENT FREEDOM DAY" src="https://christoph-polcin.com/images/2014/2014-03-26-we-cannot-read-your-documents.png" title="#DOCUMENT FREEDOM DAY"/></a></p> Chemnitzer Linux-Tage mit Gentoo tag:christoph-polcin.com,2014-03-21:/2014/03/21/chemnitzer-linux-tage-mit-gentoo-linux 2014-03-21T08:15:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p>Die Chemnitzer Linux-Tage (am 15. &amp; 16. März) kurz <a href="http://chemnitzer.linux-tage.de/2014/" title="Chemnitzer Linux-Tage">CLT</a>, feierten dieses Jahr ihren 16. Geburtstag und luden unter dem Motto <em>Vertrauen ist …?</em> herzlich ein.<br /> Neben einem beachtlichen <a href="http://chemnitzer.linux-tage.de/2014/de/vortraege/plan">Vortrags</a>- und <a href="http://chemnitzer.linux-tage.de/2014/de/vortraege/workshops">Workshop</a>-Programm gab es die Möglichkeit nette Leute aus der Linux &amp; Unix Gemeinschaft persönlich näher kennenzulernen. Allein letzteres ist bereits einen Besuch wert.</p> <p><a href="http://posativ.org/" title="Martin Zimmermann">Martin</a> und ich nutzten die <a href="http://chemnitzer.linux-tage.de/2014/" title="Chemnitzer Linux-Tage">CLT</a>, um unsere lieblings Linux Distribution <a href="http://gentoo.org/" title="gentoo linux">gentoo linux</a> zu präsentieren. Unsere Parole: <strong>Vertrauen ist gut, Kompilieren besser!</strong> Mit selbst gebackenen Keksen, Gummitieren, T-Shirts und Flyern standen wir Frage &amp; Antwort bereit.<br /> Unerwartet war die Nachfrage beachtlich groß. Vom <em>Erstkontakt mit gentoo</em> bis hin zu <em>konkreten Problemen</em> (bereits vor der offiziellen Eröffnung) war alles vertreten. Für den Großteil der Interessenten war <a href="http://gentoo.org/" title="gentoo linux">gentoo linux</a> ein Begriff. Nahezu alle hatten bereits mit <em>mehr oder weniger Erfolg</em> eine Installation absolviert. Anhand einer kleinen Umfrage stellte sich herraus, dass <a href="http://gentoo.org/" title="gentoo linux">gentoo linux</a> auf mehreren Geräten gleichzeitig und mehr als zufriedenstellend zum Einsatz kommt.</p> <p>Zu Demozwecken hatte ich mein <a href="http://cubieboard.org/tag/cubieboard2/">cubieboard2</a> mit dabei. Aufgrund mangelnder Zeit war es mit einem <a href="http://cubian.org/">cubian</a> bespielt und sollte zum <a href="http://chemnitzer.linux-tage.de/2014/" title="Chemnitzer Linux-Tage">CLT</a> ein frisches <a href="http://gentoo.org/" title="gentoo linux">gentoo linux</a> mit <a href="http://www.uclibc.org/" title="micro C-Standard-Bibliothek">uclibc</a> und <a href="http://de.wikipedia.org/wiki/Btrfs" title="B-tree FS">btrfs</a> Funktionalität erhalten.<br /> Der große Ansturm allerdings hielt mich von der notwendigen Konfiguration ab, sodass der <em>erste</em> Bootvorgang zum Sonntag Nachmittag erfolgte, aufgrund zweier Patzer jedoch auf Anhieb mißglückte: 1. fehlender btrfs Support im Kernel und 2. ein vom 3.4er Kernel nicht unterstütztes btrfs Feature (meinem Minimalismuswahn geschuldet). Wie ärgerlich … (Anleitung folgt)</p> <p>Herzlichen Dank an <a href="http://posativ.org/" title="Martin Zimmermann">Martin</a>, Haldor Zaake-Hertling, den <a href="https://www.gentoo-ev.org/" title="Förderverein Gentoo e.V.">Förderverein Gentoo e.V.</a> und an das gesamte <a href="http://chemnitzer.linux-tage.de/2014/de/info/about/">CLT Team</a>.</p> <p>Fazit: <strong>Pflichtprogramm für Open Source Freunde!</strong></p> <figure class="gallery"> <a href="https://christoph-polcin.com/images/2014-gentoo-clt/01-gentoo-stand-clt-2014.jpg" class="thumb first "> <img src="https://christoph-polcin.com/images/2014-gentoo-clt/thumbs/01-gentoo-stand-clt-2014.jpg" alt="01-gentoo-stand-clt-2014.jpg"/> </a><a href="https://christoph-polcin.com/images/2014-gentoo-clt/02-gentoo-arm-still-compiling.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/2014-gentoo-clt/thumbs/02-gentoo-arm-still-compiling.jpg" alt="02-gentoo-arm-still-compiling.jpg"/> </a><a href="https://christoph-polcin.com/images/2014-gentoo-clt/03-gentoo-uclibc-on-cubieboard2.jpg" class="thumb last"> <img src="https://christoph-polcin.com/images/2014-gentoo-clt/thumbs/03-gentoo-uclibc-on-cubieboard2.jpg" alt="03-gentoo-uclibc-on-cubieboard2.jpg"/> </a> </figure> Cool Emerge tag:christoph-polcin.com,2013-06-22:/2013/06/22/cool-emerge 2013-06-22T20:15:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p>Es waren bereits gefühlte 40° Raumtemperatur als die anstehende Systemaktualisierung startete, <a href="http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=1#doc_chap3_sect5"><code>emerge -uD @world</code></a> und einen Kaffee bitte. Kurze Zeit später - mein Notebook regelrecht am kochen, der Lüfter - strikt nach Richtlinie - lautlos. Zuviel des Guten! Doch zum Glück besteht die Möglichkeit eigene Befehle bei jeder Paket-Aktualisierung ausführen zu lassen, dank <a href="http://www.gentoo.org/doc/en/handbook/handbook-amd64.xml?part=3&amp;chap=6#doc_chap3">portage hooks</a>.</p> <p>Und hier das Script <code>/etc/portage/bashrc</code>, welches die Lüftergeschwindigkeit während der Aktualisierung anpasst.</p> <table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre>1 2 3 4 5 6 7 8 9</pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="ch">#!/usr/bin/env bash</span> <span class="k">if</span> <span class="o">[[</span> <span class="si">${</span><span class="nv">EBUILD_PHASE</span><span class="si">}</span> <span class="o">==</span> <span class="s2">&quot;setup&quot;</span> <span class="o">]]</span><span class="p">;</span> <span class="k">then</span> <span class="nb">echo</span> level full-speed &gt; /proc/acpi/ibm/fan <span class="k">fi</span> <span class="k">if</span> <span class="o">[[</span> <span class="si">${</span><span class="nv">EBUILD_PHASE</span><span class="si">}</span> <span class="o">==</span> <span class="s2">&quot;preinst&quot;</span> <span class="o">]]</span><span class="p">;</span> <span class="k">then</span> <span class="nb">echo</span> level auto &gt; /proc/acpi/ibm/fan <span class="k">fi</span> </pre></div> </td></tr></table> <p>Kühle Sache <a href="http://www.gentoo.org/">Gentoo</a>.</p> My Easter Hack - SSH-Keyring tag:christoph-polcin.com,2013-03-30:/2013/03/30/my-easter-hack-ssh-keyring 2013-03-30T20:15:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="https://git.christoph-polcin.com/ssh-keyring/"><img alt="#SSH-Keyring" src="https://christoph-polcin.com/images/2013/03-30-my-easter-hack-ssk-keyring.jpg" title="SSH-Keyring"/></a></p> <p>I was bored with feeding my <a href="http://en.wikipedia.org/wiki/Ssh-agent">SSH-Agent</a> with plenty passphrases. <a href="https://live.gnome.org/GnomeKeyring">Gnome-Keyring</a> and friends just displeases me because of all their dependencies.</p> <p>I would love to have a slimy, gui-less keyring which fits well into my environment and toolchain. But it seems to me that I / We've still got a long way to go. My Easter-Hack-Project <a href="https://git.christoph-polcin.com/ssh-keyring/">SSH-Keyring</a> (<a href="https://github.com/chripo/ssh-keyring">github-mirror</a>) tries to solve a nibble in a hackish way. Code reviews and suggestions are welcome.</p> Kardinal Kopflos tag:christoph-polcin.com,2013-03-29:/2013/03/29/headless-cardinal 2013-03-29T18:15:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <figure class="gallery"> <a href="https://christoph-polcin.com/images/food/2013-headless-cardinal/cardinal-00.jpg" class="thumb first "> <img src="https://christoph-polcin.com/images/food/2013-headless-cardinal/thumbs/cardinal-00.jpg" alt="cardinal-00.jpg"/> </a><a href="https://christoph-polcin.com/images/food/2013-headless-cardinal/cardinal-01.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/food/2013-headless-cardinal/thumbs/cardinal-01.jpg" alt="cardinal-01.jpg"/> </a><a href="https://christoph-polcin.com/images/food/2013-headless-cardinal/cardinal-02.jpg" class="thumb last"> <img src="https://christoph-polcin.com/images/food/2013-headless-cardinal/thumbs/cardinal-02.jpg" alt="cardinal-02.jpg"/> </a> </figure> <p>Motto ist Programm - Mein kulinarischer Beitrag zum Fest.<br /> Wie immer blutfrei &amp; lecker!</p> Doom Over Leipzig tag:christoph-polcin.com,2013-03-23:/2013/03/23/doom-over-leipzig-2013 2013-03-23T18:00:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="http://www.doomoverleipzig.org/" title="Doom Over Leipzig">Doom Over Leipzig</a> mit <a href="http://hexisband.bandcamp.com/" title="Hexis auf Bandcamp.com">Hexis</a>, <a href="http://zatokrev.bandcamp.com/" title="Zatokrev auf Bandcamp.com">Zatokrev</a>, <a href="http://www.last.fm/music/Lento" title="Lenot auf Last.fm">Lento</a>, <a href="http://heirs.bandcamp.com/" title="Heirs auf Bandcamp.com">Heirs</a> und <a href="http://bosskonline.com/" title="BOSSK Homepage">BOSSK</a> im <a href="http://utconnewitz.de/" title="UT Connewitz Homepage">UT Connewitz</a>.</p> <figure class="gallery"> <a href="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/00-zatokrev.jpg" class="thumb first "> <img src="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/thumbs/00-zatokrev.jpg" alt="00-zatokrev.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/01-zatokrev.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/thumbs/01-zatokrev.jpg" alt="01-zatokrev.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/02-zatokrev.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/thumbs/02-zatokrev.jpg" alt="02-zatokrev.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/03-lento.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/thumbs/03-lento.jpg" alt="03-lento.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/04-lento.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/thumbs/04-lento.jpg" alt="04-lento.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/05-lento.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/thumbs/05-lento.jpg" alt="05-lento.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/06-heirs.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/thumbs/06-heirs.jpg" alt="06-heirs.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/07-heirs.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/thumbs/07-heirs.jpg" alt="07-heirs.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/08-heirs.jpg" class="thumb last"> <img src="https://christoph-polcin.com/images/shots/2013-doom-over-leipzig/thumbs/08-heirs.jpg" alt="08-heirs.jpg"/> </a> </figure> EARTHSHIP & PLANKS & OBELYSKKH tag:christoph-polcin.com,2013-02-15:/2013/02/15/obelyskkh+planks+earthship 2013-02-15T18:00:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="http://www.southofmainstream.de/" title="South Of Mainstream Homepage">South Of Mainstream</a> mit <a href="http://www.myspace.com/wearetheearthship" title="Earthship auf myspace.com">Earthship</a>, <a href="http://planks.bandcamp.com/" title="Planks auf Bandcamp.com">Planks</a>, <a href="http://obelyskkh.bandcamp.com/" title="Obelyskkh auf Bandcamp.com">Obelyskkh</a>, und <a href="http://www.connyochs.com/" title="Conny Ochs Homepage">Conny Ochs</a> im <a href="http://utconnewitz.de/" title="UT Connewitz Homepage">UT Connewitz</a>.</p> <figure class="gallery"> <a href="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/9328-earthship-0.jpg" class="thumb first "> <img src="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/thumbs/9328-earthship-0.jpg" alt="9328-earthship-0.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/9347-earthship-1.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/thumbs/9347-earthship-1.jpg" alt="9347-earthship-1.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/9375-planks-0.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/thumbs/9375-planks-0.jpg" alt="9375-planks-0.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/9403-planks-1.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/thumbs/9403-planks-1.jpg" alt="9403-planks-1.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/9421-obelyskkh-0.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/thumbs/9421-obelyskkh-0.jpg" alt="9421-obelyskkh-0.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/9440-obelyskkh-1.jpg" class="thumb last"> <img src="https://christoph-polcin.com/images/shots/2013-south-of-mainstream/thumbs/9440-obelyskkh-1.jpg" alt="9440-obelyskkh-1.jpg"/> </a> </figure> I Love Free Software tag:christoph-polcin.com,2013-02-14:/2013/02/14/i-love-free-software 2013-02-13T22:01:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="http://fsfe.org/campaigns/ilovefs/ilovefs.html" title="fsfe #I LOVE FREE SOFTWARE"><img alt="#ILOVEFS" src="https://christoph-polcin.com/images/2013/02-14-ilovefs.png" title="#I LOVE FREE SOFTWARE"/></a></p> Ein Certificate Signing Request mit OpenSSL erstellen tag:christoph-polcin.com,2013-02-09:/2013/02/09/certificate-signing-request-mit-openssl-erstellen 2013-02-09T00:16:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p>Um für die eigene Internetpräsenz bzw. Domain ein signiertes Zertifikat zu erhalten wird eine so genannte <em>Zertifikatsregistrierungsanforderung</em> / <em>Certificate Signing Request</em> <a href="https://en.wikipedia.org/wiki/Certificate_signing_request">CSR</a> benötigt. Diese kann mit Hilfe von <a href="http://www.openssl.org/">OpenSSL</a> wie folgt erzeugt werden:</p> <div class="highlight"><pre><span></span>openssl req -nodes -new \ -newkey rsa:4096 -keyout domain.tld.key \ -out donain.tld.csr </pre></div> <!-- more --> <p>Der Kommandozeilenbefehl generiert nach Eingabe notwendiger Daten einen 4096-Bit staken RSA Schlüssel den <code>key</code> und das benötigte <code>CSR</code>, welches an die Registrierung- / Zertifizierungsstelle weitergeleitet werden muss. Im Falle von <a href="http://www.cacert.org/">CACert.org</a> ist lediglich das Eintragen des <em>Common Name</em> notwendig da die restlichen Informationen nicht berücksichtigt werden. Um ein <a href="http://kb.psw.net/questions/12/">Wildcard-Zertifikat</a> zu erhalten muss <em>Common Name</em> die eigene Domain im folgenden Format enthalten <code>*.domain.tld</code>, sonst wird die konkrete Domain angegeben. Für das Übermitteln des CSR gibt es im CACert-Nutzerbereich ein Eingabeformular. Im nächsten Schritt steht das von der Zertifizierungsstelle signierte Zertifikat, oft codiert im Base64 Format, zur Verfügung und muss in eine Datei zum Beispiel <em>domain.tld.crt</em> eingefügt werden. Die digitale Signatur kann wie folgt an Hand der öffentlichen Schlüssel der Zertifizierungsstelle überprüft werden.</p> <div class="highlight"><pre><span></span>curl https://www.cacert.org/certs/root.crt -o CACert_root.crt curl https://www.cacert.org/certs/class3.crt -o CACert_class3.crt openssl verify -CAfile CACert_root.crt \ -untrusted CACert_class3.crt \ domain.tld.crt </pre></div> <p>Reicht für den Einsatz ein <em>Selbst-Signiertes Zertifikat</em> (Self-Signed Certificate) aus kann es unter Angabe des Verfallsdatums in Tagen wie folgt erstellt werden:</p> <div class="highlight"><pre><span></span>openssl x509 -req -days 365 \ -in domain.tld.csr \ -signkey domain.tld.key \ -out domain.tldcrt </pre></div> <p>Nun muss das signierte Zertifikat, der private Schlüssel und ggf. der öffentlichen Schlüssel der Zertifizierungsstelle über eine sicheren Kanal auf den eigenen Webserver übertragen werden. Der <a href="http://httpd.apache.org/">Apache Webserver</a> verlangt den privaten Schlüssel in einer unverschlüsselt Form. Dabei hilft der folgend Befehl:</p> <div class="highlight"><pre><span></span>openssl rsa -in domain.tld.key -out domain.tld.key.decrypt </pre></div> <p>Die Konfiguration des Webservers muss wie folgt angepasst werden:</p> <div class="highlight"><pre><span></span><span class="nt">&lt;VirtualHost</span> <span class="err">_default_:443</span><span class="nt">&gt;</span> DocumentRoot /var/www/htdocs ServerName www.domain.tld SSLEngine on SSLCertificateFile /path/to/domain.tld.crt SSLCertificateKeyFile /path/to/domain.tld.key.decrypt SSLCertificateChainFile /path/to/CACert_class3.crt <span class="nt">&lt;/VirtualHost&gt;</span> </pre></div> <p>Nun steht einer <em>sicheren</em> Datenübertragung nichts im Wege. Der private Schlüssel sollte an einem ebenfalls sicheren Ort gut aufbewahrt werden.</p> <!-- vim: set spell spelllang=de_de: --> resize & watermark your images tag:christoph-polcin.com,2013-01-31:/2013/01/31/resize-and-watermark-your-images 2013-01-31T21:45:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p>If You looking for a smart gui-less way to resize and watermark your images then try out <a href="http://www.imagemagick.org/script/index.php">ImageMagick</a>. Use the following shell script to wrap and simplify the call. Copy it into your <code>~/bin</code> folder an adjust the variables at the top. Execute it with a source image and destination path as arguments.</p> <p>Some helpful hints:</p> <ul> <li>To get a list of available fonts use:<br /> <code>convert -list font</code></li> <li>For details and tweaks visit <a href="http://www.imagemagick.org/script/index.php">ImageMagick</a></li> <li>For batch processing images use this snippet (sh):<br /> <code>mkdir foo &amp;&amp; for i in *.jpg; do downscale "$i" "foo/$i"; done</code></li> </ul> <p>Copy to <code>~/bin/downscale</code></p> <table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30</pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="ch">#!/bin/sh</span> <span class="c1"># www.christoph-polcin.com</span> <span class="o">[</span> <span class="nv">$#</span> !<span class="o">=</span> <span class="s2">&quot;2&quot;</span> <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="se">\</span> <span class="nb">echo</span> <span class="s2">&quot;usage: downscale &lt;source&gt; &lt;destination&gt;&quot;</span> <span class="o">&amp;&amp;</span> <span class="nb">exit</span> <span class="m">1</span> <span class="nv">WATERMARK</span><span class="o">=</span><span class="s1">&#39;WWW.CHRISTOPH-POLCIN.COM&#39;</span> <span class="c1"># get from http://fontzone.net/font-details/Agency+FB/</span> <span class="nv">FONT</span><span class="o">=</span><span class="s1">&#39;AgencyFB-Bold&#39;</span> <span class="c1"># get from http://www.fontsquirrel.com/fonts/download/roboto</span> <span class="c1">#FONT=&#39;Roboto-Thin&#39;</span> <span class="nv">FONTSIZE</span><span class="o">=</span><span class="m">72</span> <span class="nv">COLOR</span><span class="o">=</span><span class="s1">&#39;#999999AA&#39;</span> <span class="nv">MAX_W</span><span class="o">=</span><span class="m">1280</span> <span class="nv">MAX_H</span><span class="o">=</span><span class="m">896</span> <span class="nv">QUALITY</span><span class="o">=</span><span class="m">85</span> <span class="nb">echo</span> <span class="s2">&quot;converting </span><span class="nv">$1</span><span class="s2">&quot;</span> convert <span class="se">\</span> -flatten <span class="se">\</span> -alpha On <span class="se">\</span> -font <span class="nv">$FONT</span> <span class="se">\</span> -pointsize <span class="nv">$FONTSIZE</span> <span class="se">\</span> -fill <span class="nv">$COLOR</span> <span class="se">\</span> -gravity NorthEast -annotate +60+20 <span class="s2">&quot;</span><span class="si">${</span><span class="nv">WATERMARK</span><span class="si">}</span><span class="s2">&quot;</span> <span class="se">\</span> -gravity SouthWest -annotate +60+20 <span class="s2">&quot;</span><span class="si">${</span><span class="nv">WATERMARK</span><span class="si">}</span><span class="s2">&quot;</span> <span class="se">\</span> -resize <span class="s2">&quot;</span><span class="si">${</span><span class="nv">MAX_W</span><span class="si">}</span><span class="s2">x</span><span class="si">${</span><span class="nv">MAX_H</span><span class="si">}</span><span class="s2">&gt;&quot;</span> <span class="se">\</span> -quality <span class="nv">$QUALITY</span> <span class="se">\</span> <span class="s2">&quot;</span><span class="nv">$1</span><span class="s2">&quot;</span> <span class="s2">&quot;</span><span class="nv">$2</span><span class="s2">&quot;</span> </pre></div> </td></tr></table> Uberspace Und Dein Firefox Sync Server tag:christoph-polcin.com,2012-12-31:/2012/12/31/firefox-minimal-weave-auf-uberspace 2012-12-31T20:58:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p>Für Alle die auf Ihrem <a href="https://uberspace.de" title="Uberspace.de ist deine Plattform für den Betrieb von Websites und Mail.">uberspace</a> einen eigenen <a href="https://github.com/posativ/weave-minimal" title="lightweight firefox weave/sync server">minimalen Firefox Sync Server</a> früher <a href="https://wiki.mozilla.org/Firefox_Sync" title="Mozilla Firefox Sync Wiki">Weave Server</a> betreiben wollen, gibt es hier eine kurze Anleitung. <!-- break --></p> <p>Hilfreiche Informationen findet Ihr unter:</p> <ul> <li><a href="http://uberspace.de/dokuwiki/development:python">Uberspace:Wiki:Development:Python</a></li> <li><a href="http://uberspace.de/dokuwiki/system:daemontools">Uberspace:Wiki:System:Daemontools</a></li> <li><a href="http://simononsoftware.com/virtualenv-tutorial/">Pyton Virutalenv Tutorial</a></li> </ul> <h4>Und so geht's, <code>&lt;XXX&gt;</code> anpassen</h4> <!-- language: lang-sh --> <div class="highlight"><pre><span></span>mkdir -p ~/bin ~/lib/python2.7 easy_install-2.7 -U pip pip install virtualenv virtualenv ~/venv/weave-minimal source ~/venv/weave-minimal/bin/activate pip install https://github.com/posativ/weave-minimal/tarball/master deactivate ln -s ~/venv/weave-minimal/bin/weave-minimal ~/bin/weave-minimal mkdir ~/.weave-data chmod 700 ~/.weave-data uberspace-setup-svscan mkdir ~/etc/run-weave-minimal # checkt die weave-minimal Argumente eurer verwendeten Version # ggf. anpassen cat &lt;&lt;__EOF__ &gt; ~/etc/run-weave-minimal/run #!/bin/sh exec ~/bin/weave-minimal \ --data-dir=~/.weave-data \ --prefix=/ \ --port &lt;PORT&gt; \ --enable-registration 2&gt;&amp;1 __EOF__ chmod 700 -R ~/etc/run-weave-minimal/ ln -s ~/etc/run-weave-minimal ~/service/weave-minimal # Verzeichnis zuvor anlegen cat &lt;&lt;__EOF__ &gt; /var/www/virtual/&lt;USER&gt;/&lt;SUBDOMAIN&gt;.&lt;DOMAIN&gt;/.htaccess RewriteEngine On RewriteRule (.*) http://localhost:&lt;PORT&gt;/$1 [P] __EOF__ # Dienst starten svc -u service/weave-minimal </pre></div> <p><strong>Firefox starten</strong> und <code>https://&lt;SUBDOMAIN&gt;.&lt;DOMAIN&gt;.&lt;TLD&gt;/</code> ansurfen, Zertifikat akzeptieren, Firefox Sync einrichten unter Verwendung der eigenen URI.</p> <h4>Um die Registrierung für weitere Nutzer zu deaktivieren</h4> <!-- language: lang-sh --> <div class="highlight"><pre><span></span>svc -d service/weave-minimal $EDITOR service/weave-minimal/run # und --enable-registration entfernen svc -u service/weave-minimal </pre></div> <h4>Updates, Updates, Updates</h4> <!-- language: lang-sh --> <div class="highlight"><pre><span></span>svc -d service/weave-minimal source ~/venv/weave-minimal/bin/activate pip install -U https://github.com/posativ/weave-minimal/tarball/master deactivate svc -u service/weave-minimal </pre></div> <p>Ist schon eine tolle sache! Vielen Dank an <a href="http://posativ.org/">posativ</a> und <a href="https://uberspace.de" title="Uberspace.de ist deine Plattform für den Betrieb von Websites und Mail.">Uberspace</a>!!<br /> In diesem Sinne einen Guten Rutsch!</p> Wolves In The Throne Room & Harey Milk tag:christoph-polcin.com,2012-06-05:/2012/06/05/wolves-in-the-throne-room-and-harvey-milk 2012-06-05T21:59:00Z Christoph https://christoph-polcin.com/ first-name@family-name.de <p><a href="http://www.wittr.com/">Wolves In The Throne Room</a> &amp; <a href="http://www.harveymilktheband.com/">Harvey Milk</a> im <a href="http://www.utconnewitz.de/">UT Connewitz</a> <!-- break --></p> <figure class="gallery"> <a href="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/00-harvey_milk.jpg" class="thumb first "> <img src="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/thumbs/00-harvey_milk.jpg" alt="00-harvey_milk.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/01-harvey_milk.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/thumbs/01-harvey_milk.jpg" alt="01-harvey_milk.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/02-harvey_milk.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/thumbs/02-harvey_milk.jpg" alt="02-harvey_milk.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/03-wolves_in_the_throne_room.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/thumbs/03-wolves_in_the_throne_room.jpg" alt="03-wolves_in_the_throne_room.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/04-wolves_in_the_throne_room.jpg" class="thumb "> <img src="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/thumbs/04-wolves_in_the_throne_room.jpg" alt="04-wolves_in_the_throne_room.jpg"/> </a><a href="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/05-wolves_in_the_throne_room.jpg" class="thumb last"> <img src="https://christoph-polcin.com/images/shots/2012-wolves_in_the_throne_room-harvey_milk/thumbs/05-wolves_in_the_throne_room.jpg" alt="05-wolves_in_the_throne_room.jpg"/> </a> </figure>