nicethings
A program to cheer people up on shared Unix servers, specifically, tilde.town.
Table of Contents
- Disclaimer
- Conventions used in this document
- How it works
- Platforms
- Requirements
- Quick start
- Downloading nicethings
- Installing nicethings
- Uninstalling nicethings
- Using nicethings
- List of commands
- Usage examples
Disclaimer
This is a hobby project I built for tilde.town.
I take no responsibility for anything that nicethings deletes.
Backup anything you don’t want deleted.
Conventions used in this document
- Note: Notes signify additional information
- Tip: Tips signify an alternate procedure for completing a step
- Warning: Warnings signify that damage may occur
- Example: Examples provide a visual reference of how a procedure would be carried out in the real world
Inline code
: Inline code signifies package names, filenames, or commandsCode block
: Code blocks signify file contents
How it works
Each user on the shared Unix server may have a
.nicethings
file. The .nicethings
file may be
populated with a list of nice messages created by a user. All users’
.nicethings
files are converted to lists. All lists are
combined into one list. A random nice message is picked from from this
list and is displayed to the user.
How it works in detail
- Each user has a
~/.nicethings
directory. - Users can add messages to this file using the
nicethings add "your nice message here"
interface. - Each message is stored in the file as separate lines. No file format is used.
- Users can display a numbered list of the messages they have stored
using the
nicethings ls
interface. - Users can remove their own messages using the
nicethings rm 2
interface, where the number refers to an item in their list. - Users can view a random message from a random user using the
nicethings
interface (with no arguments).
Platforms
Below is a list of platforms that nicethings can run on:
- GNU/Linux
- Windows (Using Windows Subsystem for Linux)
- macOS (Using Homebrew)
Requirements
The following items must be downloaded and installed before you can use nicethings:
- Racket: https://racket-lang.org/
Quick start
This section is for users who are familiar with git, a Unix-like command line environment, or scripting.
- Make sure Racket is installed
git clone https://git.m455.casa/nicethings
cd nicethings
sudo make install-global
nicethings
Note: To uninstall, run
sudo make uninstall-global
nicethings help
- Displays the help messagenicethings add "your nice message here"
- Adds the message inside of quotation marks to your list of nice thingsnicethings ls
- Displays your list of nice thingsnicethings rm 2
- Removes the third item from your list. (The list starts at 0)
Note: You may need to run nicethings ls
to see which number corresponds to which item in your list before
running nicethings rm <number>
Downloading nicethings
nicethings’s source code exists in a public git repository. This makes accessing the code convenient, because you don’t need to sign in or register for an account to download it.
Downloading nicethings using git
You can use tools such as git
to download nicethings’s
source code. You need the source code to install nicethings.
To download nicethings using git
- Run
git clone https://git.m455.casa/nicethings
Note: This creates a nicethings
directory in your current directory.
Installing nicethings
You can either install nicethings globally or locally on your system. A global installation allows all users on a machine to use nicethings, while a local installation only allows one user to use nicethings.
See the options below for installing nicethings:
- Installing nicethings globally
- Installing nicethings locally
- Installing nicethings to a custom directory
Installing nicethings globally
This option installs nicethings into
/usr/local/bin/
.
This section assumes you have downloaded nicethings.
To install nicethings globally
- Run
cd nicethings
- Run
sudo make install-global
Installing nicethings locally
This option installs nicethings into ~/.local/bin/
.
This section assumes you have downloaded nicethings.
To install nicethings locally
- Run
cd nicethings
- Run
make install-local
Installing nicethings to a custom directory
If you wish to have nicethings exist elsewhere on your system, you
can also build a single-file executable. Building a single-file
executable allows you to place the executable in convenient places on
your system, such as a directory on your $PATH
.
This section assumes you have downloaded nicethings.
To install nicethings to a custom directory
Warning: You need to manually uninstall custom installations
- Run
cd nicethings
- Run
make install-custom location=~/path/to/custom/location
Example: In step 2., you could run
make install-custom location=~/bin/
Uninstalling nicethings
Depending on your installation method, you can uninstall a global or local installation of nicethings.
See the options below for uninstalling nicethings:
Uninstalling nicethings globally
This option removes the nicethings
executable from
/usr/local/bin/
.
This section assumes you have downloaded nicethings.
To uninstall nicethings globally
- Run
cd nicethings
- Run
sudo make uninstall-global
Uninstalling nicethings locally
This option removes the nicethings
executable from
~/.local/bin/
.
This section assumes you have downloaded nicethings.
To uninstall nicethings locally
- Run
cd nicethings
- Run
make uninstall-local
Using nicethings
This section teaches you how to use nicethings’ commands.
This section assumes you have installed nicethings.
Showing the help message
The help message provides a list of available commands. This is list useful in case you forget the name of a command or how to use a command.
To show the help message
- Run
nicethings help
Displaying your list
Displaying your list allows you to view items you have added to your list.
Note: The numbers beside each item in your list are useful references for when you want to remove items from your list.
To display your list
- Run
nicethings ls
Adding an item to your list
Adding an item to your list saves it to a text file to access later.
To add an item to your list
- Run
nicethings add "this is an example of an item using double quotation marks"
Note: The double quotation marks are optional, but recommended
Removing an item from your list
When removing an item from your list, you can reference the numbers beside each item when Displaying Your List. You can use these numbers when removing an item from your list.
To remove an item from your list
- Run
nicethings rm 1
Note 1: The “1” in the procedure above removes the first item in your list.
Note 2: You may need to run
nicethings ls
first to see which numbers correspond with
which item in your list.
List of commands
This section lists and describes nicethings’s commands.
help
displays the help messagels
displays your listadd
adds an item to your listrm
removes an item from your list
Usage examples
The examples below assume that you have added nicethings to your $PATH.
nicethings help
nicethings ls
nicethings add "this is a nice message"
nicethings rm 1
Note: You may have to run nicethings ls
to see which number corresponds to which item in your list.