I’ve actually been working on this on-and-off for a few months now, but I have so little free time these days, progress has been extremely slow.
The project pulls *very* heavily from my experience with Sickbeard. The target here is to put together a system that ‘just works’, and doesn’t require continuous tweaks as Sickbeard does. To this end, the plan is currently:
- Only free, open, feeders (‘providers’ in SB terminology).
- Multiple different types of sources: Currently only torrents are implemented, but I’ve put in the basics for other types also (e.g. Video-On-Demand sites, like iPlayer, Hulu, etc. and download sites like icefilms.info).
- An integrated torrent client. Using libtorrent in Gotham is proving quite difficult, so I’m relying on Transmission for now. I’ll fix this in time.
- Low resource usage. Sickbeard did a *lot* of background downloading, refreshing, updating etc.. I have eliminated all of that here. There will be a small cost in terms of what we can display (e.g. banners and schedules and such), but I think it’s worth it. XBMC has many many addons which do a far better job of this kind of thing.
- Take out much of the functionality that doesn’t-quite-work (or isn’t really needed) in Sickbeard: e.g. Season pack downloads. Backlog. Notifications. Metadata downloads. Mass updates. (Most) Post-Processing.
(Note: I do plan to implement Backlog in the future, but using a very different technique. *cough* dns *cough* Everything else I’ve taken out is handled better by other XBMC addons)
- Scraping. Anyone who uses my fork of sickbeard will know that I’ve removed any instance of it that I can. I’ll be completely avoiding it here.
- Automatic fixing of ‘Scene’ numbering. Don’t get me wrong, Scene numbering is great, and it makes a *lot* more sense than thetvdb.com numbering. But XBMC (for the most part) uses thetvdb numbering, so we’re stuck with it. The addon will automatically convert between the two.
If you’re curious, have a look at the github link above. You can even install it and try it out if you like.
Please note that this is currently Pre-Alpha. It has bad bugs (which will occasionally require a restart of XBMC to fix), and some significant missing functionality. Of course we are delighted when anyone tries this out, but for the present the target market is developers and people who don’t mind poking around in logs and code.
A brief history:
* Skitch was great. It was an app for taking screenshots on a mac, editing them (in simple ways like adding text, arrows, cropping etc.), and uploading them to your own web hosting (or the app-supplied hosting, which I think no one ever used). Easily the most useful app I had on my mac. And it was free.
* Evernote bought (or somehow got involved with) Skitch, integrated it with all their other crap, removed most of the useful things from it, and basically destroyed it (this was about a year ago, maybe a bit more).
* Public outcry ensued.
* In an attempt to placate all their existing users, they kept the old version of skitch alive, and even updated it once or twice. Sadly though, it hasn’t been updated in a while, and now it looks like it’s been abandoned.
* Along came OSX 10.9, which looks like it has broken Skitch entirely. Even the recently-updated “Evernote-skitch” is broken.
So, today I went looking for, and found, a replacement: Scrup.
And what a replacement it is!
It does essentially the same thing (but much more sensibly). And it’s FREE, and OPEN SOURCE. And it works a treat on 10.9. I just adore that the code is there for all to see on github: there isn’t anything I’d change in it yet, but I just love being able to!
I’ve included a torrent client in my torrent-friendly fork of Sickbeard. The UI is a little limited at the moment, but it’s been wiping the floor with both Transmission and uTorrent here for the last few days in terms of download speed, so I think it’s ready to be set loose on the world.
To enable it, you’ll first need to install libtorrent rasterbar (version 0.16 or later), and its python bindings.
If you do not have an already-running copy of this fork, just follow the general installation instructions.
For debian derivatives: (i.e. Ubuntu, mint, etc)
sudo apt-get install python-libtorrent
That could hardly be much simpler now could it?
You’ll need to do a little compiling I’m afraid.
This post includes all the required details.
For Windows: (yes, for once I haven’t forgotten about you!)
Go here, and download the .msi which matches your version of python (probably either py27 or py26).
Pick a recent version – the older ones won’t work with magnet links.
If your OS doesn’t come with a packaged version of libtorrent rasterbar and its python bindings (and note that most will!), then you’ll probably need to build from source.
svn co https://libtorrent.svn.sourceforge.net/svnroot/libtorrent/trunk/ lt/
sudo make install
Once you have installed the above, restart Sickbeard, go to Config -> Search Settings -> Torrent Method, and change it to “Integrated”.
Any OS-specific tweaks you wish to share? Please note them in the comments.
- Is libtorrent installed? What version do I have?
python -c "import libtorrent as lt; print lt.version"will tell you very quickly. You should get a response like
0.16.9.0– if you get an error, or a version less than 0.16, this is likely to be your issue.
- All my torrents are stuck at “downloading_metadata”: for dht to work (and hence for metadata to be available), the torrent client needs at least one valid peer to exchange data with, but if all your downloads are trackerless magnets, it won’t have one. Try adding a torrent manually (using either a magnet link with trackers, or a link to a .torrent file). You can delete the added torrent as soon as metadata begins to download. [Note: This issue should be resolved with recent releases]
- Having other Issues? Check out this post (and read through the comments) to see if someone else has addressed it.
- Still having Issues? Check out the github issue tracker. Please search the existing issues before creating a new one, and include a debug log in any new issues! (you can censor it beforehand if you feel the need)
- It looks like ubuntu 12.04 installs libtorrent 0.15.x by default, which is a little too outdated for use here. So, if you are a 12.04 user, you’ll either need to build from source, or find a ppa with a more recent version (please post any suggestions in the comments). Thanks go to Chris for pointing this out.Update (with thanks to Dennis): This repo appears to have all the needed packages.
Also check out TvTumbler, an addon for XBMC with the same basic functionality, but obviously integrated directly with your XBMC library.
Compiling Rasterbar Libtorrent on OSX 10.7 or 10.8 (tested on both 10.7.5 and 10.8.4), without brew and all the crap it brings with it.
First, you’ll need to install XCode, and command-line tools.
Then, you’ll need to download and build boost:
Click on ‘Download’, and download the latest .tar.gz. In my case this was boost_1_53_0.tar.gz
tar -zxvf boost_*.tar.gz
sudo ./b2 install
This all ran cleanly in my case, but googling would seem to imply that it often gives errors.
Next, download the libtorrent source:
And again, download the latest .tar.gz. In my case this was libtorrent-rasterbar-0.16.9.tar.gz
tar -zxvf libtorrent-rasterbar-0.16.9.tar.gz
sudo make install
That should be it, but in my case for some reason the python bindings were put into /usr/local/lib/python2.6/site-packages/ (where the correct site-packages is in fact /Library/Python/2.6/site-packages). I’m not really sure why this happened, but it’s easy enough to fix. Continuing from where we were above:
sudo python setup.py install
And it gets the correct directory this time around.
Update (Sept 2, 2013): Tested with libtorrent 0.16.11 and boost 1.54 on Max OSX 10.9. Works as described above. Boost gives lots of deprecation warnings, but it runs without issue.
Just a few hours ago, dailytvtorrents.org disappeared, replaced with the message:
2013-04-25: Sorry guys, our hosting provider kicked us out so we have to be offline for now. I’m very busy nowadays and I don’t have time to look for a new place. If you think you know a solution you can reach me here: firstname.lastname@example.org.
Until then, it was a nice ride. :–)
Ps: you can check this page from time to time, I will try to keep you updated when I know more. I got some really nice email, thank you guys.
For a time this was probably the best TV torrent site on the web, well-categorised, always current, and with a decent backlog. It’s sad to see it go.
For the present I’ll leave it as part of my Torrent-friendly Sick-beard fork. Users can simply uncheck it on the ‘Search Providers’ page.
My thanks to Richard and all at DailyTvTorrents.org for a wonderful service over the last few months. Hope this isn’t the end for you.
I’ve added experimental support for Custom RSS torrent feeds into my sickbeard fork.
The whole thing should be self-explanatory I think. Currently I use the following feeds myself:
- TPB – TvTeam: http://rss.thepiratebay.sx/user/7e434ea6455f089db7f0291b3bd1d4db
- TPB – VTV: http://rss.thepiratebay.sx/user/e395935fa39597e3997b916a295f23e4
- TPB – ettv: http://rss.thepiratebay.sx/user/0e3b2f46e5892dc5b2aac6dbe548bc27
These are links to the rss feeds for specific users on thepiratebay.se.
Obviously any rss feed that includes links to download torrent files (or public magnet links) will work also.
Other feeds that have been recommended to me (but I don’t use myself) include:
- BT-chat: http://rss.bt-chat.com/?cat=9
- monova.org: http://www.monova.org/rss.php?type=catname&id=8
(Please feel free to recommend others in the comments)
Consider this experimental for now. It works for me, but I can’t guarantee that it will work for anyone else.
For some peculiar reason, Netatmo don’t have an OSX app for viewing their devices (however their iOS one is simply brilliant). So, me being me, I wrote one. Very simple app to put together in fact (but then, it doesn’t do all the fancy history stuff that the iOS one does).
Read the rest of this entry »
I’ve just merged the iplayer branch of my Sickbeard fork into master, as it’s been working ok for me for the last few days, and I think it’s ready for some others to check it out.
But, be warned: it has prerequisites. In short, these are:
- Perl: any *nix will have this
- On linux, you probably just need to do
sudo apt-get install ffmpeg(or whatever the rpm equivalent is).
- On OSX, take a look at my recent post about how to build ffmpeg.
- On linux, you probably just need to do
- On linux, again, you can probably just do
sudo apt-get install rtmpdump(or the rpm equivalent).
- On OSX, building this is just too simple:
git clone git://git.ffmpeg.org/rtmpdump
sudo make install SYS=darwin
- On linux, again, you can probably just do
If you’re on a *nix machine, there’s a strong likelihood that you have all these installed already, so best to check first.
Windows users: you’re on your own here, sorry. I believe that get_iplayer will run on Windows, but I simply don’t have a copy of the OS installed on which to check it. You’ll probably need to get both ffmpeg and rtmpdump also too I’m afraid. If you do have success with windows (or indeed any other OS), let me know in the comments and I’ll add the instructions here.
All of this is made possible of course by the work from infradead on the get_iplayer script (latest version included in the sickbeard code, but you can install your own if you prefer).
Please note: for this to work you must either be *in* the UK, or have some kind of VPN connection to the UK. iPlayer downloads are restricted to UK ip addresses. (of course there are other ways around this, but I’m not going to discuss those here).
Note-to-self post again.
I can take no credit for this – it’s a copy of Hunter Ford’s script from here, with some minor changes I had to make to get it to run cleanly on 10.7.5.
Prerequisite: XCode, with command line tools installed.
I have an old macbook pro (circa 2008 I think) running 10.8 with an external monitor. Today I started running Avatron’s Air Display on it (a wonderful piece of software by the way), which runs in full screen mode. This left the laptop display itself useless, displaying that grey cloth background which apparently means “This is how OSX fullscreen works – get used to it”.
Anyway, I wanted to run Terminal.app on the main laptop screen, while running Air Display fullscreen on the external monitor. Apparently there are two ways:
1. It seems that you can “trick” OSX to allow this, by using the trackpad to slide between spaces, and opening Terminal.app (via spotlight) mid-slide. I couldn’t get this to work however, as my trackpad doesn’t do multi-touch (it’s too old), and it seems you need it. Works for a lot of other people though.
See this hint on macworld for details.
2. You can modify Terminal.app’s Info.plist file to make it a background app. Then, if you open Terminal.app (again, via spotlight) while viewing the fullscreen app, it won’t switch out of fullscreen mode.
To do this:
* Quit Terminal.app if running.
* Right-click on it, and Show Package Contents.
* Open the file Contents/Info.plist, and add the bold text below at the end (before the last “</dict>”):
</dict> </dict> </array> <key>LSUIElement</key> <string>1</string> </dict> </plist>
Note that this has some serious side-effects! Most notably, the terminal will no longer appear as running in the dock, and you won’t be able to ALT-TAB to it.
(some general info regarding LSUIElement is available here)
That’s it. I’d be interested in hearing if there are other (easier!) ways.
This is an annotated/censored copy of the SEPxxx.cnf.xml I use with my 7975G and chan-sccp-b/asterisk.
Note-to-self style post again.
MySQL’s innodb will store all table data in one file called ibdata1, unless you tell it to do otherwise. This can become an issue sometimes, particularly when the file gets really big.
Thankfully there’s a way to fix it.
Add innodb_file_per_table to my.cnf
Update the running server with the same value
SET GLOBAL innodb_file_per_table=1;
ALTER TABLE tablename ENGINE=Innodb;
for each table to move it out of the ibdata1 file.
Alternatively, you can use this little bit of trickery to generate the sql needed to do it for all tables:
SELECT concat('ALTER TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ' ENGINE=Innodb;') FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE = 'InnoDB';
Then paste the result as sql and run it (it may take some time though).