Autoaudio

It's ugly as hell, but it 100% works.

alt text

Autoaudio parses http://nfodb.net.ru/rss.php for the latest Scene audio releases. Then, it queries http://nzbindex.nl/ for the release and creates a .nzb.

Releases are sorted by genre and album title and folders are created which hold .nfo and .nzb files for each release. A zip is created of each folder and is uploaded to https://anonfiles.com/. The resulting list is uploaded as an anonymous gist. A file called download.thor, which is a tiny robot that parses the anonymous gist and redownloads the files from https://anonfiles.com/, is uploaded with the album links. Finally, the gist url is tweeted.

Gems Used:

Basic Usage:

Run autoaudio list for a list of basic commands.

Advanced Usage:

Autoaudio requires a few bits of info from you, before it will run correctly.

Before you do anything, run autoaudio setup setup. This will open config/settings.rb in your editor of choice. Enter info, then save the file.

  download_location    "#{Dir.home}/Downloads/Albums" #=> This is where you want to download the nfo and nzb files.
  maximum_retention    900                            #=> This is the max retention of your usenet server.
  nzb_client           'Unison.app'                   #=> This isn't in use, at the moment.
  zip_files            true                           #=> Do you want to zip the nfo and nzb files together?
  share_files          true                           #=> Upload zips to anonfiles?
  tweet_files          true                           #=> Do you want to tweet the uploaded url's?
  twitter_username     'usenetdecoded'                #=> Twitter username - whatever you have T setup to tweet as.

To do:

  • IRC integration - let's go straight to the source
  • help
  • write a more understandable readme
  • add more thor commands as well as more and better descriptions
  • clean up the code - at the moment, it's a huge ball of crap
  • better error handling
  • multithreading
  • tests
  • include a launchd plst for for running locally
  • more upload options
  • more search and source options
  • tor-privoxy

License:

Copyright (c) 2014 Gene Locklin

MIT License

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Contributing:

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request