Sign up ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free.

Look at this img: enter image description here

Generally, Transmission tries to download all of items which are defined in a torrent file, concurrently. For example, if we have 10 item in a torrent file, after 1 hour, they can be in a range of 15% - 50% of progress (depending to the rate of download).

Is it possible to force Transmission to download items one by one: alphabetically or by sizes, etc. I know I can check/uncheck items manually as you see in the above image, but I'm asking for a way to do it automatically.

share|improve this question
Maybe you can try deluge that allows you to prioritize files and there's even a plugin that allows you to download sequentially all pieces (by prioritization) – Braiam Jul 20 '14 at 21:32
@Braiam, I need to run the client on GDM, without login and Transmission-Daemon can do it while graphical torrent clients such as deluge need login to Desktop! – mini Jul 21 '14 at 2:25
Are you sure? I can have deluged as daemon running on boot without even login. – Braiam Jul 21 '14 at 2:38
Wow, Deluge vs Deluged; so I'll try it in Cron. – mini Jul 21 '14 at 10:12
Cron? Why cron? Just set it up to start at the system startup. – Braiam Jul 21 '14 at 14:36

1 Answer 1

libtransmission has a python API, so you could script anything you want... but no, that feature is not baked in.

Here's a working example

#!/usr/bin/env python3

import transmissionrpc

tc = transmissionrpc.Client('localhost', port=(9091))

torrents = tc.get_torrents()
for torrent in torrents:
  if torrent.status == 'downloading':
    low = []
    torrent_files = torrent.files()
    for item in torrent_files:
    high = []
    for item in sorted(torrent_files, key=lambda x: torrent_files[x]['name']):
      if torrent_files[item]['size'] - torrent_files[item]['completed'] > 0:
    tc.change(, priority_high=high, priority_low=low)    

I put together a desktop widget to do this for me here.

share|improve this answer
Is this script just using port 9091? – mini Aug 20 '14 at 11:30
Yes. It's the default transmission-rpc port that only accepts connections from if enabled without auth and no trusted hosts are specified. – hbdgaf Aug 20 '14 at 13:49

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.