Uploading to Usenet
Note
This page covers the process of manually uploading a file to Usenet. You do not need to know this to use the juicenet
. This is essentially what it does. This is what I initially wrote when I was first figuring this stuff out and seeing how there's no good guide out there, I've decided to keep it for anyone else trying to figure this stuff out. It's not a good guide because it was never meant to be one, but it's better than nothing.
Prerequisites
Linux
Windows
On Windows, you simply need to grab the following two pre-built binaries:
Getting Started
Let's assume I want to upload this file:
Parpar
Parpar is a tool to create PAR2
files. PAR2
files are very important because they are parity data that can be used to recover missing or damaged files. This can be done easily with the following command:
parpar -s700k --slice-size-multiple=700K --max-input-slices=4000 -r1n*1.2 -R \
--filepath-format basename \
-o "path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv" \
"path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv"
Note
You must generate PAR2 files for every single file you upload. Uploading stuff to Usenet without PAR2
files is as good as not uploading them.
Apart from being parity data, PAR2
files also store the path of the file. This then allows downloaders like SABnzbd to reconstruct folder structures. This is really handy for stuff like BDMVs
where the folder structure is important.
In this case, I'm uploading a singular episode where paths don't matter so I'll use --filepath-format basename
which discards all the paths and only keeps the filename.
This means that:
will become--filepath-format
has more options and might change depending on your use case. You can read more about it here. You can read what the other options do here but they'll mostly remain constant.
After this, you will now have .par2
files like this:
.
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.par2
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol00+01.par2
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol01+02.par2
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol03+04.par2
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol07+08.par2
└── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol15+16.par2
Nyuu
Now that we have the our video file with it's corresponding .par2
files, we have to upload it. The upload command will look something like this:
nyuu -C "/path/to/config.json" \
-o "path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.nzb" \
"path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv" \
"path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.par2" \
"path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol00+01.par2" \
"path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol01+02.par2" \
"path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol03+04.par2" \
"path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol07+08.par2" \
"path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol15+16.par2"
As you can see, you have to explicitly pass each file and it's .par2
files to Nyuu and tell it to make a single output nzb
with -o "path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.nzb"
. Not really ideal, considering doing this for every episode would be tedious.
Alternatively, you can move the files into a folder as such:
Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group/
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.par2
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol00+01.par2
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol01+02.par2
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol03+04.par2
├── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol07+08.par2
└── Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.mkv.vol15+16.par2
And, then uploading gets much simpler because you can just pass the folder to Nyuu and it'll make a single nzb out of them:
nyuu -C "/path/to/config.json" \
-o "path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group.nzb" \
"path/to/Show.S01E01.BluRay.1080p.FLAC2.0.H.265-Group/"
Either of the above commands will start uploading our video and .par2
files and output the .nzb
file once it's done but neither of them are ideal. Explicitly specifying each file is tedious and moving files into a folder might break other stuff (e.g. if you're seeding the file in a torrent client).
During the above upload process, your files are uploaded in tiny chunks (~700KiB
) called raw articles
. Think of it as pieces
in torrents. Now some of these raw articles
can fail to upload for various reasons. Nyuu will put all the failed raw articles
in the folder defined by --dump-failed-posts
. You should check this folder and repost the failed raw articles
later which can be done with the command below: