Bitcetera TechBlog http://www.bitcetera.com/en/rss/ en-us 40 News about Bitcetera products, services and the technologies used. wemakeit.ch <p>It&#8217;s been rather quiet on this blog lately. The reason is the latest Ruby on Rails project I&#8217;m working on: <a href="http://wemakeit.ch">wemakeit.ch</a>, a crowdfunding web application which focuses on culture and the arts. The wish list of features is still pretty long, but we&#8217;re very pleased with how it looks and behaves at this point. Take a look, you might like it as well and maybe you even find something worth some of your bucks on <a href="http://wemakeit.ch">wemakeit.ch</a>.</p> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Thu, 03 May 2012 18:43:41 GMT http://www.bitcetera.com/en/techblog/2012/05/03/wemakeit-ch/ http://www.bitcetera.com/en/techblog/2012/05/03/wemakeit-ch/ sendgrowl <p>This is a followup to the <a href="/en/techblog/2010/12/05/sendmail-via-growl/">sendmail via Growl article</a> a while ago.</p> <h2>growlnotify with Callback</h2> <p>Growl 1.3 has switched to the new <span class="caps">GNTP</span> (Growl Notification Transport Protocol) and it&#8217;s <tt>growlnotify</tt> companion now features limited support for &#8220;notification clicked&#8221; callbacks. Let&#8217;s see what we can do with this.</p> <p>The old <tt>sendmail-via-growl</tt> script displayed messages piped to <tt>sendmail</tt> as Growl notifications. This is great for system messages from Cron which are usually short and text only. It&#8217;s not so useful for larger or <span class="caps">HTML</span> messages since Growl notifications are very limited when it comes to available space and styling options. Wouldn&#8217;t it be nice to just click on a Growl notification and then see a preview of the message?</p> <h2>Bye sendmail-via-growl, Hello sendgrowl</h2> <p>The new <tt>sendgrowl</tt> script does just that. <a href="/page_attachments/0000/0036/sendgrowl.gz">Download sendgrowl</a>, gunzip and save it as <tt>/usr/local/bin/sendgrowl</tt>, make it executable and then wire it up with <code>sendgrowl --on</code>. The original <tt>sendmail</tt> executables are renamed and symlinks to <tt>sendgrowl</tt> are created instead. To revert these changes, just call <code>sendgrowl --off</code>.</p> <p>When a message hits <tt>sendmail</tt> now, it triggers a Growl notification. Click it within 10 seconds to see the entire message in a Quick Look preview window. The 10 seconds are hardcoded into <tt>growlnotify</tt> to keep it from hanging forever. However, if you miss this time frame, you can manually open the preview with <code>sendgrowl -s {ID}</code>. The ID is displayed in the Growl notification.</p> <p>The <tt>sendgrowl</tt> script filters &#8220;X-&#8221; mail headers only, however, it&#8217;s certainly possible to chain in more <tt>sed</tt> commands to make the Growl notification more readable. Please add your improvements as comments.</p> <h2>MockSMTP</h2> <p>You need a more comprehensive mail preview solution to develop webapps which send multipart messages? <a href="http://mocksmtpapp.com">MockSMTP</a> may be what you are looking for.</p> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Tue, 22 Nov 2011 21:10:19 GMT http://www.bitcetera.com/en/techblog/2011/11/22/sendgrowl/ http://www.bitcetera.com/en/techblog/2011/11/22/sendgrowl/ Diaspora* <p>If you know Diaspora* already and just want to know how to become part of it, simply skip the first two sections.</p> <h2>Social Networking</h2> <p>Linking with other people on the net is great, particularly if you have friends in far away places or enjoy a more nomadic lifestyle yourself. And it&#8217;s cheap to stay in touch and communicate since Facebook&reg; and alike are free, or &#8230;?</p> <p>Wrong! Facebook&reg; will soon operate <a href="http://downloadsquad.switched.com/2010/06/29/facebook-doubles-its-server-count-from-30-000-to-60-000-in-just-6-months/">more than 100&#8217;000 servers</a> and someone has to pay for all this. The mere quantity of equipment indicates, that Facebook&reg; not only serves it&#8217;s users. A lot of juice goes into further processing of all this data in order to pour it into products interesting to enterprise customers.</p> <p>In other words, your data is being sold. Your pictures, your posts and your links to other people are being sold. In fact, your entire digital self is being sold. And all this is perfectly legal since you have given Facebook&reg; a &#8220;non-exclusive, transferable, sub-licensable, royalty-free, worldwide license to use any IP content&#8221; by agreeing to <a href="http://www.facebook.com/terms.php">it&#8217;s terms</a>. There are no limits as to what for.</p> <p>But Facebook&reg; doesn&#8217;t stop there, it aggregates data on people who are not active on Facebook&reg;, it even creates shadow profiles for those who don&#8217;t even have a proper account. And unless you <a href="http://howto.cnet.com/8301-11310_39-20070045-285/how-to-disable-facial-recognition-in-facebook/">disable the well hidden automatic face recognition</a>, machines will take over where you are lazy and interlink all faces on your uploaded pictures.</p> <p>Some of this activity is illegal in many countries since it deals with personal data of people who have never agreed to the Facebook&reg; terms. There will be lawsuits in the future, but meanwhile the data monster will continue to grow fat.</p> <p>Big Brother Inc is watching you! And me, whether we agree or not.</p> <h2>Social Networking Reloaded</h2> <p>Roughly one year ago a group of developers began work on a crowdfunded next generation social network project called Diaspora*. The main difference: Unlike Facebook&reg; your data is not stored in one centralized database owned by one giant enterprise but on an independent Diaspora* server called &#8220;pod&#8221;. These Diaspora* pods can communicate between each other and thus link friends and exchange posts across all pods of the Diaspora* network. You are free to choose any pod operator or even run your own pod.</p> <p>If you ever change your mind, you can export all your data (which is utterly impossible on Facebook&reg;). And soon it will be possible to take this export and recreate your profile on another pod.</p> <h2>How to Become Part of Diaspora*</h2> <p>or</p> <h2>But I Have All my Friends on Facebook&reg; already</h2> <p>Diaspora* is still young and doesn&#8217;t offer nearly as many features as Facebook&reg; yet. (As a side note: Diaspora* introduced &#8216;aspects&#8217; later copied by <a href="http://diasporial.com/articles/aspects-get-copied-again">Google+ as &#8216;circles&#8217; and Facebook&reg; as &#8216;lists&#8217;</a>.) Furthermore, all your friends are on Facebook&reg; which seems to make the change of social network unthinkable.</p> <p>No problem, Diaspora* plays nice with other services such as Facebook&reg; or Twitter&reg;. If you want, it can forward all your posts on Diaspora* to Facebook&reg; and it also offers a tool to ease the transition of your friend links. You won&#8217;t have to hit no big reset button and start from scratch, the idea is to convince one friend at a time and thus slowly move towards the day when Facebook&reg; becomes obsolete.</p> <p>If you run a server, you might consider to <a href="https://github.com/diaspora/diaspora/wiki/Installing-and-Running-Diaspora">install your own Diaspora* pod</a>.</p> <p>Everybody else is better off with a public Diaspora* pod. All pods are equal, but you might prefer certain operators based on who runs the pod or it&#8217;s physical and thus legal location.</p> <ol> <li>Choose any <a href="http://podupti.me">public Diaspora* pod</a>.</li> <li>Create an account.</li> <li>Link your account to your Facebook&reg; account.</li> <li>Check out the <a href="http://diasporial.com/tutorials">tutorials</a> and/or <a href="https://github.com/diaspora/diaspora/wiki/FAQ-for-Users"><span class="caps">FAQ</span></a> to learn the easy to use basics.</li> </ol> <p>To connect with other people, sign in to Diaspora* and simply look for them in the top search field. However, keep the following in mind: Since users are spread on many independent Diaspora* pods, you have to search for the fully qualified username which resembles an email address. (Mine is <tt>svoop@diaspora.bitcetera.com</tt> for instance.) Fetching usernames from other pods may take a moment, so if your search doesn&#8217;t instantly yield any results, just wait a minute and try again.</p> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Sun, 20 Nov 2011 16:37:18 GMT http://www.bitcetera.com/en/techblog/2011/11/20/diaspora/ http://www.bitcetera.com/en/techblog/2011/11/20/diaspora/ Changed Overlay URLs <p>Gentoo ebuild overlays managed through layman have been slightly overhauled recently. We&#8217;ve chosen to update our overlays before the old specification is deprecated. If you use any of our overlays, edit the file <tt>/etc/layman/layman.cfg</tt> and replace the <span class="caps">URL</span> as follows:</p> <pre> OLD: http://github.com/svoop/bitcetera-overlay/raw/master/layman.xml NEW: http://github.com/svoop/bitcetera-overlay/raw/master/repositories.xml </pre> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Thu, 27 Oct 2011 15:25:21 GMT http://www.bitcetera.com/en/techblog/2011/10/27/changed-overlay-urls/ http://www.bitcetera.com/en/techblog/2011/10/27/changed-overlay-urls/ Mail Followup Marker Sanitation <p>First of all, I love languages. I&#8217;m fluent in four and a half of them and have no doubts that the variety of languages is a vital part of our human culture. However &#8230;</p> <h2>Once upon a time</h2> <p>Well before <span class="caps">WWW</span> saw the day of light, people had already communicated on the early internet by use of email and Usenet. They had agreed on the use of &#8220;Re:&#8221; in the subject to denote &#8220;this is a followup to your recent mail&#8221;. For Usenet, this was formally codified 1983 in <a href="http://tools.ietf.org/html/rfc850"><span class="caps">RFC</span> 850</a> and later for email in <a href="http://tools.ietf.org/html/rfc2822"><span class="caps">RFC</span> 2822</a>.</p> <p>Unfortunately, some modern mail clients (most notably Outlook) don&#8217;t care. They interpret &#8220;Re&#8221; as short for &#8220;response&#8221; and thus translate it to other locales. A german Outlook user therefore prefixes &#8220;AW&#8221; and I&#8217;m sure many more such prefixes exist in other languages &#8211; a clear breach of standards.</p> <h2>Threads</h2> <p>To make things worse, if two email clients with different locales pingpong a message, the subject line sprawls on every response: &#8220;Hello&#8221;, &#8220;Re: Hello&#8221;, &#8220;AW: Re: Hello&#8221;, &#8220;Re: AW: Re: Hello&#8221; and so forth. Since modern email clients group messages by the &#8220;Re&#8221;-stripped subject, they will fail to do so in the above case if they stick to the standards. What a mess!</p> <h2>Postfix&#8217; header_checks to the Rescue</h2> <p>Postfix offers an easy way to rewrite subject lines by use of regular expressions. Please note that my examples rely on <span class="caps">PCRE</span> (Perl compatible regular expressions), so make sure your <a href="http://www.postfix.org/PCRE_README.html">Postfix is compiled with <span class="caps">PCRE</span> support</a>. If <code>postconf -m | grep pcre</code> doesn&#8217;t return anything, your Postfix does not yet do so.</p> <p>Now create the file <tt>/etc/postfix/header_checks</tt> with the following content:<br /> <pre><code>/^Subject:s*((Fwd|WG):s*)+(.*)$/ REPLACE Subject: Fwd: $3 /^Subject:s*((Re|AW|Antwort):s*)+(.*)$/ REPLACE Subject: Re: $3 </code></pre></p> <p>These two lines replace and collapse the german translations of &#8220;Re&#8221; and &#8220;Fwd&#8221; with their standard complient counterparts. You may add other languages to the list such as the danish &#8220;Svar&#8221;. Please drop a comment below since I&#8217;d like to compile a more comprehensive list of translations out there.</p> <p>Now we&#8217;re ready to apply these checks. Edit the file <tt>/etc/postfix/main.cf</tt> to contain:<br /> <pre>header_checks = pcre:/etc/postfix/header_checks</pre></p> <p>Finally, reload or restart Postfix and send yourself an email with a subject such as &#8220;AW: Re: AW: AW: Hello World&#8221; for testing.</p> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Tue, 18 Oct 2011 14:19:16 GMT http://www.bitcetera.com/en/techblog/2011/10/18/mail-followup-marker-sanitation/ http://www.bitcetera.com/en/techblog/2011/10/18/mail-followup-marker-sanitation/ Lion Fullscreen for TextMate <p>While some changes in early Mac OS X Lion versions reduce overall usability (e.g. I&#8217;d love a more exposéish Mission Control), the introduction of the systemwide fullscreen mode comes in very handy in everyday use. Wouldn&#8217;t it be great to put TextMate into fullscreen mode as well?</p> <p>But wait, TextMate development has not been particularly agile in recent years and who wants to wait for TextMate 2 in order to see this feature. You could compile your own brew of TextMate from source to get fullscreen, tutorials for this are available in the depths of the interweb. But there&#8217;s a much simpler solution.</p> <p>Thanks to <a href="http://www.enormego.com">enormego</a>, installing a tiny plugin for TextMate is all it takes. Browse to the <a href="https://github.com/enormego/EGOTextMateFullScreen">EGOTextMateFullScreen page on Github</a>, hit the download button, unzip the file and double-click on the plugin. Voilà!</p> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Wed, 17 Aug 2011 09:32:32 GMT http://www.bitcetera.com/en/techblog/2011/08/17/lion-fullscreen-for-textmate/ http://www.bitcetera.com/en/techblog/2011/08/17/lion-fullscreen-for-textmate/ NoSQL on Mac OS X <p>NoSQL databases such as <a href="http://www.mongodb.org">MongoDB</a> and <a href="http://redis.io">Redis</a> have become quite popular especially in the Ruby and Rails ecosystem. If you&#8217;re developing on a Mac though, installation can be quite a hassle unless you rely on some package manager. The easiest solution is probably <a href="http://mxcl.github.com/homebrew/">Homebrew</a>, a quite mature installer written in Ruby. However, it lacks many feautures of a real package manager such as versions, slotting and a clean uninstall (which includes dependencies).</p> <p>This is why I prefer Gentoo Prefix which is powered by Gentoo&#8217;s excellent Portage source package manager. Check out <a href="/en/techblog/2008/05/08/gentoo-prefix-on-mac-os-x/">my introductory blog post</a> to get a feel for Gentoo Prefix.</p> <h2>MongoDB</h2> <p><a href="http://www.mongodb.org">MongoDB</a> is not yet part of the official Gentoo Prefix packages repository as of now, but you can still install it from our overlay. <a href="/en/products/gentoo-ebuilds/bitcetera-prefix-overlay">Follow the instructions</a> to subscribe to it.</p> <p>MongoDB defaults to the Spidermonkey JS engine, however, due to some issues with packaging and speed, I prefer Google&#8217;s V8 engine &#8211; at least for now:</p> <pre> echo "dev-db/mongodb v8" &gt;&gt;$EPREFIX/etc/portage/package.use echo "dev-lang/v8 **" &gt;&gt;$EPREFIX/etc/portage/package.keywords emerge -av mongodb </pre> <p>The following aliases come in handy for your daily work with MongoDB:</p> <pre> alias mongo-start="mongod --fork --dbpath \$EPREFIX/var/lib/mongodb --logpath \$EPREFIX/var/log/mongodb.log" alias mongo-stop="killall -SIGTERM mongod 2&gt;/dev/null" alias mongo-status="killall -0 mongod 2&gt;/dev/null; if [ \$? -eq 0 ]; then echo 'started'; else echo 'stopped'; fi" </pre> <p>Let&#8217;s go ahead and try:</p> <pre> mongo-start mongo </pre> <h2>Redis</h2> <p>The installation for <a href="http://redis.io">Redis</a> is the usual one-liner:</p> <pre> emerge -av redis </pre> <p>The convenience aliases:</p> <pre> alias redis-start="redis-server \$EPREFIX/etc/redis.conf" alias redis-stop="killall -SIGTERM redis-server 2&gt;/dev/null" alias redis-status="killall -0 redis-server 2&gt;/dev/null; if [ \$? -eq 0 ]; then echo 'started'; else echo 'stopped'; fi" </pre> <p>That&#8217;s it! Give it a try:</p> <pre> redis-start redis-cli </pre> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Tue, 15 Feb 2011 17:56:38 GMT http://www.bitcetera.com/en/techblog/2011/02/15/nosql-on-mac-os-x/ http://www.bitcetera.com/en/techblog/2011/02/15/nosql-on-mac-os-x/ Sendmail via Growl <p><span class="warning">This blog article is out of date, check out <a href="/en/techblog/2011/11/22/sendgrowl/">sendgrowl</a> instead.</span></p> <p>If you have never seen the shell prompt of your Mac, then this post is not for you. However, if you are used to work with more than just the eyecandy parts of Mac OS X, you probably have come across the following problem at some point: Some asynchronous system tools such as Cron or Portage from <a href="/en/techblog/2008/05/08/gentoo-prefix-on-mac-os-x/">Gentoo Prefix</a> pipe their output to <tt>sendmail</tt> and hope someone will receive it. Yet, that won&#8217;t happen with the current default settings.</p> <h2>Postfix or sSMTP</h2> <p>There are several ways to fix this. You could configure the Postfix <span class="caps">MTA</span> bundled with Mac OS X to relay the messages to your <span class="caps">SMTP</span> host. Unless you know quite a bit about Postfix already, you should however cancel your plans for the rest of the day. Or go for some frontend <span class="caps">GUI</span> application if you don&#8217;t mind it to mess around with your configuration.</p> <p>You could also install <a href="ftp://ftp.debian.org/debian/pool/main/s/ssmtp/">sSMTP</a> as a really simple replacement <span class="caps">MTA</span> which is a breeze to configure. Unfortunately, it doesn&#8217;t do <span class="caps">SASL</span> (unless you build from <a href="https://github.com/ajwans/sSMTP">Andrew Wansink&#8217;s fork bfg branch</a>). And without <span class="caps">SASL</span>, delivery will quite silently fail if the recipient address relies on greylisting to reduce <span class="caps">SPAM</span>.</p> <h2>Sendmail via Growl</h2> <p>Time to take one step back: Is it really necessary to deliver these messages? If this were a server, the answer would be an unconditional &#8220;yes&#8221;, but we are talking about a Mac OS X workstation here, so there shouldn&#8217;t be any root cronjobs and the Mac shouldn&#8217;t be on all day and night &#8211; for our planet&#8217;s sake. Why not just display a Growl notification?</p> <p><img src="/page_attachments/0000/0034/notification.jpg" /></p> <p>It is pretty easy to turn sendmail messages piped to sendmail into Growl notifications, so I&#8217;ve written a little script for this purpose. <a href="/page_attachments/0000/0035/sendmail-via-growl">Download sendmail-via-growl</a>, move it to <tt>/usr/local/bin</tt> and make it executable. As always, you are using this script at your own risk.</p> <p>To enable Growl notifications:<br /> <pre>sendmail-via-growl &#45;&#45;on</pre></p> <p>To test Growl notifications:<br /> <pre>echo &#8220;Let&#8217;s test this!&#8221; | sendmail</pre></p> <p>The Growl notification strips all mail headers beginning with &#8220;X-&#8221;. If you want to read the complete message, look for it in <tt>/tmp/sendmail-via-growl</tt> where old messages are kept for 30 days.</p> <p>And you can of course revert back to the original <tt>sendmail<tt>:<br /> <pre>sendmail-via-growl &#45;&#45;off</pre></p> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Sun, 05 Dec 2010 16:20:35 GMT http://www.bitcetera.com/en/techblog/2010/12/05/sendmail-via-growl/ http://www.bitcetera.com/en/techblog/2010/12/05/sendmail-via-growl/ Cloud Backup <p>Backups are important. Most people have learned that, some the hard way, and keep backups on external drives. This is a good idea, but it&#8217;s not enough. Physical desasters like fire or thieves in the house still have the potential to carve your name into the gravestone of deceased digital lives. Cloud backups to the rescue!</p> <h2>Requirements</h2> <p>The storage provider should be fast, unlimited and affordable. Furthermore, you want to keep at least some control as to where the data is actually being stored. (Jurisdiction in say US and EU differ significantly when it comes to data privacy.) As of now, the best match is Amazon S3.</p> <p>The cloud backup software on the other hand has to encrypt the data before it is sent to the cloud. Moreover, subsequent backups should only store the bits that have changed meanwhile. And of course the software should be easy to use and as failsafe as possible.</p> <h2>Mac OS X</h2> <p>It&#8217;s been a fruitless task to find a suitable cloud backup software on Mac OS X ever since cloud storage appeared in the sky. But fear not, a relatively new kid on the block fills this gap amazingly well: <a href="http://www.haystacksoftware.com/arq/">Arq by Haystack Software</a>.</p> <p>Arq mimics Apple&#8217;s TimeMachine when it comes to ease of use, yet it&#8217;s still possible to tweak important parameters such as the physical storage region or the redundancy class (more reduntant = more expensive). All you have to do is create an Amazon S3 account, then launch Arq and answer the few question it initially asks. If you are on a high bandwith link, you can configure Arq to do hourly or daily backups. Nomadic users on the other hand may prefer to kick off backups manually from the Arq menubar item.</p> <p>The overall volume (and thus cost) of cloud storage can be limited. Restoring files is as easy as dragging them out of the Arq window and even if the Mac you backup from gets lost in a sparkling blaze, it&#8217;s very easy to restore the files to any other Mac &#8211; provided you remember your encryption password or have a hardcopy of it safely tucked away in a safe place.</p> <p>Arq is not freeware, but it&#8217;s very actively maintained and worth every cent.</p> <h2>Linux Servers</h2> <p>Failing backup systems offered by hosting providers are not unheard of and disasters may not stop at the doors of a server farm. Cloud backups therefore make sense for servers as well, at least for very essential data such as <code>/etc</code> or database dumps.</p> <p>The list of available backup software is quite large but shrinks considerably if you are looking for a console tool with support for Amazon S3. A mature solution is <a href="http://duplicity.nongnu.org">duplicity by Ben Escoto and Kenneth Loafman</a>, essentially a Python script which relies on rsync, GnuPG (for encryption), boto (for Amazon S3 connectivity) and NcFTP as an alternative storage backend.</p> <p>The following wrapper script is an example for how to call duplicity as a daily cronjob. Check out the man page of duplicity for details. You should create a new set of <span class="caps">GPG</span> keys per server solely for use with duplicity as the passphrase for this <span class="caps">GPG</span> key is present in the wrapper script. Also make sure you set restrictive permissions on the wrapper script. To test your setup, use the <code>--dry-run</code> option which is handed through to duplicity.</p> <pre> #!/bin/bash export AWS_URL='s3+http://myserver.mydomain.com' # Amazon S3 bucket export AWS_ACCESS_KEY_ID='' # Amazon S3 key ID export AWS_SECRET_ACCESS_KEY='' # Amazon S3 access key export GPG_ENCRYPT_KEY='root@myserver.mydomain.com' # GPG key for encryption export GPG_SIGN_KEY='' # GPG key ID (hex) for signing export PASSPHRASE='' # GPG key passphrase duplicity \ --full-if-older-than 1M \ --include /etc \ --include /root \ --exclude '**' \ --exclude-other-filesystems \ --encrypt-key ${GPG_ENCRYPT_KEY} \ --sign-key ${GPG_SIGN_KEY} \ / \ ${AWS_URL} \ --s3-european-buckets \ --s3-use-new-style \ --verbosity warning \ $(if [ "$1" == '--dry-run' ]; then echo '--dry-run'; fi) \ $(if [ "$1" != '--dry-run' ]; then echo '--no-print-statistics'; fi) \ \ &amp;&amp; \ \ duplicity remove-all-but-n-full \ 12 \ ${AWS_URL} \ --s3-european-buckets \ --s3-use-new-style \ --verbosity error \ $(if [ "$1" != '--dry-run' ]; then echo '--force'; fi) \ \ &amp;&amp; \ \ duplicity cleanup \ --extra-clean \ ${AWS_URL} \ --s3-european-buckets \ --s3-use-new-style \ --verbosity error \ $(if [ "$1" != '--dry-run' ]; then echo '--force'; fi) \ &gt;/dev/null </pre> <p>This is just an example which works for me, you use it at your own risk.</p> <h2>Other</h2> <p>I haven&#8217;t investigated other use cases such as Linux workstations or Windows. Feel free to share your killer apps by submitting a comment.</p> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Tue, 30 Nov 2010 17:38:18 GMT http://www.bitcetera.com/en/techblog/2010/11/30/cloud-backup/ http://www.bitcetera.com/en/techblog/2010/11/30/cloud-backup/ RSS Tips for Mail.app <h2>Why Mail.app?</h2> <p>While Mail.app certainly ain&#8217;t the best <span class="caps">RSS</span> reader out there, having both email and <span class="caps">RSS</span> feeds under one roof certainly has it&#8217;s advantages. This feature has been around for a while but only recently have some nasty bugs been resolved which caused read and deleted articles to re-appear at random.</p> <h2><span class="caps">RSS</span> Folders</h2> <p>If you&#8217;re like me subscriber of a whole range of <span class="caps">RSS</span> feeds, you might want to group feeds at some point. Wouldn&#8217;t it be nice to have all say Ruby related <span class="caps">RSS</span> articles in one folder?</p> <p>This feature is available in Mail.app, however, the context menu in the sidebar doesn&#8217;t show it and thus many don&#8217;t know about it. To create a <span class="caps">RSS</span> folder, click the &#8220;Mailbox -&gt; New Mailbox&#8221; menu item and then select &#8220;<span class="caps">RSS</span>&#8221; in the location dropdown. The folder appears in the sidebar and you can move feeds there.</p> <p>Make sure you enable the Mailbox column in order to see from which <span class="caps">RSS</span> feed a particular article originates.</p> <h2>Feeds with Media Content</h2> <p>Some feeds include media content, most notably pod- or screencast feeds. As of version 4.2, Mail.app attempts to download all linked media content of all <span class="caps">RSS</span> articles being fetched which may result in several GB of traffic, takes a long while and slowly eats up your memory. Once you run out of physical memory, the Mac starts to scratch to disk which pretty much stalls the computer.</p> <p>There&#8217;s no easy cure for this, however, a bug has been filed already and Apple seems to be working on it. Meanwhile, you will have to rely e.g. on iTunes to subscribe to the pod- or screencast directly.</p> <h2>Feed <span class="caps">URL</span></h2> <p>Have you ever tried to find out from which <span class="caps">URL</span> a <span class="caps">RSS</span> feed viewed in Mail.app is being fetched? There is no easy way to display this information in Mail.app itself, but you can open a terminal and type <tt>pubsub list</tt> to get a list of all <span class="caps">RSS</span> feeds subscribed by either Mail.app, Safari or another application using the facilities of Mac OS X.</p> <p>(<a href="/en/services/sven-schwyn">Sven Schwyn</a>)</p> Mon, 17 May 2010 16:02:38 GMT http://www.bitcetera.com/en/techblog/2010/05/17/rss-tips-for-mail-app/ http://www.bitcetera.com/en/techblog/2010/05/17/rss-tips-for-mail-app/