An open API service indexing awesome lists of open source software.

https://github.com/mhbxyz/scripts

A collection of shell and Python scripts to automate common tasks.
https://github.com/mhbxyz/scripts

python scripts shell

Last synced: 4 months ago
JSON representation

A collection of shell and Python scripts to automate common tasks.

Awesome Lists containing this project

README

          


scripts:/$


License: MIT
Shell
Python
Tests

A collection of shell and Python scripts to automate common tasks.

## Install

```sh
curl -fsSL https://mhbxyz.github.io/scripts/install.sh | sh
```

```sh
sh -s -- --all # Install all scripts
sh -s -- --only "gpgkeys sshkeys" # Install specific scripts
sh -s -- update # Update installed scripts
sh -s -- uninstall # Uninstall all scripts
```

See [docs/installation.md](docs/installation.md) for more details.

## Shell Scripts

| Script | Description |
|--------|-------------|
| `gpgkeys` | Generate and manage GPG keys |
| `sshkeys` | Generate and manage SSH keys |
| `homebackup` | Backup home directory to external drive |
| `sortdownloads` | Sort Downloads folder into organized subdirectories |
| `mygit` | Simplified git config management (requires `git`) |
| `dotfiles` | Manage dotfiles with symlinks |
| `mkproject` | Scaffold new projects from templates |
| `cleanup` | Free disk space by cleaning caches and temp files |

## Binary Scripts

Pre-compiled from Python, downloaded automatically from GitHub Releases.

| Script | Description |
|--------|-------------|
| `imgstotxt` | OCR images to text file |
| `pdftoimgs` | Convert PDF to images |
| `keepalive` | Simulate activity to prevent idle status |

## Development

Requires [uv](https://docs.astral.sh/uv/) and [just](https://just.systems/).

```sh
just sync # Install dependencies
just test # Run BATS tests
just lint # Lint Python with ruff
just fmt # Format Python with ruff
just build-all # Build all binaries with PyInstaller
```

See [docs/development.md](docs/development.md) for the full guide.

## License

[MIT](LICENSE)