<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>log for howto</title>
  <updated>2012-02-06T13:53:59+00:00</updated>
  <link href="http://www.bitcheese.net/wiki/log/howto"/>
  <entry>
    <title>link markup fix</title>
    <updated>2012-02-06T13:53:59+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/98ba3c262f0be5a3ec31fc2412c71850d1c9703b"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;link markup fix&lt;/strong&gt;&lt;/p&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/howto/vangers-linux&lt;/span&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ b/howto/vangers-linux&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -54,7 +54,7 @@&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;# Clunk можно собирать из svn (@svn co https://clunk.svn.sourceforge.net/svnroot/clunk clunk &amp;amp;&amp;amp; cd clunk/trunk &amp;amp;&amp;amp; scons...@) &lt;br /&gt;# Можно скачать *libclunk.so* для &amp;quot;32бит&amp;quot;:http://dump.bitcheese.net/files/repenap/libclunk.so или для &amp;quot;64бит&amp;quot;:http://jvfiles.mjv-art.org/files/64/libclunk.so и скопировать в /usr/local/lib/.&lt;br /&gt;# Можно еще собрать clunk через cmake, находясь в его исходниках, wget &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;[http://dump.bitcheese.net/files/pycomor/CMakeLists.txt]&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;[:http://dump.bitcheese.net/files/pycomor/CMakeLists.txt]&lt;/span&gt; &amp;amp;&amp;amp; cmake . &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install.&lt;br /&gt;&lt;br /&gt;h3. Нерусское видео кое-где</content>
  </entry>
  <entry>
    <title>link fix</title>
    <updated>2012-02-03T18:01:57+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/90e014d4197cabd0c17db85b9670256a67e10eb1"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;link fix&lt;/strong&gt;&lt;/p&gt;</content>
  </entry>
  <entry>
    <title>symlink</title>
    <updated>2012-02-03T17:37:59+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/1071b4876bce58098ed6eec0a48dd416eceaf796"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;symlink&lt;/strong&gt;&lt;/p&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/howto/ajax-dump&lt;/span&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ /dev/null&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -1,36 +1 @@&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;h1. How to use dump.bitcheese.net to asynchronously upload files&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;1. Generate an unique token for your upload, sending GET request to @http://dump.bitcheese.net/gentoken@&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;bc. % curl http://dump.bitcheese.net/gentoken&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;nuxyzud&amp;lt;...&amp;gt;umonuso&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;2. Add this token as @token@ form field when uploading a file&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;bc. % curl -F file=@file -F token=nuxyzud&amp;lt;...&amp;gt;wyfumonuso http://dump.bitcheese.net/upload-file?simple&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;http://dump.bitcheese.net/files/urobos/&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;3. If you want to query progress of file upload, you can send GET request to @http://dump.bitcheese.net/gettoken/$token@&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;bc. curl http://dump.bitcheese.net/gettoken/nuxyzu&amp;lt;...&amp;gt;fumonuso&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;This returns either an empty string (if file isn't uploaded yet or token doesn't exist) or relative path to file, like @files/urobos/file@&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;@gentoken@ and @gettoken@ are also available in JS format, just append &amp;quot;?format=js&amp;quot; to URI:&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;bc. % curl http://dump.bitcheese.net/gentoken?format=js&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;uploader.callback(&amp;quot;nuxyzud&amp;lt;...&amp;gt;umonuso&amp;quot;);&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;bc. % curl http://dump.bitcheese.net/gettoken/nuxyzud&amp;lt;...&amp;gt;umonuso?format=js&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;uploader.callback(&amp;quot;images/uwegyra/font.png&amp;quot;, {&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;	&amp;quot;url&amp;quot;:&amp;quot;http://dump.localhost/images/uwegyra/font.png/preview&amp;quot;,&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;	&amp;quot;name&amp;quot;:&amp;quot;font.png&amp;quot;,&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;	&amp;quot;size&amp;quot;:1186,&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;	&amp;quot;file&amp;quot;:&amp;quot;http://dump.localhost/images/uwegyra/font.png&amp;quot;,&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;	&amp;quot;pixelsize&amp;quot;:[164,36],&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;	&amp;quot;thumbsize&amp;quot;:[400,88],&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;	&amp;quot;thumb&amp;quot;:&amp;quot;http://dump.localhost/images/uwegyra/thumb/font.png&amp;quot;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;	});&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;Fields should be self-descriptive.&lt;/span&gt;</content>
  </entry>
  <entry>
    <title>hackage mirror link</title>
    <updated>2011-06-14T17:42:30+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/9290e41a113f55f0d6fb1f87d10ea11bb2e8e34c"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;hackage mirror link&lt;/strong&gt;&lt;/p&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/QMPDClient/index&lt;/span&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ b/QMPDClient/index&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -24,7 +24,7 @@&lt;/span&gt;&lt;br /&gt;h2. Links&lt;br /&gt;&lt;br /&gt;* Bleeding edge from git: &amp;quot;tarball&amp;quot;:http://git.bitcheese.net/?a=archive&amp;amp;p=qmpdclient&amp;amp;h=HEAD&amp;amp;t=targz&lt;br /&gt;* Latest version &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;(1.2.1): &amp;quot;tarball&amp;quot;:http://dump.bitcheese.net/files/qmpdclient-1.2.1.tar.bz2&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;(1.2.2): &amp;quot;tarball&amp;quot;:http://dump.bitcheese.net/files/qmpdclient-1.2.2.tar.bz2&lt;/span&gt; , &amp;quot;1.2 deb&amp;quot;:http://dump.bitcheese.net/files/qmpdclient_1.2-1_i386.deb&lt;br /&gt;* 1.1.2 &amp;quot;binaries&amp;quot;:http://dump.bitcheese.net/files/QMPDClient1.1.2.zip for windows made by Martin Roths&lt;br /&gt;* Legacy version with qt &amp;lt; 4.4 support (1.0.14):  &amp;quot;tarball&amp;quot;:http://dump.bitcheese.net/files/qmpdclient-1.0.14.tar.bz2&lt;br /&gt;* &amp;quot;Mailing list&amp;quot;:http://groups.google.com/group/qmpdclient, &amp;quot;announcements&amp;quot;:http://groups.google.com/group/qmpdclient-announce.&lt;br /&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/howto/setup-hackage-mirror&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ b/howto/setup-hackage-mirror&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -19,4 +19,6 @@&lt;/span&gt;&lt;br /&gt;That is all! You can serve this directory as hackage mirror.&lt;br /&gt;&lt;br /&gt;Here's a shell script that does it all for you: [http://gist.github.com/562813]&lt;br /&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;I also run a &amp;quot;hackage mirror&amp;quot;:http://dump.bitcheese.net/hackage myself, with rsync support (see &amp;quot;howto-rsync.txt&amp;quot;:http://dump.bitcheese.net/hackage/howto-rsync.txt).&lt;/span&gt;</content>
  </entry>
  <entry>
    <title>lyrics site renamed</title>
    <updated>2011-05-30T17:44:03+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/0ed279138375617bd0e3982e5afeb30d5053da12"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;lyrics site renamed&lt;/strong&gt;&lt;/p&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/howto/read-song-lyrics&lt;/span&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ b/howto/read-song-lyrics&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -1,4 +1,4 @@&lt;/span&gt;&lt;br /&gt;h1. A hack to rip contents from State-Of-Art Intellectual Property Protection Technology of &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;LyricWiki.com&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;Lyrics.Wikia.Com&lt;/span&gt; (Which We Have To Use Because Of Licensing Agreement)&lt;br /&gt;&lt;br /&gt;Simple Ruby script that outputs HTML lyrics:</content>
  </entry>
  <entry>
    <title>lyrics update</title>
    <updated>2011-05-30T17:32:54+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/ba1504acfcb3fc6ebefe5b3894ef057904a612a6"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;lyrics update&lt;/strong&gt;&lt;/p&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/howto/read-song-lyrics&lt;/span&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ b/howto/read-song-lyrics&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -1,32 +1,19 @@&lt;/span&gt;&lt;br /&gt;h1. &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;That does not work anymore!&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;Well, it works, but you'll need JS-enabled browser or rip out the token and use it&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;A hack&lt;/span&gt; to &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;get actual page.&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;The best service I found so far is &amp;quot;lyricsplugin&amp;quot;:http://lyricsplugin.com. Its interface is sacral knowledge though. Here it is.&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;h2. Example&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;[http://www.lyricsplugin.com/winamp03/plugin/?artist=Chitlins,%20Whiskey%20%26%20Skirt&amp;amp;title=Increased%20Chances]&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;h2. Explanation&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;Base URI: http://www.lyricsplugin.com/winamp03/plugin/&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;GET parameter &amp;quot;artist&amp;quot;: Artist name, e.g. &amp;quot;Chitlins,%20Whiskey%20%26%20Skirt&amp;quot; (URI encoded!)&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;GET parameter &amp;quot;title&amp;quot;: Song title, e.g. &amp;quot;Increased%20Chances&amp;quot;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;Returned is HTML with maybe lyrics.&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;h2. Script&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;rip contents from State-Of-Art Intellectual Property Protection Technology of LyricWiki.com (Which We Have To Use Because Of Licensing Agreement)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Simple Ruby script that outputs &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;plaintext&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;HTML&lt;/span&gt; lyrics:&lt;br /&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;bc.. % lyrics.rb &amp;quot;The Prodigy&amp;quot; &amp;quot;Omen&amp;quot;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;It’s an omen&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;It’s an omen&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;Now!&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;...&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;p. [http://gist.github.com/343356]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;bc. require 'open-uri'&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;puts open(&amp;quot;http://lyrics.wikia.com/#{URI.escape(ARGV[0])}:#{URI.escape(ARGV[1])}&amp;quot;).read.scan(%r|&amp;lt;div class='lyricbox'&amp;gt;&amp;lt;div class='rtMatcher'&amp;gt;.*?&amp;lt;/div&amp;gt;(.*?)&amp;lt;!--|m)[0][0]&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;Plaintext lyrics are harder:&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;bc. require 'rubygems'&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;require 'open-uri'&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;require 'hpricot'&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;puts Hpricot.parse(open(&amp;quot;http://lyrics.wikia.com/#{URI.escape(ARGV[0])}:#{URI.escape(ARGV[1])}&amp;quot;)).at('div.lyricbox').children.select {|a| a.name != &amp;quot;div&amp;quot;}.map {|s| s.to_plain_text}.join(&amp;quot;&amp;quot;) #.to_plain_text&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;h2. Links&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;&amp;quot;HTML&amp;quot;:https://github.com/Voker57/scripts/blob/master/lyrics-html and &amp;quot;TXT&amp;quot;:https://github.com/Voker57/scripts/blob/master/lyrics-txt scrappers on github.&lt;/span&gt;</content>
  </entry>
  <entry>
    <title>Bah. Never ever place images from other hosts</title>
    <updated>2011-04-22T08:54:31+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/253e1b557915c8a23bdc66205e18d2db7efeccd7"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;Bah. Never ever place images from other hosts&lt;/strong&gt;&lt;/p&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/howto/vangers-linux&lt;/span&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ b/howto/vangers-linux&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -31,14 +31,11 @@&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;h2(#screenshots). Скриншоты&lt;br /&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;!http://vangers.org/download/V_vs_L/vang_screen9.png!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;!http://dump.bitcheese.net/images/111.jpg!&lt;br /&gt;!http://dump.bitcheese.net/images/222.jpg!&lt;br /&gt;!http://dump.bitcheese.net/images/333.jpg!&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;!http://vangers.org/download/V_vs_L/vang_screen11.png!&lt;/span&gt;&lt;br /&gt;!http://dump.bitcheese.net/images/444.jpg!&lt;br /&gt;!http://dump.bitcheese.net/images/555.jpg!&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;!http://vangers.org/download/V_vs_L/vang_screen12.png!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;h2(#download). Скачать</content>
  </entry>
  <entry>
    <title>hackage mirror fix</title>
    <updated>2011-01-01T17:22:32+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/9d5700e21da233ff4304213f002dcd4d13d6692d"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;hackage mirror fix&lt;/strong&gt;&lt;/p&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/howto/setup-hackage-mirror&lt;/span&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ b/howto/setup-hackage-mirror&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -2,19 +2,21 @@&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. @cd@ to a clean directory where you want your hackage mirror to be&lt;br /&gt;&lt;br /&gt;2. Download &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;a tarball with latest hackage contents from [http://hackage.haskell.org/cgi-bin/hackage-scripts/archive.tar]&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;package index:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;bc. wget &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;http://hackage.haskell.org/cgi-bin/hackage-scripts/archive.tar -O /tmp&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;http://hackage.haskell.org/packages/archive/00-index.tar.gz&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;3. This &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;archive&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;package index&lt;/span&gt; contains &lt;span style='color: #8AFF63; background: #000D00;'&gt;.cabal files of all&lt;/span&gt; packages &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;in tar.gz's placed in folders (@HAppS-Server/0.9.3.1/HAppS-Server-0.9.3.1.tar.gz@), which should be placed in @package@ subdirectory&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;that are available&lt;/span&gt; on &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;server.&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;hackage in /packages/archive/$package/$version/$package-$version.tar.gz.&lt;/span&gt; However, &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;if&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;this is an exception for hackage.haskell.org, added and maintained by some moron. If&lt;/span&gt; your &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;mirror hostname&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;host&lt;/span&gt; is &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;not @hackage.haskell.org@ (*UGLY UGLY HACK GODDAMN WHOEVER DONE IT*), cabal will request not @package/HAppS-Server/0.9.3.1/HAppS-Server-0.9.3.1.tar.gz@, but just @package/HAppS-Server-0.9.3.1.tar.gz@. So, we need&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;different, you have&lt;/span&gt; to &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;transform file paths:&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;bc. tar xf /tmp/archive.tar --transform 's|^.*/|package/|'&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;4. Download package index:&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;serve them as /package/$package-$version.tar.gz. So, here's a shell script that downloads and places them for you:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;bc. &lt;span style='color: #8AFF63; background: #000D00;'&gt;for splitpk in `tar tf 00-index.tar.gz | cut -d/ -f 2,3`; do&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	pk=`echo $splitpk | sed 's|/|-|'`&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	name=$pk.tar.gz&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	if [ ! -a package/$name ]; then&lt;/span&gt;&lt;br /&gt;		wget &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;http://hackage.haskell.org/packages/archive/00-index.tar.gz&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;http://hackage.haskell.org/packages/archive/$splitpk/$name -O package/$name&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	fi&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;done&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;That is all! You can serve this directory as hackage &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;mirror&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;mirror.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Here's a shell script that does it &lt;span style='color: #8AFF63; background: #000D00;'&gt;all&lt;/span&gt; for you: [http://gist.github.com/562813]</content>
  </entry>
  <entry>
    <title>ajax-dump update</title>
    <updated>2010-11-07T12:36:48+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/0aa7ab06aa7653283ecd539def16ece18a7fcffd"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;ajax-dump update&lt;/strong&gt;&lt;/p&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/howto/ajax-dump&lt;/span&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ b/howto/ajax-dump&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -19,5 +19,18 @@&lt;/span&gt;&lt;br /&gt;@gentoken@ and @gettoken@ are also available in JS format, just append &amp;quot;?format=js&amp;quot; to URI:&lt;br /&gt;&lt;br /&gt;bc. % curl http://dump.bitcheese.net/gentoken?format=js&lt;br /&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;callback(&amp;quot;nuxyzud&amp;lt;...&amp;gt;umonuso&amp;quot;);&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;uploader.callback(&amp;quot;nuxyzud&amp;lt;...&amp;gt;umonuso&amp;quot;);&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;bc. % curl http://dump.bitcheese.net/gettoken/nuxyzud&amp;lt;...&amp;gt;umonuso?format=js&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;uploader.callback(&amp;quot;images/uwegyra/font.png&amp;quot;, {&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	&amp;quot;url&amp;quot;:&amp;quot;http://dump.localhost/images/uwegyra/font.png/preview&amp;quot;,&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	&amp;quot;name&amp;quot;:&amp;quot;font.png&amp;quot;,&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	&amp;quot;size&amp;quot;:1186,&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	&amp;quot;file&amp;quot;:&amp;quot;http://dump.localhost/images/uwegyra/font.png&amp;quot;,&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	&amp;quot;pixelsize&amp;quot;:[164,36],&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	&amp;quot;thumbsize&amp;quot;:[400,88],&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	&amp;quot;thumb&amp;quot;:&amp;quot;http://dump.localhost/images/uwegyra/thumb/font.png&amp;quot;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;	});&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;Fields should be self-descriptive.&lt;/span&gt;</content>
  </entry>
  <entry>
    <title>fucking js</title>
    <updated>2010-10-29T04:52:14+00:00</updated>
    <link href="http://www.bitcheese.net/wiki/diff/672eb88d073666fffb7b2e4e75084a987e6fb4ca"/>
    <author>
      <name>Voker57</name>
    </author>
    <content type="html">&lt;p&gt;&lt;strong&gt;fucking js&lt;/strong&gt;&lt;/p&gt;&lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;-- a/howto/ajax-dump&lt;/span&gt;&lt;span style='color: #8AFF63; background: #000D00;'&gt;++ b/howto/ajax-dump&lt;/span&gt;&lt;br /&gt;&lt;span style='color: #E200FF'&gt;@@ -16,8 +16,8 @@&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This returns either an empty string (if file isn't uploaded yet or token doesn't exist) or relative path to file, like @files/urobos/file@&lt;br /&gt;&lt;br /&gt;@gentoken@ and @gettoken@ are also available in JS format, just append &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;&amp;quot;?js&amp;quot;&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;&amp;quot;?format=js&amp;quot;&lt;/span&gt; to URI:&lt;br /&gt;&lt;br /&gt;bc. % curl &lt;span style='color: #FF9EA0;	background: #000D00;	text-decoration: line-through;'&gt;http://dump.bitcheese.net/gentoken&lt;/span&gt; &lt;span style='color: #8AFF63; background: #000D00;'&gt;http://dump.bitcheese.net/gentoken?format=js&lt;/span&gt;&lt;br /&gt;callback(&amp;quot;nuxyzud&amp;lt;...&amp;gt;umonuso&amp;quot;);</content>
  </entry>
</feed>

