Skip to main content

A collection of useful utilities, mainly aimed at making Git more friendly

Project description

Thingy

Licence: GPL v3

Author: John Skilleter v0.99

Collection of shell utilities and configuration stuff for Linux and MacOS. Untested on other operating systems.

Permanently (for the forseeable future!) in a beta stage - usable, with a few rough edges, and probably with bugs when used in way I'm not expecting!

The following commands are documented in detail in the help output that can be displayed by running the command with the '--help' option.

This README just contains a summary of the functionality of each command.

General Commands

addpath

Update a $PATH-type variable by adding or removing entries.

borger

Wrapper for the borg backup utility to make it easier to use with a fixed set of options.

console-colours

Display all available colours in the console.

diskspacecheck

Check how much free space is available on all filesystems, ignoring read-only filesystems, /dev and tmpfs.

Issue a warning if any are above 90% used.

docker-purge

Stop or kill docker instances and/or remove docker images.

ffind

Simple file find utility

Implements the functionality of the find command that is regularly used in a simpler fashion and ignores all the options that nobody ever uses.

gl

gphotosync

Utility for syncing photos from Google Photos to local storage

linecount

Count lines of code in a directory tree organised by file type.

moviemover

Search for files matching a wildcard in a directory tree and move them to an equivalent location in a different tree

phototidier

Perform various tidying operations on a directory full of photos:

  • Remove leading '$' and '_' from filenames
  • Move files in hidden directories up 1 level
  • If the EXIF data in a photo indicates that it was taken on date that doesn't match the name of the directory it is stored in (in YYYY-MM-DD format) then it is moved to the correct directory, creating it if necessary.

All move/rename operations are carried out safely with the file being moved having a numeric suffix added to the name if it conflicts with an existing file.

photodupe

py-audit

Query api.osv.dev to determine whether a specified version of a particular Python package is subject to known security vulnerabilities

readable

Pipe for converting colour combinations to make them readable on a light background

remdir

Recursively delete empty directories

rmdupe

Search for duplicate files

rpylint

Run pylint on all the Python source files in the current tree

s3-sync

Synchronise files from S3 to local storage.

splitpics

Copy a directory full of pictures to a destination, creating subdiretories with a fixed number of pictures in each in the destination directory for use with FAT filesystems and digital photo frames.

strreplace

Simple search and replace utility for those times when trying to escape characters in a regexp to use sed is more hassle than it is worth.

sysmon

tfm

Console-based file-manager, similar to Midnight Commander but better.

tfparse

Read JSON Terraform output and convert back to human-readable text This allows multiple errors and warnings to be reported as there's no way of doing this directly from Terraform

trimpath

Intelligently trim a path to fit a given width (used by gitprompt)

window-rename

xchmod

WIP: Command to run chmod only on files that need it (only modifies files that don't have the required permissions already).

Currently implements a very restricted set of functionality.

yamlcheck

YAML validator - checks that a file is valid YAML (use yamllint to verify that it is nicely-formatted YAML).

Git Utilities

ggit

Run a git command in all repos under the current directory

ggrep

Run 'git grep' in all repos under the current directory

gitprompt

Output a string containing colour-coded shell nesting level, current directory and git working tree status (used in the shell prompt).

git ca

Improved version of 'git commit --amend'. Updates files that are already in the commit and, optionally, adds and commits additional files.

git cleanup

List or delete branches that have already been merged and delete tracking branches that are no longer on ther remote.

git co

git mr

git parent

git update

Update the repo from the remote, rebase branches against their parents, optionally run git cleanup

git wt

Output the top level directory of the git working tree or return an error if we are not in a git working tree.

git review

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skilleter_thingy-0.0.32.tar.gz (136.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

skilleter_thingy-0.0.32-py3-none-any.whl (163.4 kB view details)

Uploaded Python 3

File details

Details for the file skilleter_thingy-0.0.32.tar.gz.

File metadata

  • Download URL: skilleter_thingy-0.0.32.tar.gz
  • Upload date:
  • Size: 136.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.12

File hashes

Hashes for skilleter_thingy-0.0.32.tar.gz
Algorithm Hash digest
SHA256 b4bc369f48ed0e51520726eca4cd99000ef85fe14e5a81f5e4637dee0d5aad29
MD5 7d3b645d597506aa3dcb9d96a6b266f5
BLAKE2b-256 9eccc8ff4ababe9af738efe2990c1fb47726f433c04b2fb1af1fe0bcfba9e639

See more details on using hashes here.

File details

Details for the file skilleter_thingy-0.0.32-py3-none-any.whl.

File metadata

File hashes

Hashes for skilleter_thingy-0.0.32-py3-none-any.whl
Algorithm Hash digest
SHA256 5db006ab0d8c2dbf99c83248561b79fab1997745ca12632e7cefe35b8ab6bb58
MD5 94ce0a9a56bfa051b7cb5faa7a21da60
BLAKE2b-256 887d6ff9a73c0e0b1cd12c4ffaf7994add19e24b8b1dc1a1781f557b3e19857f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page