Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve repack.sh #105

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

Conversation

BrainStone
Copy link

Quite a few changes were done.

I split them into fairly small commits so the changes are easier to follow. Each commit has a message explaining the details.

Feel free to squash the commits, if you're not a fan of many small commits, but I ask you to keep the explanations.

All changes are up for discussion and I'm aware some are certainly more opionion based than others.
My main motivation was to use the better compression and to properly use find. The other changes were added just on top because I like to tidy up bash scripts I touch.

No need to recreate the paths every time.
Makes changing stuff easier in the long run
- `curl` can save the output file directly. This is always better than using the shell
- Use the more compatible `tar` notaion
- Specify compression during unpacking in `tar` (again for compatibility and best practice)
- No need to iterate over the file tree several times. `find` can match multiple patterns.
- The `-prune` option instructs `find` to not decend into the dirs that match, but to keep it in the file list.
- No need to to pipe anything into xargs.`find` can execute commands by itself. Using the plus notation keeps the program invocations of rm to a minimum.
- `-9` means best compression
- `-e` means extreme mode, which makes it try even hard to compress better
- `-T0` uses all available cores to ensure a speedy compression
- `-v` enables verbose mode so the progress can be followed

This additonal compression reduces the file size by amlost andother MiB!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant