Add torreas
This commit is contained in:
parent
6781bbe938
commit
4c6e5346e7
10 changed files with 100 additions and 2 deletions
8
.gitignore
vendored
8
.gitignore
vendored
|
|
@ -22,6 +22,10 @@ dat/nginx-confgen/changes.log
|
|||
dat/nginx-confgen/changes.md
|
||||
dat/nginx-confgen/man.md
|
||||
dat/nginx-confgen/man.pod
|
||||
dat/torreas/changes.log
|
||||
dat/torreas/changes.md
|
||||
dat/torreas/man.md
|
||||
dat/torreas/man.pod
|
||||
dat/tuwf/changes.log
|
||||
dat/tuwf/changes.md
|
||||
dat/tuwf/man.md
|
||||
|
|
@ -89,6 +93,10 @@ pub/nginx-confgen.html
|
|||
pub/nginx-confgen/changes.html
|
||||
pub/nginx-confgen/feed.atom
|
||||
pub/nginx-confgen/man.html
|
||||
pub/torreas.html
|
||||
pub/torreas/changes.html
|
||||
pub/torreas/feed.atom
|
||||
pub/torreas/man.html
|
||||
pub/tuwf.html
|
||||
pub/tuwf/changes.html
|
||||
pub/tuwf/feed.atom
|
||||
|
|
|
|||
9
Makefile
9
Makefile
|
|
@ -67,7 +67,10 @@ PAGES=\
|
|||
"tuwf/man/xml.pod https://g.blicky.net/tuwf.git/plain/lib/TUWF/XML.pod TUWF::XML Documentation"\
|
||||
"ylib.pod https://g.blicky.net/ylib.git/plain/README.pod Ylib"\
|
||||
"yxml.md"\
|
||||
"yxml/man.md https://g.blicky.net/yxml.git/plain/yxml.md"
|
||||
"yxml/man.md https://g.blicky.net/yxml.git/plain/yxml.md"\
|
||||
"torreas.md"\
|
||||
"torreas/changes.log https://g.blicky.net/torreas.git/plain/ChangeLog Torreas Release History"\
|
||||
"torreas/man.pod https://g.blicky.net/torreas.git/plain/torreas.pod Torreas Manual"
|
||||
|
||||
|
||||
# Files generated by mkfeed.pl
|
||||
|
|
@ -78,7 +81,8 @@ FEEDS=\
|
|||
pub/ncdu/feed.atom\
|
||||
pub/nginx-confgen/feed.atom\
|
||||
pub/tuwf/feed.atom\
|
||||
pub/yxml/feed.atom
|
||||
pub/yxml/feed.atom\
|
||||
pub/torreas/feed.atom
|
||||
|
||||
|
||||
# Files we need to download
|
||||
|
|
@ -149,6 +153,7 @@ ${HTML_OUT}: pub/%.html: dat/%.md template.html
|
|||
nginx-confgen*) echo "nginx-confgen";;\
|
||||
tuwf*) echo "tuwf";;\
|
||||
yxml*) echo "yxml";;\
|
||||
torreas*) echo "torreas";;\
|
||||
*) echo "main";;\
|
||||
esac)\
|
||||
-o "$@"
|
||||
|
|
|
|||
|
|
@ -17,6 +17,9 @@ respective issue tracker or send a mail to
|
|||
|
||||
# Entries
|
||||
|
||||
`2023-10-27` - kspes
|
||||
: I love this tool so much! I use it on all my unix and mac machines quite often :)
|
||||
|
||||
`2023-09-11` - NeedM
|
||||
: Nice client program but only 32bit version?
|
||||
|
||||
|
|
|
|||
|
|
@ -19,6 +19,10 @@ the incidental article on this site. Enjoy your stay!
|
|||
<!-- These announcements are parsed by mkfeed.pl, see that file for formatting -->
|
||||
## Announcements <a href="/feed.atom"><img src="/img/feed_icon.png" alt="Atom feed"></a>
|
||||
|
||||
`2023-11-03` - New tool: torreas <!-- link: /torreas -->
|
||||
: I wrote a little tool to reassemble torrent files, more information
|
||||
available on its [homepage](/torreas).
|
||||
|
||||
`2023-09-11` - ncdu 1.19 released <!-- tags: ncdu, link: /ncdu -->
|
||||
: Fixes a typo in the `--exclude-from` option and backports the CLI option to
|
||||
disable natural sorting and the little indicator in the footer whether
|
||||
|
|
|
|||
48
dat/torreas.md
Normal file
48
dat/torreas.md
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
% Torreas - Torrent file reassembler
|
||||
|
||||
Torreas is a little command-line utility to reassemble torrents. It can scan
|
||||
multiple directories in order to find files that are mentioned in the torrent.
|
||||
It does this by only comparing file sizes and checksums, not location or file
|
||||
name, so it can be used to reconstruct a torrent that you have downloaded and
|
||||
archived somewhere, at some point.
|
||||
|
||||
## Download
|
||||
|
||||
Latest version <a href="/torreas/feed.atom"><img src="/img/feed_icon.png" alt="Atom feed"></a>
|
||||
: 0.1 ([torreas-0.1.tar.gz](/download/torreas-0.1.tar.gz) - [changes](/torreas/changes))
|
||||
|
||||
Build requirements
|
||||
: Zig 0.11
|
||||
|
||||
License
|
||||
: MIT
|
||||
|
||||
Development version
|
||||
: Available [on git](https://code.blicky.net/yorhel/torreas).
|
||||
|
||||
## Bugs & limitations
|
||||
|
||||
**Partial reassembly** is not yet supported. If a file is missing from your
|
||||
local archive, torreas will give up and throw an error. Will likely get fixed
|
||||
in future versions.
|
||||
|
||||
Torreas currently does an **exhaustive search** and is therefore able to find
|
||||
*all* matching (duplicate) files. This is usually overkill, as you'll only need
|
||||
one match for each file to reassemble a torrent. This totally hasn't been a
|
||||
problem in my tests so far, but if there's many candidate files it may be
|
||||
faster to stop searching after the first match. I may or may not fix this in
|
||||
the future.
|
||||
|
||||
**Padding files** in torrents are not yet supported. Should be easy to fix, I
|
||||
simply haven't encountered such a torrent yet.
|
||||
|
||||
Torreas could be a lot faster if it could use multiple cores to verify
|
||||
checksums, but the current version is **single-threaded**. I don't expect this
|
||||
to change anytime soon, I don't particularly enjoy writing threaded code and
|
||||
Zig, in its current form, doesn't yet have the tools to help out much in this
|
||||
area either.
|
||||
|
||||
Because torrent checksums can span multiple files, there are edge cases where
|
||||
torreas will run out of memory or simply never complete while it is trying to
|
||||
brute-force all possible file combinations. I may add more heuristics or manual
|
||||
user feedback in the future to better handle such cases.
|
||||
16
pub/download/torreas-0.1.tar.gz.asc
Normal file
16
pub/download/torreas-0.1.tar.gz.asc
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAABCgAdFiEEdEYNMrgIEOupr6LpYjlMaYwnOfoFAmVFRJwACgkQYjlMaYwn
|
||||
OfrIzQ//V9avsMqT2smmsANEeG4ex6YjPCp6ELH7aBUbbMF0y+IOLFAzZ5MNROQT
|
||||
84MLWC4kJkP7oTw5/wpAq8bUSIjEgMR5LhlNZ0nDFl1WnfVQaUoejYMmztezc4ft
|
||||
w57NzQZAFj2XOf7xE271MzZqajYMRrWo99T4LKQrFJhZQ9ceJtWGftsMYNcVe06f
|
||||
mJ89ZHwRX/hYEb1ZXS0sSCgjguqDHKIMueQu90HXHej+fbnVm35z/yw5ul3qbiK5
|
||||
qo2tiJymHYekv0FGe73jfxkCD0D+nHulRMOLXtjDtUQdyDiDPx4rjFE7aWFGBJy7
|
||||
H0RIm0u1z3zvabRriRzrIMaJ9bVAZhr2DsJm7Rxt2syvzRa4axvU8xK3wnPPGRhZ
|
||||
zLjJdLc1AXplBmr20vLI6pAAe/jsUHpdI3GJZTepQj0KNZDWNzHrxeVgtVv7nCN8
|
||||
sOnOLIfqu9za+DwQ/FZuccJw4KCOvCiThEylk9H92doPp6rlBEzh5u7bl/nIBlI2
|
||||
8CSvg4em/i8zrnu3RpPlhtLimuJz1kKg3XQtRwrF1xFETcrBcXfsZC6zFjq9Prps
|
||||
gszBGOFR9TFd9ZXlmuVXa3a1vOS0Iu4U+tTYeAcDBY6v9t2xOuV/sL274bDBc7yw
|
||||
XA09Fn75WYxKBIeWdMcC/x+kMqSShAWEBQ3ctQMBZh35AbyPUZc=
|
||||
=3c7G
|
||||
-----END PGP SIGNATURE-----
|
||||
1
pub/download/torreas-0.1.tar.gz.md5
Normal file
1
pub/download/torreas-0.1.tar.gz.md5
Normal file
|
|
@ -0,0 +1 @@
|
|||
c2b761761cf5566b6f4a306329c4b5e3 torreas-0.1.tar.gz
|
||||
1
pub/download/torreas-0.1.tar.gz.sha1
Normal file
1
pub/download/torreas-0.1.tar.gz.sha1
Normal file
|
|
@ -0,0 +1 @@
|
|||
53342fd5e54e2852484d7c0b5d6f043429873a3f torreas-0.1.tar.gz
|
||||
1
pub/download/torreas-0.1.tar.gz.sha256
Normal file
1
pub/download/torreas-0.1.tar.gz.sha256
Normal file
|
|
@ -0,0 +1 @@
|
|||
56f6276b42832e7a3e0477331a9f2a7b2b668bfb5a10e156e7cb389ff4a4d9d1 torreas-0.1.tar.gz
|
||||
|
|
@ -24,6 +24,7 @@
|
|||
<li><a href="/tuwf" class="special">Tuwf </a></li>
|
||||
<li><a href="/yxml" class="special">Yxml </a></li>
|
||||
<li><a href="/nginx-confgen" class="special">Nginx-cfg </a></li>
|
||||
<li><a href="/torreas" class="special">Torreas </a></li>
|
||||
<li><a href="/ylib" class="item1-ylib">Ylib</a></li>
|
||||
<li><a href="/doc" class="item1-doc">Writing</a></li>
|
||||
<li><a href="/dump" class="item1-dump">Code dump</a></li>
|
||||
|
|
@ -114,6 +115,16 @@
|
|||
<li><a href="/" class="small special">Projects home </a></li>
|
||||
</ul>
|
||||
$endif$
|
||||
$if(menu-torreas)$
|
||||
<h1>~ Torreas ~</h1>
|
||||
<ul>
|
||||
<li><a href="/torreas" class="item2-torreas">Info</a></li>
|
||||
<li><a href="/torreas/man" class="item2-torreas-man">Manual</a></li>
|
||||
<li><a href="/torreas/changes" class="item2-torreas-changes">Changelog</a></li>
|
||||
<li><a href="https://code.blicky.net/yorhel/torreas/issues" class="special">Issues </a></li>
|
||||
<li><a href="/" class="small special">Projects home </a></li>
|
||||
</ul>
|
||||
$endif$
|
||||
<ul>
|
||||
<li><a href="/contributing" class="small item1-contributing">Contributing</a></li>
|
||||
<li><a href="/guestbook" class="small item1-guestbook">Guestbook</a></li>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue