Leate_Wonceslace ,
@Leate_Wonceslace@lemmy.dbzer0.com avatar

What the fuck is that file extension?

MonkeMischief ,

I still wonder what that's like. Somebody must still occasionally get a notification that SOMEWHERE somebody paid for their WinRAR license and is like "WOAH WE GOT ANOTHER ONE!"

Never looked back since 7z though. :D

BaumGeist ,

ZPAQ is for cool people with massive space savings

tal ,
@tal@lemmy.today avatar

Compatibility aside, I'd say that .tar.pxz aka .tpxz is probably my vote.

LZMA is probably what I'd want to use. xz and 7zip use that. It's a bit slow to compress, but it has good compression ratios, and it's faster to decompress than bzip2.

pixz permits for parallel LZMA compression/decompression. On present-day processors with a lot of cores, that's desirable.

https://github.com/vasi/pixz

It also can use .tar as its container format, which is desirable; that's everywhere.

The major drawback to .tar is that it doesn't support indexed access, so extracting a single file isn't fast, but .tar.pxz does.

Emerald ,

Can we please just never use proprietary rar ever. We have 7z, tar.gz, and the classic zip

hasecilu ,
@hasecilu@lemm.ee avatar

I'm from tar.gz.gpg gang to keep away nasty storage providers

gianni ,

.tar.zst forever

callyral ,
@callyral@pawb.social avatar

i just use either zip or tar+gzip. personally, i avoid rar as it's a proprietary format.

jenny_ball ,
@jenny_ball@lemmy.world avatar

so silly loll

EmperorHenry ,
@EmperorHenry@discuss.tchncs.de avatar

I'm a 7z person.

laurelraven ,

Where's .7z people?

EmperorHenry ,
@EmperorHenry@discuss.tchncs.de avatar

Right here! I love 7z

jh29a ,

I use .tar.gz in personal backups because it's built in, and because its the command I could get custom subdirectory exclusion to work on.

AVincentInSpace ,

If you download and extract the tarball as two separate steps instead of piping curl directly into tar xz (for gzip) / tar xj (for bz2) / tar xJ (for xz), are you even a Linux user?

PlexSheep ,

I download and then tar. Curl pipes are scary

AVincentInSpace ,

They really, really aren’t. Let’s take a look at this command together:

curl -L [some url goes here] | tar -xz

Sorry the formatting's a bit messy, Lemmy's not having a good day today

This command will start to extract the tar file while it is being downloaded, saving both time (since you don’t have to wait for the entire file to finish downloading before you start the extraction) and disk space (since you don’t have to store the .tar file on disk, even temporarily).

Let’s break down what these scary-looking command line flags do. They aren’t so scary once you get used to them, though. We’re not scared of the command line. What are we, Windows users?

  • curl -L – tells curl to follow 3XX redirects (which it does not do by default – if the URL you paste into cURL is a URL that redirects (GitHub release links famously do), and you don’t specify -L, it’ll spit out the HTML of the redirect page, which browsers never normally show)
  • tar -x – eXtract the tar file (other tar “command” flags, of which you must specify exactly one, include -c for Creating a tar file, and -t for Testing a tar file (i.e. listing all of the filenames in it and making sure their checksums are okay))
  • tar -z – tells tar that its input is gzip compressed (the default is not compressed at all, which with tar is an option) – you can also use -j for bzip2 and -J for xz
  • tar -f which you may be familiar with but which we don’t use here – -f tells tar which file you want it to read from (or write to, if you’re creating a file). tar -xf somefile.tar will extract from somefile.tar. If you don’t specify -f at all, as we do here, tar will default to reading the file from stdin (or writing a tar file to stdout if you told it to create). tar -xf somefile.tar (or tar -xzf somefile.tar.gz if your file is gzipped) is exactly equivalent to cat somefile.tar.gz | tar -xz (or tar -xz < somefile.tar – why use cat to do something your shell has built-in?)
  • tar -v which you may be familiar with but which we don’t use here – tells tar to print each filename as it extracts the file. If you want to do this, you can, but I’d recommend telling curl to shut up so it doesn’t mess up the terminal trying to show download progress also: curl -L --silent [your URL] | tar -xvz (or -xzv, tar doesn’t care about the order)

You may have noticed also that in the first command I showed, I didn’t put a - in front of the arguments to tar. This is because the tar command is so old that it takes its arguments BSD style, and will interpret its first argument as a set of flags regardless of whether there’s a dash in front of them or not. tar -xz and tar xz are exactly equivalent. tar does not care.

PlexSheep ,

Thanks for the explanation, I might use more pipes now. Is it correct, that tar will restore the files in the tarball in the current directory?

AVincentInSpace ,

Yes. You can specify tar -C somedir if you want it to extract them somewhere else.

As a rule of thumb, I always extract my tarballs in a newly created, empty directory, just in case whoever packed it didn't put all its files in a subdir

beeng ,

It's not scary from the flags, but rather what is inside the tar/zip.

TheKMAP ,

.fitgirlrepack

Shardikprime ,

This guy tar balls

  • Alle
  • Abonniert
  • Moderiert
  • Favoriten
  • random
  • linuxmemes@lemmy.world
  • haupteingang
  • Alle Magazine