WTF
Important Note
The WTF binary has been renamed to wtfutil
. As of version v0.15.0 the
installer will install wtfutil
into ~/go/bin/
and you must execute wtfutil
to run it. This change removes the name collision with the venerable and amusing bsd-wtf
.
A personal terminal-based dashboard utility, designed for
displaying infrequently-needed, but very important, daily data.
Screenshot
Quick Start
Install via Homebrew
brew tap wtfutil/wtfutil
brew install wtfutil
wtfutil
Install the Binary
Download the latest binary from GitHub.
WTF is a stand-alone binary. Once downloaded, copy it to a location you can run executables from (ie: /usr/local/bin/
), and set the permissions accordingly:
chmod a+x /usr/local/bin/wtfutil
and you should be good to go.
Install from Source
If you want to run the build command from within your $GOPATH
:
# Set the Go proxy variable to GoCenter
export GOPROXY="https://gocenter.io"
# Enable Go modules
export GO111MODULE=on
go get -u github.com/wtfutil/wtf
cd $GOPATH/src/github.com/wtfutil/wtf
make install
make run
If you want to run the build command from a folder that is not in your $GOPATH
:
# Set the Go proxy variable to GoCenter
export GOPROXY="https://gocenter.io"
go get -u github.com/wtfutil/wtf
cd $GOPATH/src/github.com/wtfutil/wtf
make install
make run
Note: WTF is only compatible with Go versions 1.11.0 or later (due to the use of Go modules). If you would like to use gccgo
to compile, you must use gccgo-9
or later which introduces support for Go modules.
Communication
Slack
If you’re a member of the Gophers Slack community (https://invite.slack.golangbridge.org) there’s a WTFUtil channel you should join for all your WTF questions, development conversations, etc.
Find #wtfutil on https://gophers.slack.com/ and join us.
Also, follow on Twitter for news and latest updates.
Documentation
See https://wtfutil.com for the definitive
documentation. Here's some short-cuts:
Modules
Modules are the chunks of functionality that make WTF useful. Modules are added and configured by including their configuration values in your config.yml
file. The documentation for each module describes how to configure them.
Some interesting modules you might consider adding to get you started:
Contributing to the Source Code
First, please read Talk, then code by Dave Cheney. It's great advice and will often save a lot of time and effort.
Next, please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.
Then create your branch, write your code, submit your PR, and join the rest of the awesome people who've contributed their time and effort towards WTF. Without their contributors, WTF wouldn't be possible.
And don't worry if you've never written Go before, or never contributed to an open source project before, or that your code won't be good enough. For a surprising number of people WTF has been their first Go project, or first open source contribution. If you're here, and you've read this far, you're the right stuff.
Contributing to the Documentation
Documentation now lives in its own repository here: https://github.com/wtfutil/wtfdocs.
Please make all additions and updates to documentation in that repository.
Adding Dependencies
Dependency management in WTF is handled by Go modules. Please check out that page for more details on how Go modules work.
Contributors
Acknowledgments
The inspiration for WTF
came from Monica Dinculescu's
tiny-care-terminal.
Many thanks to Lendesk for supporting this project by
providing time to develop it.