flacfixer
A program to automatically manage the filenames of your music directory.
Install
git clone https://git.sr.ht/~rensoliemans/flacfixer
pip install .
Or, if you'd like to run linters,
pip install .[dev]
Or, if you want an editable install,
pip install -e .
Run
$ flacfixer --help
usage: flacfixer [-h] (-a | -f) [-n] [-r RECURSE_LEVELS] [-v]
Fix filenames in my music dir
options:
-h, --help show this help message and exit
-a, --albums Fixes album names (directories) in PWD
-f, --filenames Fixes filenames in PWD
-n, --dry-run Perform dry run and output what would be changed
-r RECURSE_LEVELS, --recurse-levels RECURSE_LEVELS
Levels to recurse into. Defaults to 0, current level
-v, --verbose Be verbose. Pass multiple times to increase verbosity
This is specific to my music library and preferences:
Filenames
flacfixer -f changes the filenames of music files. Only flac is
currently supported. The target is {tracknumber} - {title}.flac,
where tracknumber always has length 2. tracknumber and title
are extracted from metadata.
Example: 01 - Rosalyn.flac
Albums
flacfixer -a changes the directory names into the following format:
{album name} [{year}]. Since a directory itself can't have any
metadata, it attempts to parse the title and year from the current
directory format. See
test_album_fixer.py.
Example: Tripping with Nils Frahm [2020]
Contributions
Code style
This project uses black,
ruff and
pre-commit. They are all installed when you
do pip install -e .[dev].
Install pre-commit hooks with
pre-commit install
make commands:
-
make lint: executesblackandruff. This is also more or less whatpre-commitdoes. -
make analyse:make lintandmypy -
make test: unittests -
make check:make analyseandmake test(everything)
Contributing
I'm new to mailing lists with git, but please send patches to ~rensoliemans/flacfixer@lists.sr.ht.
Metadata
Release files for flacfixer 2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| flacfixer-2.0.tar.gz | 17.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| flacfixer-2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 34.5 kB
Release files / flacfixer-2.0.tar.gz
| Download URL | flacfixer-2.0.tar.gz |
|---|---|
| Size | 17.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3d21ef677c950e861ac06e9fc380248051bd7ebf354cd9ac439aecfa6287001f
|
|
BLAKE2b-256 checksum How to use checksums |
9c30b8003346cb145e7a5a148cd64d71d964d4b58c07d35e96fa6d1898f6f96b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Release files / flacfixer-2.0-py3-none-any.whl
| Download URL | flacfixer-2.0-py3-none-any.whl |
|---|---|
| Size | 16.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
139dd236c7779330f93f16ebdaa5af176cbdc01dedba4a668ae080fa67a6f314
|
|
BLAKE2b-256 checksum How to use checksums |
fd5c846cac41b1197ecf793e90f2953ce8af1701df698bef15bb3f8b6300560b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Security for flacfixer 2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.