panda-motd
is a utility for generating a more useful MOTD.
Getting started
Prerequisites
- Ruby >= 2.4, < 2.7 (Ruby 2.7 is currently not supported because of an issue with the
sysinfo
gem, I'll be looking into replacing or fixing it.) - Some flavor of Linux
Installing
To install the latest 'stable' release of panda-motd
:
sudo gem install panda-motd
At this point, you can run panda-motd ~/.config/panda-motd.yaml
(without sudo
) from anywhere, which will generate a configuration file located at ~/.config/panda-motd.yaml
. This file contains a description of each component of the MOTD and how to enable/disable/configure each one. Components are printed in your MOTD in the same order that they are defined in this configuration file.
Actually getting the output of the gem to become your MOTD is going to depend on your Linux distribution. Please find your Linux distribution on this wiki page and follow the instructions.
Contributing
Please open an issue regarding any changes you wish to make before starting to work on anything. I am always open to providing assistance, so if you need to ask any questions please don't hesitate to do so, whether it be how to approach solving a problem or questions regarding how I might prefer something be implemented.
This project uses Rufo to format its source code, and pull requests will not be accepted unless all code has been run through it.
Running tests
I use rspec
for testing. If submitting a pull request, always include tests if possible. Please adhere to the testing style in the pre-existing tests, particularly when testing a new component.
Made Possible By
I'd like to use this section to thank the developers and contributors of the gems that make this gem possible.
- artii: Generate cool ASCII text art
- colorize: Easily color terminal text
- ruby-units: A comprehensive unit conversion library
- sysinfo: An easy, cross-platform way to get system information
Many of the design cues and the original idea of a highly configurable MOTD are from /u/LookAtMyKeyboard on Reddit, from this thread in particular.