<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/xsl" href="/static/rss.xsl"?>
<!-- name="generator" content="blosxom/2.1.2+dev" -->
<rss version="2.0"
     xmlns:dc="http://purl.org/dc/elements/1.1/"
     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     xmlns:cc="http://web.resource.org/cc/"
     xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
     xmlns:admin="http://webns.net/mvcb/"
     xmlns:wfw="http://wellformedweb.org/CommentAPI/" >
  <channel>
    <!-- RSS required -->
    <title>Blogging is futile   </title>
    <!-- <link>http://noone.org/blog</link> -->
    <description>Yet another Blosxom weblog from someone who promised himself to never start blogging - since blogging is futile.</description>

    <!-- RSS optional -->
    <pubDate>Sat, 19 May 2012 06:01:34 +0200</pubDate>
    <lastBuildDate>Sat, 19 May 2012 06:01:34 +0200</lastBuildDate>
    <copyright>&amp;copy; 2005-2008 by Axel Beckert. Content licensed under the Creative Commons NC SA 2.0 DE License. Some rights reserved.</copyright>
    <language>en</language>
    <managingEditor>abe+blog@deuxchevaux.org (Axel Beckert)</managingEditor>
    <webMaster>abe+blog@deuxchevaux.org (Axel Beckert)</webMaster>
    <generator>blosxom/2.1.2+dev</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <ttl>42</ttl>
    <image>
        <url>http://noone.org/static/XTaran1.3t.png</url>
        <title>Hackergotchi: Axel "XTaran" Beckert</title>
        <link>http://noone.org/blog</link>
        <width>102</width>
        <height>104</height>
    </image>

    <!-- Dublin Core -->
<!--
    <dc:publisher>Axel Beckert (abe+blog@deuxchevaux.org)</dc:publisher>
    <dc:rights>&copy; 2005-2008 by Axel Beckert. Content licensed under the Creative Commons NC SA 2.0 DE License. Some rights reserved.</dc:rights>
    <dc:language>de</dc:language>
    <dc:language>en</dc:language>
    <dc:title>Blogging is futile   </dc:title>
    <dc:subject>Rants and brain dumps about Debian, the Web, old Hardware, old Citroëns and the daily life of an ETHZ system administrator</dc:subject>
    <dc:description>Yet another Blosxom weblog from someone who promised himself to never start blogging - since blogging is futile.</dc:description>
-->

    <!-- Others -->
    <admin:generatorAgent rdf:resource="http://blosxom.sourceforge.net/" />
    <admin:errorReportsTo rdf:resource="mailto:abe+blog@deuxchevaux.org" />
    <cc:license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.0/de/">http://creativecommons.org/licenses/by-nc-sa/2.0/de/</cc:license>

  <item>
    <title>unburden-home-dir uploaded to Sid</title>
    <slash:department>Good-for-NFS-as-well-as-SSDs</slash:department>
    <slash:section>English &amp;raquo; Computer &amp;raquo; Debian</slash:section>
    <link>http://noone.org/blog/English/Computer/Debian/unburden-home-dir%2520uploaded%2520to%2520Sid.html</link>
    <guid isPermaLink="true">http://noone.org/blog/English/Computer/Debian/unburden-home-dir%2520uploaded%2520to%2520Sid.html</guid>
    <pubDate>Sat, 05 May 2012 02:54:08 +0200</pubDate>
    <author>abe+blog@deuxchevaux.org (Axel Beckert)</author>
    <description>
Most popular web browsers cause quite a lot of I/O on a user&amp;#8217;s home
directory and their cache&amp;#8217;s also take up quite some disk space &amp;#8211; with
Google&amp;#8217;s Chrome/Chromium you can&amp;#8217;t even configure how much disk space
should be used for the cache.

&lt;/p&gt;&lt;p&gt;

This causes unnecessary network traffic and no more makes sense if the
home directory itself comes over the network, e.g. via NFS or Samba.
And on laptops it spins up the disks and unnecessarily costs battery
power and therefore lowers the potential battery life.

&lt;/p&gt;&lt;p&gt;

&lt;a class=&quot;uni&quot;
href=&quot;https://github.com/xtaran/unburden-home-dir/blob/master/etc/unburden-home-dir.list&quot;
&gt;Such caches&lt;/a&gt; also costs scarce disk space on SSDs or flash cards as
common in laptops, netbooks and other mobile devices, and often get
backed up without any real use.

&lt;/p&gt;&lt;p&gt;

To take some of this burden off our NFS servers at work &lt;a class=&quot;uni&quot;
href=&quot;https://wiki.phys.ethz.ch/readme/application_cache_files&quot; &gt;I
started to develop&lt;/a&gt; an Xsession.d hook which moves off such caches
to the local disk and puts in symbolic links instead into the user&amp;#8217;s
home directory when the user locally logs in.

&lt;/p&gt;&lt;p&gt;

This hook quickly became a standalone &lt;a href=&quot;http://www.perl.com/&quot; class=&quot;ext&quot;&gt;Perl&lt;/a&gt; script named
&lt;strong&gt;unburden-home-dir&lt;/strong&gt; and the Xsession.d hook just a
wrapper around it. Due to some unsolved issues I didn&amp;#8217;t feel it&amp;#8217;s good
enough for &lt;a href=&quot;http://www.debian.org/&quot; class=&quot;ext&quot;&gt;Debian&lt;/a&gt; Unstable, so I uploaded it just to Debian
Experimental back then.

&lt;/p&gt;&lt;p&gt;

&lt;a href=&quot;http://mancoosi.org/~abate/unburden-my-home-dir&quot; class=&quot;ext&quot;
&gt;Pietro Abate&amp;#8217;s recent blog posting about unburden-home-dir&lt;/a&gt; on
&lt;a href=&quot;http://planet.debian.org/&quot; class=&quot;uni&quot;&gt;Planet Debian&lt;/a&gt; gave me the right kick to make another try to solve the
remaining issues.

&lt;/p&gt;&lt;p&gt;

And the mental distance gained over the time indeed helped and I could
fix the remaining issues. So I added some polish to the package and &lt;a
href=&quot;http://packages.qa.debian.org/u/unburden-home-dir/news/20120504T230711Z.html&quot;
class=&quot;uni&quot; &gt;uploaded it to Debian Unstable&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;

If you used the previous version from experimental, you have to take
care of a few things:

&lt;/p&gt;&lt;ul&gt;

&lt;li&gt;Previously some configuration files sported
&lt;code&gt;unburden_home_dir&lt;/code&gt; as base name while others used
&lt;code&gt;unburden-home-dir&lt;/code&gt; as base name as that&amp;#8217;s also the package
name. Now all configuration files use the package name, i.e.
&lt;code&gt;unburden-home-dir&lt;/code&gt; as base name.&lt;/li&gt;

&lt;li&gt;&amp;#8220;Conffiles&amp;#8221; under &lt;code&gt;/etc/&lt;/code&gt; should be renamed by dpkg
automatically, but per-user configuration files
(&lt;code&gt;$HOME/.unburden_home_dir&lt;/code&gt; and
&lt;code&gt;$HOME/.unburden_home_dir_list&lt;/code&gt;) must be manually renamed
to &lt;code&gt;$HOME/.unburden-home-dir&lt;/code&gt; and
&lt;code&gt;$HOME/.unburden-home-dir.list&lt;/code&gt;.&lt;/li&gt;

&lt;li&gt;By adding &lt;code&gt;UNBURDEN_HOME=yes&lt;/code&gt; to
&lt;code&gt;$HOME/.unburden-home-dir&lt;/code&gt; every user can decide himself if
he wants the Xsession.d hook to be used when he logs in under X. On
managed workstations with many users this eases testing of
unburden-home-dir with just a few users a lot.&lt;/li&gt;

&lt;/ul&gt;&lt;p&gt;

You can follow the development of unburden-home-dir also &lt;a
class=&quot;uni&quot; href=&quot;https://github.com/xtaran/unburden-home-dir&quot; &gt;on
GitHub&lt;/a&gt; and &lt;a href=&quot;https://gitorious.org/unburden-home-dir&quot;
class=&quot;uni&quot; &gt;on Gitorious&lt;/a&gt; as well as &lt;a class=&quot;uni&quot;
href=&quot;https://www.ohloh.net/p/unburden-home-dir&quot; &gt;on Ohloh&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;

Enjoy!</description>
    <comments>http://noone.org/blog/English/Computer/Debian/unburden-home-dir%2520uploaded%2520to%2520Sid.futile#comments</comments>
    <slash:comments>0</slash:comments>
    <dc:language>en</dc:language>
    <category domain="http://noone.org/blog/tags/%24HOME">$HOME</category>
<category domain="http://noone.org/blog/tags/cache">cache</category>
<category domain="http://noone.org/blog/tags/Chrome">Chrome</category>
<category domain="http://noone.org/blog/tags/Chromium">Chromium</category>
<category domain="http://noone.org/blog/tags/Conkeror">Conkeror</category>
<category domain="http://noone.org/blog/tags/Debian">Debian</category>
<category domain="http://noone.org/blog/tags/Epiphany">Epiphany</category>
<category domain="http://noone.org/blog/tags/Experimental">Experimental</category>
<category domain="http://noone.org/blog/tags/Firefox">Firefox</category>
<category domain="http://noone.org/blog/tags/Galeon">Galeon</category>
<category domain="http://noone.org/blog/tags/Google">Google</category>
<category domain="http://noone.org/blog/tags/I%2FO">I/O</category>
<category domain="http://noone.org/blog/tags/Icedove">Icedove</category>
<category domain="http://noone.org/blog/tags/Iceweasel">Iceweasel</category>
<category domain="http://noone.org/blog/tags/Kazehakase">Kazehakase</category>
<category domain="http://noone.org/blog/tags/Mozilla">Mozilla</category>
<category domain="http://noone.org/blog/tags/NFS">NFS</category>
<category domain="http://noone.org/blog/tags/Opera">Opera</category>
<category domain="http://noone.org/blog/tags/performance">performance</category>
<category domain="http://noone.org/blog/tags/Planet%20Debian">Planet Debian</category>
<category domain="http://noone.org/blog/tags/Sid">Sid</category>
<category domain="http://noone.org/blog/tags/symlinks">symlinks</category>
<category domain="http://noone.org/blog/tags/Thumbnails">Thumbnails</category>
<category domain="http://noone.org/blog/tags/Thunderbird">Thunderbird</category>
<category domain="http://noone.org/blog/tags/Trash">Trash</category>
<category domain="http://noone.org/blog/tags/unburden%2Dhome%2Ddir">unburden-home-dir</category>
<category domain="http://noone.org/blog/tags/Unstable">Unstable</category>
<category domain="http://noone.org/blog/tags/X">X</category>

  </item>
  <item>
    <title>Automatically hardlinking duplicate files under /usr/share/doc with APT</title>
    <slash:department>no-space-left-on-device</slash:department>
    <slash:section>English &amp;raquo; Computer &amp;raquo; Debian</slash:section>
    <link>http://noone.org/blog/English/Computer/Debian/Automatically%2520hardlinking%2520duplicate%2520documentation%2520files%2520with%2520APT.html</link>
    <guid isPermaLink="true">http://noone.org/blog/English/Computer/Debian/Automatically%2520hardlinking%2520duplicate%2520documentation%2520files%2520with%2520APT.html</guid>
    <pubDate>Sat, 14 Apr 2012 20:29:59 +0200</pubDate>
    <author>abe+blog@deuxchevaux.org (Axel Beckert)</author>
    <description>
On my everyday netbook (a very reliable first generation &lt;a href=&quot;http://eeepc.asus.com/&quot; class=&quot;ext&quot;&gt;ASUS EeePC&lt;/a&gt; 701 4G)
the disk (4&amp;nbsp;&lt;acronym title=&quot;Gigabyte; Great Britain; Großbritannien&quot;&gt;GB&lt;/acronym&gt; as the product name suggests :-) is nearly always
close to full.

&lt;/p&gt;&lt;p&gt;&lt;small&gt;

TL;DWTR? &lt;a
href=&quot;http://noone.org/blog/English/Computer/Debian/Automatically%20hardlinking%20duplicate%20documentation%20files%20with%20APT.futile#howto&quot;
&gt;Jump directly to the HowTo&lt;/a&gt;. :-)

&lt;/small&gt;&lt;/p&gt;&lt;p&gt;

So I came up with a few techniques to save some more disk space.
Installing &lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/localepurge&quot;&gt;localepurge&lt;/a&gt; was one of the earliest. Another one
was to &lt;a
href=&quot;http://noone.org/blog/English/Computer/Debian/CoolTools/Finding%20libraries%20not%20marked%20as%20automatically%20installed%20with%20aptitude.futile&quot;
&gt;implement aptitude filters to do interactively what deborphan does
non-interactively&lt;/a&gt;. Yet another one is to use &lt;a
href=&quot;http://noone.org/blog/English/Computer/Debian/CoolTools/Friends%20of%20du.futile&quot;
&gt;du and friends&lt;/a&gt; a lot &amp;#8211; &lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/ncdu&quot;&gt;ncdu&lt;/a&gt; is definitely my favourite
du-like tool in the meanwhile.

&lt;/p&gt;&lt;p&gt;

Using du and friends I often noticed how much disk space &lt;code
class=&quot;file&quot; &gt;/usr/share/doc&lt;/code&gt; takes up. But since I value the
contents of &lt;code class=&quot;file&quot; &gt;/usr/share/doc&lt;/code&gt; a lot, I condemn
how Nokia solved that on the N900: They let APT &lt;em&gt;delete&lt;/em&gt; all
files and directories under &lt;code class=&quot;file&quot; &gt;/usr/share/doc&lt;/code&gt;
(including the copyright files!) via some &lt;a class=&quot;ext&quot;
href=&quot;https://maemo.gitorious.org/maemo-af/docpurge&quot; &gt;package named
docpurge&lt;/a&gt;. I also dislike &lt;a href=&quot;http://www.ubuntu.com/&quot; class=&quot;ext&quot;&gt;Ubuntu&lt;/a&gt;&amp;#8217;s &amp;#8220;solution&amp;#8221; to truncate the
shipped changelog files (you can still get the remainder of the files
on the web somewhere) as they&amp;#8217;re an important source of information
for me.

&lt;/p&gt;&lt;p&gt;

So when &lt;a href=&quot;http://algebraicthunk.net/~dburrows/projects/aptitude/&quot; class=&quot;ext&quot;&gt;aptitude&lt;/a&gt; showed me that some package suddenly wanted to use up
quite some more disk space, I noticed that the new package version
included the upstream changelog twice. So I started searching for
duplicate files under &lt;code class=&quot;file&quot; &gt;/usr/share/doc&lt;/code&gt;.

&lt;/p&gt;&lt;p&gt;

There are &lt;a class=&quot;ext&quot;
href=&quot;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=656142#18&quot;
&gt;quite some tools to find duplicate files in Debian&lt;/a&gt;. &lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/hardlink&quot;&gt;hardlink&lt;/a&gt; seemed most appropriate for this case.

&lt;/p&gt;&lt;p&gt;

First &lt;a class=&quot;uni&quot;
href=&quot;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=614715#5&quot; &gt;I
just looked for duplicate files per package&lt;/a&gt;, which even on that
less than four gigabytes installation on my EeePC found nine packages
which shipped at least one file twice.

&lt;/p&gt;&lt;p&gt;

As recommended I rather opted for an according Lintian check (see
bugs. Niels Thykier kindly implemented such a check in Lintian and its
findings are as reported as tags &amp;#8220;duplicate-changelog-files&amp;#8221;
(Severity: normal, from Lintian 2.5.2 on) and &amp;#8220;duplicate-files&amp;#8221;
(Severity: minor, experimental, from Lintian 2.5.0 on).

&lt;/p&gt;&lt;p&gt;

Nevertheless, some source packages generate several binary packages
and all of them (of course) ship the same, in some cases quite large
(&lt;a href=&quot;http://www.debian.org/&quot; class=&quot;ext&quot;&gt;Debian&lt;/a&gt;) changelog file. So I found myself running &lt;code
class=&quot;command&quot; &gt;hardlink /usr/share/doc&lt;/code&gt; now and then to gain
some more free disk space. But as I run &lt;a href=&quot;http://www.debian.org/releases/sid/&quot; class=&quot;ext&quot;&gt;Sid&lt;/a&gt; and package upgrades
happen more than daily, I came to the conclusion that I should run
this command more or less after each aptitude run, i.e. automatically.

&lt;/p&gt;&lt;a name=&quot;howto&quot;&gt;&lt;/a&gt;&lt;p&gt;

Having taken &lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/localepurge&quot;&gt;localepurge&lt;/a&gt;&amp;#8217;s APT hook as example, I added the
following content as &lt;code class=&quot;file&quot;
&gt;/etc/apt/apt.conf.d/98-hardlink-doc&lt;/code&gt; to my system:

&lt;/p&gt;&lt;pre&gt;
// Hardlink identical docs, changelogs, copyrights, examples, etc

DPkg
{
Post-Invoke {&quot;if [ -x /usr/bin/hardlink ]; then /usr/bin/hardlink -t /usr/share/doc; else exit 0; fi&quot;;};
};
&lt;/pre&gt;&lt;p&gt;

So now installing &lt;a class=&quot;ext&quot;
href=&quot;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=634458&quot; &gt;a
package which contains duplicate files&lt;/a&gt; looks like this:

&lt;/p&gt;&lt;pre&gt;
~ # aptitude install &lt;a href=&quot;http://www.perl.com/&quot; class=&quot;ext&quot;&gt;perl&lt;/a&gt;-tk
The following NEW packages will be installed:
  perl-tk 
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 2,522 &lt;acronym title=&quot;Kilobyte&quot;&gt;kB&lt;/acronym&gt; of archives. After unpacking 6,783 &lt;acronym title=&quot;Kilobyte&quot;&gt;kB&lt;/acronym&gt; will be used.
Get: 1 http://ftp.ch.debian.org/debian/ sid/main perl-tk i386 1:804.029-1.2 [2,522 &lt;acronym title=&quot;Kilobyte&quot;&gt;kB&lt;/acronym&gt;]
Fetched 2,522 &lt;acronym title=&quot;Kilobyte&quot;&gt;kB&lt;/acronym&gt; in 1s (1,287 &lt;acronym title=&quot;Kilobyte&quot;&gt;kB&lt;/acronym&gt;/s)  
Selecting previously unselected package perl-tk.
(Reading database ... 121849 files and directories currently installed.)
Unpacking perl-tk (from .../perl-tk_1%3a804.029-1.2_i386.deb) ...
Processing triggers for man-db ...
Setting up perl-tk (1:804.029-1.2) ...
&lt;b&gt;Mode:     real
Files:    15423
Linked:   3 files
Compared: 14724 files
Saved:    7.29 KiB
Duration: 4.03 seconds&lt;/b&gt;
localepurge: Disk space freed in /usr/share/locale: 0 KiB
localepurge: Disk space freed in /usr/share/man: 0 KiB
localepurge: Disk space freed in /usr/share/&lt;a href=&quot;http://www.gnome.org/&quot; class=&quot;ext&quot;&gt;gnome&lt;/a&gt;/help: 0 KiB
localepurge: Disk space freed in /usr/share/omf: 0 KiB

Total disk space freed by localepurge: 0 KiB
&lt;/pre&gt;&lt;p&gt;

Sure, that wasn&amp;#8217;t the most space saving example, but on some
installations I saved around 100&amp;nbsp;&lt;acronym title=&quot;Megabyte&quot;&gt;MB&lt;/acronym&gt; of disk space that way &amp;#8211; and
I still haven&amp;#8217;t found a case where this caused unwanted damage. (Use
of this advice on your own risk, though. Pointers to potential
problems welcome. :-)</description>
    <comments>http://noone.org/blog/English/Computer/Debian/Automatically%2520hardlinking%2520duplicate%2520documentation%2520files%2520with%2520APT.futile#comments</comments>
    <slash:comments>2</slash:comments>
    <dc:language>en</dc:language>
    <category domain="http://noone.org/blog/tags/APT">APT</category>
<category domain="http://noone.org/blog/tags/aptitude">aptitude</category>
<category domain="http://noone.org/blog/tags/ASUS">ASUS</category>
<category domain="http://noone.org/blog/tags/changelog">changelog</category>
<category domain="http://noone.org/blog/tags/docpurge">docpurge</category>
<category domain="http://noone.org/blog/tags/du">du</category>
<category domain="http://noone.org/blog/tags/duff">duff</category>
<category domain="http://noone.org/blog/tags/duplicate">duplicate</category>
<category domain="http://noone.org/blog/tags/EeePC">EeePC</category>
<category domain="http://noone.org/blog/tags/hardlink">hardlink</category>
<category domain="http://noone.org/blog/tags/HowTo">HowTo</category>
<category domain="http://noone.org/blog/tags/Lintian">Lintian</category>
<category domain="http://noone.org/blog/tags/localepurge">localepurge</category>
<category domain="http://noone.org/blog/tags/N900">N900</category>
<category domain="http://noone.org/blog/tags/ncdu">ncdu</category>
<category domain="http://noone.org/blog/tags/nemo">nemo</category>
<category domain="http://noone.org/blog/tags/Netbook">Netbook</category>
<category domain="http://noone.org/blog/tags/Nokia">Nokia</category>
<category domain="http://noone.org/blog/tags/Ubuntu">Ubuntu</category>

  </item>
  <item>
    <title>Tools for CLI Road Warriors: Hidden Terminals</title>
    <slash:department>Terminals-where-you-don't-expect-them</slash:department>
    <slash:section>English &amp;raquo; Computer &amp;raquo; Mobile</slash:section>
    <link>http://noone.org/blog/English/Computer/Mobile/Hidden%2520Terminals.html</link>
    <guid isPermaLink="true">http://noone.org/blog/English/Computer/Mobile/Hidden%2520Terminals.html</guid>
    <pubDate>Wed, 04 Apr 2012 00:51:20 +0200</pubDate>
    <author>abe+blog@deuxchevaux.org (Axel Beckert)</author>
    <description>
Some networks have no connection to the outside except that they allow
surfing through an &lt;acronym title=&quot;Hot Tits Transport Pr0nocol (Ulrich Schwarz)&quot;&gt;HTTP&lt;/acronym&gt;(S) proxy. Sometimes you are happy and the
HTTPS port (443) is unrestricted. The following server-side tools
allow you to exploit these weaknesses and get you a shell on your
server.

&lt;/p&gt;&lt;h4&gt;sslh&lt;/h4&gt;&lt;p&gt;

&lt;a href=&quot;http://www.rutschle.net/tech/sslh.shtml&quot; class=&quot;ext&quot;
&gt;sslh&lt;/a&gt; is an &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt;/SSL multiplexor. If a client connects to sslh, it
checks if the clients speaks the &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt; or the SSL protocol and then
passes the connection to the according real port of SSL or some SSL
enabled service, e.g. an HTTPS, &lt;a href=&quot;http://openvpn.net/&quot; class=&quot;ext&quot;&gt;OpenVPN&lt;/a&gt;, &lt;a class=&quot;ext&quot;
href=&quot;http://www.tinc-vpn.org/&quot; &gt;Tinc&lt;/a&gt; or &lt;acronym title=&quot;Extensible Messaging and Presence Protocol&quot;&gt;XMPP&lt;/acronym&gt; server. That way
it&amp;#8217;s possible to connect to one of these services &lt;em&gt;and&lt;/em&gt; &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt; on
the same port.

&lt;/p&gt;&lt;p&gt;

The usual scenario where this daemon is useful are firewalls which
block &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt;, force &lt;acronym title=&quot;Hot Tits Transport Pr0nocol (Ulrich Schwarz)&quot;&gt;HTTP&lt;/acronym&gt; to go through a proxy, but allow HTTPS
connections without restriction. In that case you let sslh listen on
the HTTPS port (443) and to move the real HTTPS server (e.g. &lt;a href=&quot;http://httpd.apache.org/&quot; class=&quot;ext&quot;&gt;Apache&lt;/a&gt;)
to listen on either a different port number (e.g. 442, 444 or 8443) or
on another &lt;acronym title=&quot;Internet Protocol&quot;&gt;IP&lt;/acronym&gt; address, e.g. on localhost, port 443.

&lt;/p&gt;&lt;p&gt;

On an &lt;a href=&quot;http://www.debian.org/&quot; class=&quot;ext&quot;&gt;Debian&lt;/a&gt; or &lt;a href=&quot;http://www.ubuntu.com/&quot; class=&quot;ext&quot;&gt;Ubuntu&lt;/a&gt; based Apache HTTPS server, you just have to do
the following to run Apache on port 442 and sslh on port 443 instead:

&lt;/p&gt;&lt;ol&gt;

&lt;li&gt;&lt;code&gt;apt-get install sslh&lt;/code&gt; as root.&lt;/li&gt;

&lt;li&gt;Edit &lt;code class=&quot;file&quot;&gt;/etc/default/sslh&lt;/code&gt;, change
&lt;code&gt;RUN=no&lt;/code&gt; to &lt;code&gt;RUN=yes&lt;/code&gt; and &lt;code&gt;--ssl
127.0.0.1:443&lt;/code&gt; to &lt;code&gt;--ssl 127.0.0.1:442&lt;/code&gt;.&lt;/li&gt;

&lt;li&gt;Edit &lt;code class=&quot;file&quot;&gt;/etc/apache2/ports.conf&lt;/code&gt; and all
files in &lt;code class=&quot;file&quot;&gt;/etc/apache2/sites-available/&lt;/code&gt; which
contain a reference to port 443 (which is only &lt;code
class=&quot;file&quot;&gt;/etc/apache2/sites-available/default-ssl.conf&lt;/code&gt; in
the default configuration) and change all occurrences of
&lt;code&gt;443&lt;/code&gt; to &lt;code&gt;442&lt;/code&gt;.&lt;/li&gt;

&lt;li&gt;&lt;code class=&quot;command&quot;&gt;service apache2 restart&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code class=&quot;command&quot;&gt;service sslh start&lt;/code&gt;&lt;/li&gt;

&lt;/ol&gt;&lt;p&gt;

Now you should be able to ssh to your server on port 443 (&lt;code
class=&quot;command&quot; &gt;ssh -p 443 your.server.example.org&lt;/code&gt;) while
still being able to surf to
&lt;code&gt;https://your.server.example.org/&lt;/code&gt;.

&lt;/p&gt;&lt;p&gt;

sslh works as threaded or as preforking daemon, or via inetd. It also
honors tcpwrapper configurations for sshd in &lt;code
class=&quot;file&quot;&gt;/etc/hosts.allow&lt;/code&gt; and &lt;code
class=&quot;file&quot;&gt;/etc/hosts.deny&lt;/code&gt;.

&lt;/p&gt;&lt;p&gt;

sslh is available as port or package at least in &lt;a href=&quot;http://www.gentoo.org/&quot; class=&quot;ext&quot;&gt;Gentoo&lt;/a&gt;, in &lt;a href=&quot;http://www.freebsd.org/&quot; class=&quot;ext&quot;&gt;FreeBSD&lt;/a&gt;,
&lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/sslh&quot;&gt;in Debian&lt;/a&gt; and &lt;a href=&quot;http://packages.ubuntu.com/sslh&quot;
class=&quot;ext&quot; &gt;in Ubuntu&lt;/a&gt;.

&lt;/p&gt;&lt;h4&gt;AjaxTerm&lt;/h4&gt;&lt;p&gt;

A completely different approach takes &lt;a class=&quot;ext&quot;
href=&quot;http://antony.lesuisse.org/software/ajaxterm/&quot; &gt;AjaxTerm&lt;/a&gt;. It
provides a terminal inside a web browser with login and ssh being its
server-side backend.

&lt;/p&gt;&lt;p&gt;

Properly safe-guarded by HTTPS plus maybe &lt;acronym title=&quot;Hot Tits Transport Pr0nocol (Ulrich Schwarz)&quot;&gt;HTTP&lt;/acronym&gt; based authentication
this can be an interesting emergency alternative to the more common
&amp;mdash; but also more often blocked &amp;mdash; remote login mechanisms.

&lt;/p&gt;&lt;p&gt;

AjaxTerm is available as package at least &lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/ajaxterm&quot;&gt;in Debian&lt;/a&gt;
and &lt;a class=&quot;ext&quot; href=&quot;http://packages.ubuntu.com/ajaxterm&quot; &gt;in
Ubuntu&lt;/a&gt;.

&lt;/p&gt;&lt;p align=&quot;center&quot;&gt;&lt;small&gt;

Happily I never were forced to use either of them myself. :-)

&lt;/small&gt;</description>
    <comments>http://noone.org/blog/English/Computer/Mobile/Hidden%2520Terminals.futile#comments</comments>
    <slash:comments>5</slash:comments>
    <dc:language>en</dc:language>
    <category domain="http://noone.org/blog/tags/AJAX">AJAX</category>
<category domain="http://noone.org/blog/tags/AjaxTerm">AjaxTerm</category>
<category domain="http://noone.org/blog/tags/Apache">Apache</category>
<category domain="http://noone.org/blog/tags/Debian">Debian</category>
<category domain="http://noone.org/blog/tags/HTTPS">HTTPS</category>
<category domain="http://noone.org/blog/tags/libwrap">libwrap</category>
<category domain="http://noone.org/blog/tags/OpenVPN">OpenVPN</category>
<category domain="http://noone.org/blog/tags/SSH">SSH</category>
<category domain="http://noone.org/blog/tags/SSL">SSL</category>
<category domain="http://noone.org/blog/tags/sslh">sslh</category>
<category domain="http://noone.org/blog/tags/tcpd">tcpd</category>
<category domain="http://noone.org/blog/tags/tcpwrapper">tcpwrapper</category>
<category domain="http://noone.org/blog/tags/Ubuntu">Ubuntu</category>
<category domain="http://noone.org/blog/tags/XMPP">XMPP</category>

  </item>
  <item>
    <title>Tools for CLI Road Warriors: Tunnels</title>
    <slash:department>I'll-Tunnel-My-Way-Home</slash:department>
    <slash:section>English &amp;raquo; Computer &amp;raquo; Mobile</slash:section>
    <link>http://noone.org/blog/English/Computer/Mobile/Tunneling.html</link>
    <guid isPermaLink="true">http://noone.org/blog/English/Computer/Mobile/Tunneling.html</guid>
    <pubDate>Thu, 22 Mar 2012 19:49:10 +0100</pubDate>
    <author>abe+blog@deuxchevaux.org (Axel Beckert)</author>
    <description>
Sometime the network you&amp;#8217;re connected to is either untrusted (e.g.
wireless) or castrated in some way. In both cases you want a tunnel to
your trusted home base.

&lt;/p&gt;&lt;p&gt;

Following I&amp;#8217;ll show you three completely different tunneling tools
which may helpful while travelling.

&lt;/p&gt;&lt;h4&gt;sshuttle&lt;/h4&gt;&lt;p&gt;

&lt;a href=&quot;https://github.com/apenwarr/sshuttle/&quot; class=&quot;ext&quot;
&gt;sshuttle&lt;/a&gt; is a tool somewhere in between of automatic port forward
and VPN. It tunnels arbitrary TCP connections and &lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt; through an &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt;
tunnel without requiring root access on the remote end of the &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt;
connection.

&lt;/p&gt;&lt;p&gt;

So it&amp;#8217;s perfect for redirecting most of your traffic through an &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt;
tunnel to your favourite &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt; server, e.g. to ensure your local privacy
when you are online via a public, unencrypted &lt;acronym title=&quot;Wireless Local Area Network&quot;&gt;WLAN&lt;/acronym&gt; (i.e. easy to sniff
for everyone).

&lt;/p&gt;&lt;p&gt;

It runs on &lt;a href=&quot;http://www.kernel.org/&quot; class=&quot;ext&quot;&gt;Linux&lt;/a&gt; and MacOS X and only needs a &lt;a href=&quot;http://www.python.org/&quot; class=&quot;ext&quot;&gt;Python&lt;/a&gt; interpreter on
the remote side. Requires root access (usually via sudo) on the client
side, though.

&lt;/p&gt;&lt;p&gt;

It&amp;#8217;s currently available at least &lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/sshuttle&quot;&gt;in Debian Unstable
and Testing (Wheezy)&lt;/a&gt; as well as in &lt;a class=&quot;ext&quot;
href=&quot;http://packages.ubuntu.com/sshuttle&quot; &gt;Ubuntu since 11.04 Natty&lt;/a&gt;.

&lt;/p&gt;&lt;h4&gt;Miredo&lt;/h4&gt;&lt;p&gt;

&lt;a href=&quot;http://www.remlab.net/miredo/&quot; class=&quot;ext&quot; &gt;Miredo&lt;/a&gt; is an
free and open-source implementation of Microsoft&amp;#8217;s NAT-traversing
Teredo IPv6 tunneling protocol for at least Linux, &lt;a href=&quot;http://www.freebsd.org/&quot; class=&quot;ext&quot;&gt;FreeBSD&lt;/a&gt;, &lt;a href=&quot;http://www.netbsd.org/&quot; class=&quot;ext&quot;&gt;NetBSD&lt;/a&gt; and
MacOS X.

&lt;/p&gt;&lt;p&gt;

Miredo includes not only a Teredo client but also a Teredo server
implementation. The developer of Miredo also runs a public Miredo
server, so you don&amp;#8217;t even need to install a server somewhere. If you
run &lt;a href=&quot;http://www.debian.org/&quot; class=&quot;ext&quot;&gt;Debian&lt;/a&gt; or &lt;a href=&quot;http://www.ubuntu.com/&quot; class=&quot;ext&quot;&gt;Ubuntu&lt;/a&gt; you just need to do &lt;code&gt;&lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/miredo&quot;&gt;apt-get
install miredo&lt;/a&gt;&lt;/code&gt; as root and you have IPv6 connectivity. It&amp;#8217;s
that easy.

&lt;/p&gt;&lt;p&gt;

So it&amp;#8217;s perfect to get a dynamic IPv6 tunnel for your laptop or mobile
phone independently where you are and without the need to register any
IPv6 tunnel or configure the Miredo client.

&lt;/p&gt;&lt;p&gt;

I usually use Miredo on my netbooks to be able to access my boxes at
home (which are behind an IPv4 NAT router which is also an SixXS IPv6
tunnel endpoint) from whereever I am.

&lt;/p&gt;&lt;h4&gt;iodine&lt;/h4&gt;&lt;p&gt;

&lt;a href=&quot;http://code.kryo.se/iodine/&quot; class=&quot;ext&quot; &gt;iodine&lt;/a&gt; is
likely the most undermining tool in this set. It tunnels IPv4 over
&lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt;, allowing you to make arbitrary network connections if you are on
a network where nothing but &lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt; requests is allowed (i.e. only &lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt;
packets reach the internet).

&lt;/p&gt;&lt;p&gt;

This is often the case on wireless LANs with landing page. They
redirect all web traffic to the landing page. But the network&amp;#8217;s
routers try to avoid poisoning the client&amp;#8217;s &lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt; cache with different
&lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt; replies as they would get after the user is logged in. So &lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt;
packets usually pass even the local network&amp;#8217;s &lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt; servers unchanged,
just TCP and other UDP packets are redirected until logging in.

&lt;/p&gt;&lt;p&gt;

With an iodine tunnel, it is possible get a network connection to the
outside on such a network anyway. On startup iodine tries to
automatically find the best parameters (MTU, request type, etc.) for
the current environmenent. However that may fail if any &lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt; server in
between imposes &lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt; request rate limits.

&lt;/p&gt;&lt;p&gt;

To be able to start such a tunnel you need to set up an iodine daemon
somewhere on the internet. Choose a server which is not already a &lt;acronym title=&quot;Domain Name Service&quot;&gt;DNS&lt;/acronym&gt;
server.

&lt;/p&gt;&lt;p&gt;

iodine is available in many distributions, e.g. &lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/iodine&quot;&gt;in
Debian&lt;/a&gt; and &lt;a href=&quot;http://packages.ubuntu.com/iodine&quot; class=&quot;ext&quot;
&gt;in Ubuntu&lt;/a&gt;.</description>
    <comments>http://noone.org/blog/English/Computer/Mobile/Tunneling.futile#comments</comments>
    <slash:comments>0</slash:comments>
    <dc:language>en</dc:language>
    <category domain="http://noone.org/blog/tags/autossh">autossh</category>
<category domain="http://noone.org/blog/tags/Debian">Debian</category>
<category domain="http://noone.org/blog/tags/GitHub">GitHub</category>
<category domain="http://noone.org/blog/tags/iodine">iodine</category>
<category domain="http://noone.org/blog/tags/IPv6">IPv6</category>
<category domain="http://noone.org/blog/tags/Miredo">Miredo</category>
<category domain="http://noone.org/blog/tags/NAT">NAT</category>
<category domain="http://noone.org/blog/tags/Python">Python</category>
<category domain="http://noone.org/blog/tags/Squeeze">Squeeze</category>
<category domain="http://noone.org/blog/tags/SSH">SSH</category>
<category domain="http://noone.org/blog/tags/sshuttle">sshuttle</category>
<category domain="http://noone.org/blog/tags/Testing">Testing</category>
<category domain="http://noone.org/blog/tags/Ubuntu">Ubuntu</category>
<category domain="http://noone.org/blog/tags/Unstable">Unstable</category>
<category domain="http://noone.org/blog/tags/VPN">VPN</category>

  </item>
  <item>
    <title>Tools for CLI Road Warriors: Remote Shells</title>
    <slash:department>OTR-not-only-means-Off-The-Record</slash:department>
    <slash:section>English &amp;raquo; Computer &amp;raquo; Mobile</slash:section>
    <link>http://noone.org/blog/English/Computer/Mobile/Remote%2520Shells.html</link>
    <guid isPermaLink="true">http://noone.org/blog/English/Computer/Mobile/Remote%2520Shells.html</guid>
    <pubDate>Wed, 21 Mar 2012 19:48:03 +0100</pubDate>
    <author>abe+blog@deuxchevaux.org (Axel Beckert)</author>
    <description>
Most of my private online life happens on netbooks and besides the web
browser, &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt; is my most used program &amp;mdash; especially on netbooks.
Accordingly I also have hosts on the net to which I connect via &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt;.
My most used program there is &lt;a href=&quot;http://www.gnu.org/software/screen/&quot; class=&quot;ext&quot;&gt;&lt;acronym title=&quot;GNU&apos;s not Unix&quot;&gt;GNU&lt;/acronym&gt; Screen&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;

So yes, for things like e-mail, &lt;acronym title=&quot;Internet Relay Chat&quot;&gt;IRC&lt;/acronym&gt;, and &lt;a href=&quot;http://en.wikipedia.org/wiki/Jabber&quot; class=&quot;wiki&quot;&gt;Jabber&lt;/a&gt; I connect to a running
screen session on some host with a permanent internet connection. On
those hosts there is usually one &lt;a href=&quot;http://www.gnu.org/&quot; class=&quot;ext&quot; title=&quot;GNU&apos;s not Unix&quot;&gt;&lt;acronym title=&quot;GNU&apos;s not Unix&quot;&gt;GNU&lt;/acronym&gt;&lt;/a&gt; Screen instance running
permanently with either &lt;a href=&quot;http://www.mutt.org/&quot; class=&quot;ext&quot;&gt;mutt&lt;/a&gt; or &lt;a href=&quot;http://irssi.org/&quot; class=&quot;ext&quot;&gt;irssi&lt;/a&gt; (which is also my Jabber client
via a &lt;a href=&quot;http://www.bitlbee.org/&quot; class=&quot;ext&quot;&gt;Bitlbee&lt;/a&gt; gateway).

&lt;/p&gt;&lt;p&gt;

But there are some other less well-known tools which I regard as
useful in such a setup. The following two tools can both be seen as
&lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt; for special occassions.

&lt;/p&gt;&lt;h4&gt;auto&lt;!-- --&gt;ssh&lt;/h4&gt;&lt;p&gt;

I already &lt;a
href=&quot;http://noone.org/blog/English/Computer/Shell/Perfect%20Team:%20autossh%20and%20GNU%20Screen.futile&quot;
&gt;blogged about autossh&lt;/a&gt;, even &lt;a
href=&quot;http://noone.org/blog/English/Computer/Shell/autossh%20vs%20TCP%20resetter.futile&quot;
&gt;twice&lt;/a&gt;, so I&amp;#8217;ll just recap the most important features here:

&lt;/p&gt;&lt;p&gt;

&lt;a href=&quot;http://www.harding.motd.ca/autossh/&quot; class=&quot;ext&quot;&gt;autossh&lt;/a&gt; is a wrapper around &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt; which regularily checks via two
tunnels connect to each other on the remote side if the connection is
still alive, and if not, it kills the ssh and starts a new one with
the same parameters (i.e. tunnels, port forwardings, commands to call,
etc.).

&lt;/p&gt;&lt;p&gt;

It&amp;#8217;s quite obvious that this is perfect to be combined with screen&amp;#8217;s
&lt;code&gt;-R&lt;/code&gt; and &lt;code&gt;-d&lt;/code&gt; options.

&lt;/p&gt;&lt;p&gt;

I use autossh so often that I even &lt;a
href=&quot;http://bugs.debian.org/605423&quot; class=&quot;ext&quot; &gt;adopted&lt;/a&gt; its
&lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/autossh&quot;&gt;Debian package&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;

&lt;/p&gt;&lt;h4&gt;mosh&lt;/h4&gt;&lt;p&gt;

Since last week there&amp;#8217;s a new kid in town&lt;code&gt;^W&lt;/code&gt;&lt;a href=&quot;http://www.debian.org/&quot; class=&quot;ext&quot;&gt;Debian&lt;/a&gt;
Unstable: &lt;a href=&quot;http://mosh.mit.edu/&quot; class=&quot;ext&quot;&gt;mosh&lt;/a&gt; targets
the same problems as autossh (unreliable networks, roaming, suspending
the computer, etc.) just with a completely different approach which
partially even obsoletes the usage of &lt;acronym title=&quot;GNU&apos;s not Unix&quot;&gt;GNU&lt;/acronym&gt; Screen or tmux:

&lt;/p&gt;&lt;p&gt;

While mosh uses plain &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt; for authentication, authorization and key
exchange the final connection is an AES-128 encrypted UDP connection
on a random port and is independent of the client&amp;#8217;s &lt;acronym title=&quot;Internet Protocol&quot;&gt;IP&lt;/acronym&gt; address.

&lt;/p&gt;&lt;p&gt;

This allows mosh to have the following advantages: The connection
stays even if you&amp;#8217;re switching networks or suspending your netbook. So
if you&amp;#8217;re just running a single text-mode application you don&amp;#8217;t even
need &lt;acronym title=&quot;GNU&apos;s not Unix&quot;&gt;GNU&lt;/acronym&gt; Screen or tmux. (You still do if you want the terminal
multiplexing feature of &lt;acronym title=&quot;GNU&apos;s not Unix&quot;&gt;GNU&lt;/acronym&gt; Screen or tmux.)

&lt;/p&gt;&lt;p&gt;

Another nice feature, especially on unreliable &lt;acronym title=&quot;Wireless Local Area Network&quot;&gt;WLAN&lt;/acronym&gt; connections or
laggy &lt;acronym title=&quot;Global System for Mobile Communications&quot;&gt;GSM&lt;/acronym&gt; or &lt;acronym title=&quot;Universal Mobile Telecommunications System; Unvermutete Mehreinnahme zur Tilgung von Staatsschulden (Hans Eichel)&quot;&gt;UMTS&lt;/acronym&gt; connections is mosh&amp;#8217;s output prediction based on its
input (i.e. what is typed). Per line it tries to guess which server
reaction a key press would cause and if it detects a lagging
connection, it shows the predicted result underlined until it gets the
real result from the server. This eases writing mails in a remote mutt
or chatting in a remote irssi, especially if you noticed that you made
a typo, but can&amp;#8217;t remember how many backspaces you would have to type
to fix it.

&lt;/p&gt;&lt;p&gt;

Mosh needs to be installed on both, client and server, but the server
is only activated via &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt;, so it has no port open unless a connection
is started. And despite that (in Debian) &lt;a class=&quot;ext&quot; href=&quot;http://packages.debian.org/mosh&quot;&gt;mosh is
currently just available in Unstable&lt;/a&gt;, the package builds fine on
&lt;a href=&quot;http://www.debian.org/releases/squeeze/&quot; class=&quot;ext&quot;&gt;Squeeze&lt;/a&gt;, too. There&amp;#8217;s also an &lt;a class=&quot;ext&quot;
href=&quot;https://launchpad.net/~keithw/+archive/mosh&quot; &gt;&lt;acronym title=&quot;Personal Package Archive&quot;&gt;PPA&lt;/acronym&gt; for Ubuntu&lt;/a&gt;
and of course you can also get the source code, e.g. as &lt;a href=&quot;http://git-scm.com/&quot; class=&quot;ext&quot;&gt;git&lt;/a&gt; checkout
from &lt;a href=&quot;http://github.com/&quot; class=&quot;ext&quot;&gt;GitHub&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;

mosh is still &lt;a href=&quot;https://github.com/keithw/mosh/commits/master&quot;
class=&quot;ext&quot; &gt;under heavy development and new features and bug fixes
get added nearly every day&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;&lt;small&gt;

Thanks to &lt;a href=&quot;http://spang.cc/&quot; class=&quot;ext&quot; &gt;Christine Spang&lt;/a&gt;
for sponsoring and mentoring Keith&amp;#8217;s mosh package in Debian.

&lt;/small&gt;&lt;/p&gt;&lt;p&gt;

&lt;b&gt;Update:&lt;/b&gt; I gave a &lt;a class=&quot;uni&quot;
href=&quot;https://easterhegg.ch/lecture-ssh-ber-unzuverlssige-leitungen-lag-roaming-gsm-wackelige-wlans-und-hibernation&quot;
&gt;lightning talk about Mosh and AutoSSH in German at Easterhegg
2012&lt;/a&gt;. The &lt;a
href=&quot;http://noone.org/talks/ssh-tricks/ssh-tricks-eh12.html&quot;
&gt;slides&lt;/a&gt; are available online.</description>
    <comments>http://noone.org/blog/English/Computer/Mobile/Remote%2520Shells.futile#comments</comments>
    <slash:comments>1</slash:comments>
    <dc:language>en</dc:language>
    <category domain="http://noone.org/blog/tags/autossh">autossh</category>
<category domain="http://noone.org/blog/tags/Bitlbee">Bitlbee</category>
<category domain="http://noone.org/blog/tags/Debian">Debian</category>
<category domain="http://noone.org/blog/tags/GitHub">GitHub</category>
<category domain="http://noone.org/blog/tags/GNU%20Screen">GNU Screen</category>
<category domain="http://noone.org/blog/tags/IRC">IRC</category>
<category domain="http://noone.org/blog/tags/irssi">irssi</category>
<category domain="http://noone.org/blog/tags/Jabber">Jabber</category>
<category domain="http://noone.org/blog/tags/mosh">mosh</category>
<category domain="http://noone.org/blog/tags/mutt">mutt</category>
<category domain="http://noone.org/blog/tags/PPA">PPA</category>
<category domain="http://noone.org/blog/tags/Squeeze">Squeeze</category>
<category domain="http://noone.org/blog/tags/ssh">ssh</category>
<category domain="http://noone.org/blog/tags/SSH">SSH</category>
<category domain="http://noone.org/blog/tags/Testing">Testing</category>
<category domain="http://noone.org/blog/tags/Ubuntu">Ubuntu</category>
<category domain="http://noone.org/blog/tags/Unstable">Unstable</category>

  </item>
  <item>
    <title>aptitude-gtk will likely vanish</title>
    <slash:department>didn't-learn-to-fly</slash:department>
    <slash:section>English &amp;raquo; Computer &amp;raquo; Debian</slash:section>
    <link>http://noone.org/blog/English/Computer/Debian/aptitude-gtk%2520will%2520likely%2520vanish.html</link>
    <guid isPermaLink="true">http://noone.org/blog/English/Computer/Debian/aptitude-gtk%2520will%2520likely%2520vanish.html</guid>
    <pubDate>Wed, 21 Mar 2012 01:06:08 +0100</pubDate>
    <author>abe+blog@deuxchevaux.org (Axel Beckert)</author>
    <description>
As &lt;a class=&quot;ext&quot;
href=&quot;http://www.perrier.eu.org/weblog/2012/01/14#aptitude-revival&quot; &gt;
Christian already wrote&lt;/a&gt;, there&amp;#8217;s an &lt;a href=&quot;http://algebraicthunk.net/~dburrows/projects/aptitude/&quot; class=&quot;ext&quot;&gt;Aptitude&lt;/a&gt; revival ongoing. We
already saw this young team &lt;a class=&quot;ext&quot;
href=&quot;http://packages.qa.debian.org/a/aptitude/news/20120209T213239Z.html&quot;
&gt;releasing aptitude 0.6.5&lt;/a&gt; about 6 weeks ago, &lt;a class=&quot;ext&quot;
href=&quot;http://anonscm.debian.org/gitweb/?p=aptitude/aptitude.git;a=shortlog&quot;
&gt;more commits have been made&lt;/a&gt;, and now we&amp;#8217;re heading towards an
0.6.6 release quickly.

&lt;/p&gt;&lt;p&gt;

But this revival mostly covers the well-known and loved curses
interface (TUI) of aptitude and not the seldomly installed &lt;acronym title=&quot;GIMP-Toolkit&quot;&gt;GTK&lt;/acronym&gt;
interface, which unfortunately &lt;a class=&quot;ext&quot;
href=&quot;http://qa.debian.org/popcon.php?package=aptitude&quot; &gt;never really
took off&lt;/a&gt;:

&lt;/p&gt;&lt;p&gt;

While aptitude itself (i.e. the curses and commandline interface) is
installed on nearly 99% of all &lt;a href=&quot;http://www.debian.org/&quot; class=&quot;ext&quot;&gt;Debian&lt;/a&gt; installations which take part in
&lt;a href=&quot;http://popcon.debian.org/&quot; class=&quot;ext&quot; &gt;Debian&amp;#8217;s &amp;#8220;Popularity
Contest&amp;#8221; statistics&lt;/a&gt;, aptitude-gtk is only installed on 0.42% of
all these installations.

&lt;/p&gt;&lt;p&gt;

One reason is likely that aptitude-gtk still hasn&amp;#8217;t all the neat
features of the curses interface. And another reason is probably that
it&amp;#8217;s still quite buggy.

&lt;/p&gt;&lt;p&gt;

Since nobody from the current Aptitude Team has the experience,
leisure or time to resurrect (or even complete) aptitude-gtk, &lt;a
href=&quot;http://lists.alioth.debian.org/pipermail/aptitude-devel/2012-March/002172.html&quot;
class=&quot;ext&quot; &gt;the plan is to stop building aptitude-gtk from the
aptitude source package soon&lt;/a&gt;, i.e. to remove it from Debian for
now.

&lt;/p&gt;&lt;p&gt;

Like the even less finished &lt;a href=&quot;http://www.trolltech.com/products/qt/&quot; class=&quot;ext&quot;&gt;Qt&lt;/a&gt; interface of aptitude, its code will
stay in the &lt;acronym title=&quot;Versioning Control System&quot;&gt;VCS&lt;/acronym&gt;, but will be unmaintained unless someone steps up to
continue aptitude-gtk (or aptitude-qt, or both), maybe even as its own
source package.

&lt;/p&gt;&lt;p&gt;

So if you like aptitude-gtk so much that you&amp;#8217;re still using it and
want to continue using it, please think about contributing by &lt;a
href=&quot;http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/aptitude-devel&quot;
class=&quot;ext&quot; &gt;joining the Aptitude Team&lt;/a&gt; and getting aptitude&amp;#8217;s &lt;acronym title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/acronym&gt;
interface(s) back in shape.

&lt;/p&gt;&lt;p&gt;

Another option would be to find a mentor so that resurrecting (one of)
aptitude&amp;#8217;s &lt;acronym title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/acronym&gt; interfaces could become (again) a potential project at
&lt;a href=&quot;http://wiki.debian.org/SummerOfCode2012&quot; class=&quot;wiki&quot;
&gt;Debian&amp;#8217;s participation at Google&amp;#8217;s Summer of Code&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;

Please direct any questions about aptitude-gtk or aptitude-qt to the
&lt;a class=&quot;ext&quot;
href=&quot;http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/aptitude-devel&quot;
&gt;Aptitude Development Mailing List&lt;/a&gt;. Or even better, join the &lt;a
href=&quot;http://lists.alioth.debian.org/pipermail/aptitude-devel/2012-March/thread.html#2160&quot;
class=&quot;ext&quot; &gt;discussion in this thread&lt;/a&gt;.</description>
    <comments>http://noone.org/blog/English/Computer/Debian/aptitude-gtk%2520will%2520likely%2520vanish.futile#comments</comments>
    <slash:comments>1</slash:comments>
    <dc:language>en</dc:language>
    <category domain="http://noone.org/blog/tags/aptitude">aptitude</category>
<category domain="http://noone.org/blog/tags/aptitude%2Dgtk">aptitude-gtk</category>
<category domain="http://noone.org/blog/tags/Debian">Debian</category>
<category domain="http://noone.org/blog/tags/Google">Google</category>
<category domain="http://noone.org/blog/tags/GSoC">GSoC</category>
<category domain="http://noone.org/blog/tags/Planet%20Debian">Planet Debian</category>
<category domain="http://noone.org/blog/tags/removal">removal</category>
<category domain="http://noone.org/blog/tags/Summer%20of%20Code">Summer of Code</category>
<category domain="http://noone.org/blog/tags/Wheezy">Wheezy</category>

  </item>
  <item>
    <title>Happy Birthday GNU Screen!</title>
    <slash:department>State-of-the-Screen</slash:department>
    <slash:section>English &amp;raquo; Computer &amp;raquo; Shell</slash:section>
    <link>http://noone.org/blog/English/Computer/Shell/Happy%2520Birthday%2520GNU%2520Screen%2521.html</link>
    <guid isPermaLink="true">http://noone.org/blog/English/Computer/Shell/Happy%2520Birthday%2520GNU%2520Screen%2521.html</guid>
    <pubDate>Tue, 20 Mar 2012 23:42:19 +0100</pubDate>
    <author>abe+blog@deuxchevaux.org (Axel Beckert)</author>
    <description>
According to &lt;a class=&quot;ext&quot;
href=&quot;https://groups.google.com/group/net.sources/browse_thread/thread/e55f5059d2329d36&quot;
&gt;this Usenet posting&lt;/a&gt;, &lt;a href=&quot;http://www.gnu.org/software/screen/&quot; class=&quot;ext&quot;&gt;&lt;acronym title=&quot;GNU&apos;s not Unix&quot;&gt;GNU&lt;/acronym&gt; Screen&lt;/a&gt; became 25 years old today. (Found
&lt;a class=&quot;ext&quot; href=&quot;https://blog.fefe.de/?ts=b1967b1e&quot; &gt;via Fefe&lt;/a&gt;.)

&lt;/p&gt;&lt;p&gt;

And no, &lt;a href=&quot;http://git.savannah.gnu.org/cgit/screen.git/&quot;
class=&quot;ext&quot; &gt;it&amp;#8217;s not dead&lt;/a&gt;. In contrary, the reaction on the
mailing list to bug fixes &lt;em&gt;with patches&lt;/em&gt; is usually
impressingly prompt. :-)

&lt;/p&gt;&lt;p&gt;

I took this occassion and &lt;a class=&quot;uni&quot;
href=&quot;http://packages.qa.debian.org/s/screen/news/20120320T223354Z.html&quot;
&gt;uploaded a current git snapshot of &lt;acronym title=&quot;GNU&apos;s not Unix&quot;&gt;GNU&lt;/acronym&gt; Screen to Debian
Experimental&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;

Bug #&lt;a href=&quot;http://bugs.debian.org/644788&quot; class=&quot;ext&quot;&gt;644788&lt;/a&gt; (screen 4.1.0 can&amp;#8217;t attach to a running or
detached screen 4.0.3 session) is still an issue with that snapshot,
but gladly &lt;a class=&quot;ext&quot;
href=&quot;https://lists.gnu.org/archive/html/screen-devel/2012-02/msg00004.html&quot;
&gt;upstream seems to work on a solution&lt;/a&gt; for it. There&amp;#8217;s even talk
about a 4.1.0 beta release soon &amp;mdash; although that hasn&amp;#8217;t happened
yet.

&lt;/p&gt;&lt;p&gt;

Have fun!</description>
    <comments>http://noone.org/blog/English/Computer/Shell/Happy%2520Birthday%2520GNU%2520Screen%2521.futile#comments</comments>
    <slash:comments>1</slash:comments>
    <dc:language>en</dc:language>
    <category domain="http://noone.org/blog/tags/anniversary">anniversary</category>
<category domain="http://noone.org/blog/tags/birthday">birthday</category>
<category domain="http://noone.org/blog/tags/Debian">Debian</category>
<category domain="http://noone.org/blog/tags/Experimental">Experimental</category>
<category domain="http://noone.org/blog/tags/Git">Git</category>
<category domain="http://noone.org/blog/tags/GNU">GNU</category>
<category domain="http://noone.org/blog/tags/GNU%20Screen">GNU Screen</category>
<category domain="http://noone.org/blog/tags/screen">screen</category>
<category domain="http://noone.org/blog/tags/snapshot">snapshot</category>
<category domain="http://noone.org/blog/tags/upload">upload</category>

  </item>
    <link>http://noone.org/blog/English/Computer/Shell</link>
  </channel>
</rss>

