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 commands
- Code 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 ~/.nicethingsdirectory.
- 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 lsinterface.
- Users can remove their own messages using the nicethings rm 2interface, where the number refers to an item in their list.
- Users can view a random message from a random user using the nicethingsinterface (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 git://git.m455.casa/nicethings
- cd nicethings
- sudo make install-global
- nicethings
Note: To uninstall, run sudo make uninstall-global
- nicethings help- Displays the help message
- nicethings add "your nice message here"- Adds the message inside of quotation marks to your list of nice things
- nicethings ls- Displays your list of nice things
- nicethings 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
will need the source code to install nicethings.
To download nicethings using git
- Run git clone git://git.m455.casa/nicethings
Note: This will create 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 will install 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 will install 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 will have 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 will remove 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 will remove 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 will teach you how to use nicethings's commands.
This section assumes you have installed nicethings.
Showing the help message
The help message will provide 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 will allow you to view items you have added to your list. You will notice numbers beside the items in your list.
Note: These numbers 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 will save 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 will remove 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.
- helpdisplays the help message
- lsdisplays your list
- addadds an item to your list
- rmremoves 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.