A collection of easy-to-understand, easy-to-use scripts and functions. Designed to be beginner-friendly but also useful
Find a file
2025-11-23 16:51:15 +01:00
binbox Add consistency to variable naming, using lowercase for non-exported variables and uppercase for expoered ine. Also made some grammar fixes and removed 'short' since it's not available yet. 2025-11-23 16:51:15 +01:00
calm Minor order of operations changes and var name consistency (lower-case) 2025-09-23 02:20:12 +02:00
cdz Minor order of operations changes and var name consistency (lower-case) 2025-09-23 02:20:12 +02:00
daisy.source Add consistency to variable naming, using lowercase for non-exported variables and uppercase for expoered ine. Also made some grammar fixes and removed 'short' since it's not available yet. 2025-11-23 16:51:15 +01:00
editx Minor order of operations changes and var name consistency (lower-case) 2025-09-23 02:20:12 +02:00
filewait Minor order of operations changes and var name consistency (lower-case) 2025-09-23 02:20:12 +02:00
LICENSE Refactor of README.md. Change daisy_help to source directly from READEME.md 2025-11-21 00:40:31 +01:00
newday Minor order of operations changes and var name consistency (lower-case) 2025-09-23 02:20:12 +02:00
own - Many fixes to sourcing, now will always resolve to base dir. 2025-09-22 08:34:50 +02:00
README.md - Minor text fix to README.md. 2025-11-21 15:49:28 +00:00
shrc Add consistency to variable naming, using lowercase for non-exported variables and uppercase for expoered ine. Also made some grammar fixes and removed 'short' since it's not available yet. 2025-11-23 16:51:15 +01:00
sw Minor order of operations changes and var name consistency (lower-case) 2025-09-23 02:20:12 +02:00
what Add consistency to variable naming, using lowercase for non-exported variables and uppercase for expoered ine. Also made some grammar fixes and removed 'short' since it's not available yet. 2025-11-23 16:51:15 +01:00

---This project is still under heavy development!---

L A C K A D A I S I C A L

A collection of easy-to-understand, easy-to-use scripts, functions and aliases. Designed to be beginner-friendly but also useful!

Disclaimer

Some aspects of this project were generated by Google Gemini (in particular, daisy_help and daisy_liist). While we are generally against using LLMs for code, the added functionality of being able to get information for individual tools is useful and not considered to be vital functionality.

How to use

Simply open your shell's RC-file (.bashrc, .zshrc, etc) and include source <la ckadaisical-folder>/daisy.source, preferably at the bottom of the file. We recommend setting your editor before sourcing lackadaisical. For instance, putting export EDITOR=/usr/bin/nano near the top of your RC-file. It may later be overridden by lackadaisical itself if you use (or have used) ched.

You can also try out the utilities by simply sourcing the file while running your shell of choice. It will automatically include itself into your PATH variable.

At first use, lackadaisical will provide you with information via daisy_help. This information is identical to what can be read in the Getting Started section below.

Getting started

--- BEGIN OF DAISY HELP ---
===============================================================================
Thanks for installing LACKADAISICAL!
This project aims to provide useful utilities as well as learning material.

It is still under heavy development, not all of the things on this
list are present/implemented. Utils marked with * are incomplete.

This suite provides a number of functions, aliases and scripts.
They are all aimed at enhancing your efficiency.

To uninstall LACKADAISICAL, simply remove the source line from your
shell RC, and reload it. This does not remove the files!
You will also need to manually clear the configuration data in '<home>/.config/
lackadaisical` if you so desire.

To read this notice again, call the function 'daisy_help'.
===============================================================================
These are the included binaries and utilities:
 - calm:
     Reduce a process 'niceness' to 0.
 - cdz:
     This utility extracts an archive to /tmp and changes
     directory to it in a new shell instance. Upon exit,
     the files are wiped. If `archivemount` is present,
     it will be used to mount the archive instead! You can
     bypass this behavior by specifying an env value of;
     NO_ARCHIVEMOUNT=1. The standard script supports zip,
     tarballs, and rar archives. We recommend relying on
     archivemount` if you have it installed.
 - editx:
     Uses your standard CLI editor to create/modify a
     file and make it executable.
 - filewait:
     This tool is given a filename of a file that does
     not exist yet. When the file appears on disk, the
     tool quits and simply returns the filename. This
     can be used in personal workflows to stall a longer
     command that relies on the existence of said file.
 - newday:
     A basic but powerful journaling system. Recommended
     to be set up via crontab. Can be used for everything
     from diaries to general file storage to even BTRFS 
     snapshots.
 - own:
     A simple utility. It's effectively an alias for 
     "sudo chown -R user:user" on the target dir/file. 
     Root permissions required!
 - shrc:
     This tool allows you to edit the RC file for your
     shell in your preferred editor. After saving, the
     file is sourced by your shell if modified.
 - sw:
     A basic function that swaps two files by content.
     Useful for restoring backups.
 - what:
     This is a tool similar to which and others, the key
     difference is that it returns partial matches. It can
     be used to search for binaries.
 - binbox:
     This tool can be used to pack bash scripts into one
     big megascript, much like how `busybox` works.
     You can also make symlinks to it to invoke a specific
     script (as of writing, 11/25, symlinks do not work well).
 - bak/unbak:
     These small utilities make backups of files by making
     a copy with a .bak suffix. Unbak reverses the process
     by using sw and removes the backup.
 - lsa:
     A simple alias for ls -lah.
 - lsn:
     A simple alias for ls -lah --sort=time --reverse.
 - lss:
     A simple alias for ls -lah --sort=size --reverse.
 - editbin:
     An alias for editx $\(which <x>\). Saves on typing.
 - editpeco:
     This function uses peco+tree like 'cdp', but opens
     your editor on the selected file(s). After you exit
     your editor(s), you are returned to peco where you left
     off.
 - ched:
     Like chsh but for your editor (EDITOR env). A list
     from which you can choose an installed editor
     (CLI or GUI) is shown. This list is by no means complete.
 - cdf:
     Use fzf to find a file and then cd to its location.
 - cdp:
     Similar to 'cdf' but uses tree+peco for the query.
 - ldrc:
     Edits daisy.source and re-sources it, similarly to shrc.
 - daisy_init:
     Alias for directly sourcing this file from any
     LACKADAISICAL binary. You may use this yourself.
 - grab:
     Alias for "awk '{print $x}'", where x is a number.
     E.g. "echo 'a b c' | grab 2" returns 'b'.
 - daisy_cbin:
     Contains the name of the current LACKADAISICAL
     binary being run.
 - daisy_enc:
     Converts a file/stdin to a base64 block that can be
     decoded by passing the output(s) to daisy_dec.
 - daisy_enc_multi:
     A version of daisy_enc that encodes multiple
     files and outputs daisy_base64_data blocks to a file
     or stdout.
 - daisy_dec:
     Converts daisy_base64_data blocks back to the form
     it was in originally.
 - daisy_dec_multi:
     A version of daisy_dec that runs on multiple input
     blocks that are either stored in a file or stdin.
 - daisy_alias/daisy_unalias:
     This utility sets persistent user aliases stored in
     .daisy_aliases in the lackadaisical config folder.
     They will remain persistent until unaliased.
     Call 'daisy_alias' without parameters to get a list.
     Use 'daisy_unalias' to remove an alias.
 - daisy_list:
     List all available commands without description.
--- END OF DAISY HELP ---