17 ms·
WTF – A personal information dashboard for your terminal
- drKarl 7y agoHow does it compare to tmux or GNU screen?
- Kipters 7y agoIt does not, this is a dashboard, not a terminal multiplexer
- caymanjim 7y agoYou could run it inside a tmux window.
- smitty1e 7y agoNeeds an emacs mode.
- abdullahkhalids 7y agoFirst thing I thought of was, can I run this in a shell inside emacs?
- Gys 7y agoReminds me of https://getbitbar.com https://getbitbar.com to 'Put anything in your Mac OS X menu bar'
- enriquto 7y agoI would appreciate a list of requirements. Does it only work on mac? What kind of terminals can be used?
- davidgl 7y agoThe repo is https://github.com/wtfutil/wtf/ https://github.com/wtfutil/wtf/. I'd guess at it supporting macOS (brew installation) and Linux (commit messages).
- enriquto 7y agoI cannot get it to compile in linux. I would like to know if it is supposed to, before digging any further.
- bogle 7y agoThe releases include Linux binaries: https://github.com/wtfutil/wtf/releases https://github.com/wtfutil/wtf/releases
- yosamino 7y ago$ uname -a Linux hostname 5.2.9-arch1-1-ARCH #1 SMP PREEMPT Fri Aug 16 16:24:43 UTC 2019 x86_64 GNU/Linux $ git clone https://github.com/wtfutil/wtf [...] $ cd wtf $ make [...] $ ./bin/wtfutil seems to work fine here
- bogle 7y agoAlso available as a Docker container: https://hub.docker.com/r/wtfutil/wtf https://hub.docker.com/r/wtfutil/wtf
- senorprogrammer 7y agoIt's highly likely this won't work as-is, unfortunately. Docker support is "experimental" at best and a lot more effort needs to be put into the Dockerfile.
- enriquto 7y agoI do not really see the point of providing docker containers for tiny command line programs. I feel like an old curmudgeon that cannot make sense of the modern world; at all.
- ephaeton 7y agoObviously written by someone who is not living on BSD, and doesn't know about wtf(1) :(
- vectorEQ 7y agothat utility always amuses me. as BSd is the only distro i use where i don't run into the need for it so much :D goo call though. name collisions on packages can be painful. However, you run this thing as ./wtfutil though if i look at the documentation, so no worries on the package name in the cmdline really.
- deadbunny 7y agoGood thing the binary is called wtfutil because of this very reason.
- ephaeton 7y agonot what I was getting at. I'm aware it's wtfutil on the cmdline. I was rather sort of amused that, say, I write a 'least squares' utility, call it 'ls' and have it be invoked by calling 'lsutil'. ...anyways, moving on with my life...
- roryrjb 7y agoDoes it support the mouse? I didn't see any mention of it and I haven't tried it yet. If not then I think this would be unusable for me. I live inside the terminal and use Vim, tmux but once a TUI gets quite complicated (another example for me is wee-slack plugin for wee-chat or multiple accounts in mutt) I struggle a bit and find I'm faster in a GUI.
- dspillett 7y agoNice. I might have to try use it. I use tmux (wrapped in byobu) a lot and tend to end up with one screen (on each host I usual a fair amount) as a dashboard like this, manually constructed from many panes each running a tool like iftop, watching a log with "tail -f", or regularly running other checks via "watch", ...
- dpeck 7y agoProbably the most useful piece of software I've ever glued together was a tmuxinator script to bring up a dashboard that monitored system health using curl and displaying status of each subsystem in large red/green words using figlet. Took me a night of work to get it right but it ran on a monitor in our engineering area, and one Quality/Ops peoples desktops for years.
- sdan 7y agoWhy do you use byobu? Just curious as I only use tmux.
- dspillett 7y agoHabit as much as anything else. I used byobu around screen for a time before switching to tmux. I've not looked into what tmux can do by itself, compared to screen, without byobu's additions.
- Jtsummers 7y agoCheckout fswatch as a watch replacement. It triggers on file changes. I automated a few things for monitoring using that and found it to be a much smoother experience since it’s updated immediately and only as needed.
- maweki 7y agoThis looks pretty nice but without secret management it's not really that useful. Without that you can't share your configs or have your config in your dotfiles-repository. That makes it really not that portable.
- deleted 7y ago[deleted]
- senorprogrammer 7y agoIf you have thoughts on this, I'd love to hear your use-case. Issue #517 is specifically about this topic.
- deadbunny 7y agoOnly takes x11 color names and not hex? wtf.
- sannee 7y agoYeah, this makes it unusable on my terminal because I have a custom color scheme. The background of the borders matches my terminal while I can't get the background of the widgets to match because of this. EDIT: Hah, specifying "transparent" makes it work
- senorprogrammer 7y agoThe underlying libraries WTF is built upon use colour strings to define colours, so WTF does too. But this is a cool idea. Issue #546 has been opened for this.
- coleifer 7y agoWhy have programmers (with jobs, usually) become the modern-day mendicants, begging pizzas and beer off of passers by? Or maybe they're like buskers, peddling their amateur/down-home status? What is the "donations" thing about? Doesn't it make people (with jobs) feel ashamed? Can you really say you're in open source, if you've got your little cardboard sign and upside down hat on all your projects?
- ape4 7y agoIts nice to get some money from a side project. Might make you work more on it.
- globuous 7y agoWait, are you being serious? Im speechless
- antisemiotic 7y agoYou mean it's shameful to receive money directly from the users, and respectable people must have an intermediary for it?
- alexanderdmitri 7y agoThank you for donating your 2¢ We understand you don't need to contribute anything to enjoy this comments section and therefore we do truly appreciate that you've found enough value to contribute to this endeavor!
- coleifer 7y agoIt is better to give than to receive! Let me know if you want more, I can riff on this topic for...hmm... at least 250 words.
- ebg13 7y ago> Can you really say you're in open source, if... ...your source is open? Yeah, probably.
- heinrichhartman 7y ago
- buckminster 7y agoThere's a detailed screenshot but I can't zoom to see the detail because the website designer has gone the extra mile to make it non-zoomable. Why do people do this?
- TheSpiceIsLife 7y agoZooming works fine here. Mobile Safari iPhone SE.
- enedil 7y agoThat's because Safari disregards this option, as it is hostile towards users.
- nvrspyx 7y agoThe site does mess up inertial scrolling on iOS Safari though.
- senorprogrammer 7y agoThanks for this comment. I think you might have just solved issue #33 in the wtfdocs repo.
- TheSpiceIsLife 7y agoInternal scrolling works fine here.
- TheSpiceIsLife 7y agoInertial
- nvrspyx 7y agoI think it was fixed. It’s working just fine now, but it was borked when I posted the comment.
- 7y ago
- mjfisher 7y agoThe list of modules (https://wtfutil.com/modules/ https://wtfutil.com/modules/) looks really quite impressive. I can imagine getting some good use out of this
- thanatropism 7y agoThis actually looks really useful if you have multiple screens. (I tend to type on my laptop connected to a monitor above it.) I keep concocting shell prompts that are more and more complicated (current git branch, IP, python virtualenv and so on and so on) -- this might just be the ticket to stop wasting time on that.
- MrCharismatist 7y agoGoogle Apps/Calendar but no CalDAV for those of us who left the google mothership takes away a big reason I'd use this.
- brbrodude 7y agoIt's FOSS though, if devs swarm it with contributions anything is possible ;P
- senorprogrammer 7y agoFeel free to open an issue on it. CalDAV is a great idea.
- ausjke 7y agowow this little CLI made my day! just installed it and used sample.conf and it already looks great, will customize it later but this will be used often by me, as I live and breath with CLI daily
- kup0 7y agoI like this. Might actually use this as an always-on dashboard on one of my spare PCs. Probably could find a neat use for it.
- brbrodude 7y agoI'll definitely be trying this one out <3 Thanks for this work
- carokann 7y agoNeat. For people looking at alternatives for configurable dashboards i suggest sampler[0]. It has a weird license but free for personal use. You can report any output of a terminal command with a custom time rate. E.g. you can SSH and pipe HTOP of a remote system, query your local DB and do a timeseries etc. all in one place. [0]: https://github.com/sqshq/sampler https://github.com/sqshq/sampler
- TuringNYC 7y agoThese are all great, but I'm curious if anyone can suggest browser alternatives (I've looked before w/o success) -- It would be awesome to have something like this open up on the home browser tab. Any suggestions?
- penagwin 7y agoI'm in the same camp as you are, a funny method that would "kinda work" would be to use something like https://github.com/yudai/gotty https://github.com/yudai/gotty but I feel like that's a pretty hacky solution haha.
- weinzierl 7y agoIt's GPL v3.0, so no weird license at all. EDIT: A closer look revealed that it had indeed an unusual license just 22 days ago. It's GPL v3.0 now.
- Terretta 7y agoWell, neat, but why would sampler call a series of vertical bars sparklines? https://en.m.wikipedia.org/wiki/Sparkline https://en.m.wikipedia.org/wiki/Sparkline In 2006, the term sparkline itself was introduced by Edward Tufte for "small, high resolution graphics embedded [inline] in a context of words, numbers, images". Tufte described sparklines as "data-intense, design-simple, word-sized graphics". See the Usage section for an example.
- rpmisms 7y agoWhy does everyone feature a world clock in their information dashboards? Yes, it's a handy feature to have, and yes, it's easy to build, but very few people actually use them.
- calvinmorrison 7y agovery useful for multi-time-zoned projects. Working with overseas times means you get good at mental translation but with daylight savings, people moving around, new people on the project, etc - it becomes very handy. One of my favorite clock related features is in KMail where it says "Senders current time", which is often helpful as well.
- Jakob 7y agoIT projects be it open source or closed source often span the US, Asia and Europe. After a while you memorize the time zone differences. But to be sure and take daylight savings in account world clocks are not bad.
- senorprogrammer 7y agoIt was added because I have co-workers in five different timezones and servers that use UTC. It's handy to have that info at a glance.
- kilroy123 7y agoI use a world clock every single day.
- BeetleB 7y agoHow does this compare with conky?
- cptnapalm 7y agoI've been wanting something sort of like this for my login screen. Little box for the login, of course and a whole bunch of scary-to-everyone-but-me looking output, like hollywood (https://github.com/dustinkirkland/hollywood https://github.com/dustinkirkland/hollywood). +1 if I could use the terminal emulator of my choice so cool-retro-term (https://github.com/Swordfish90/cool-retro-term https://github.com/Swordfish90/cool-retro-term) could make it look like the screen is about to melt.
- weinzierl 7y agoThe login screen is ultimately just a regular process. I haven't tried it but there is nothing against starting cool retro term and hollywood inside of it. The most difficult part is probably to make it display on the framebuffer. For the login itself you could then just reuse the decades old login binary that provides the login prompt you see in text mode terminals, if you like. Shouldn't be too hard.
- edoo 7y agoYour login screen could be a 3d game where you have to solve a puzzle to access the password prompt.
- cptnapalm 7y agoQuakeDM =]
- cptnapalm 7y agoI did, naively, make an attempt once and it kinda sorta worked in a horrible "are you mad?" way with shell, ssh, xterm and Xephyr. It only worked with a couple of simple window managers and if you hit ^C at login prompt, it cooperatively dropped you to a prompt owned by root. Oops. Still, not bad for a relatively rapid prototype proof-of-concept.
- weinzierl 7y agoWhen I looked at the Linux boot process the first time I thought this just kinda sorta works in a horrible "are you mad?" way*:-). Just short of three decades later the boot process didn't really change a lot but I don't have the same feeling about it. I just got used to it and in the end all that matters is that it works.
- Kaiyou 7y agoMy first impression was that it looks cool, but than I tried to think of a use case and failed. It still looks very cool, though. If I want to look anything up I just look it up, no need for something to run somewhere to occasionally glance on.
- stjohnswarts 7y agoYou're probably not the typical user. This comes in handy for someone who always has a bunch of data inflow like a sysadmin, devops, tools person, etc. Or just an overworked programmer.
- Kaiyou 7y agoNo, sorry, I was unclear. I do see the need for a dashboard (at work), just not for monitoring the things this one offers. And for my private workstation, which I was thinking of when posting before, I don't see the need.
- shay_ker 7y agoHonestly curious - why do people live mostly in their terminal? Is it a productivity thing?
- iwalton3 7y agoIn my experience, it is easier to automate a workflow using command line applications. The GUI versions of tools have to try and predict every possible workflow, while terminal applications can be easily combined in scripts. That being said, there are definitely major productivity features to be had with GUIs, such as those with web browsers and IDEs.
- shay_ker 7y agowhat's an example of a workflow you've automated on a terminal?
- inetknght 7y ago-> download 1000 files using curl, then validate their checksum, then build stuff -> take an almost-CSV report generated by one piece of software, remove a bunch of extra garbage at the top to turn it into an actual CSV file, then send the CSV file to data analysis pipeline. -> join two CSV files selecting columns 2,3 from one file and 4,5 from the other file, keyed on column 1 from both files. like excel but for CSV files sized in hundreds of megabytes -> take a bunch of CSV files and pump them into a rabbitmq queue -> query whether a queue is empty. if so, start a new analysis job. if not, sleep another hour -> grep for data in a directory to find specific files containing that data, then point those paths to another service I can go on all day. CLI tools are far more wieldy than GUI tools IMO. CLI tools give me a generally-stable interface (or at the very least, a straightforward method of parsing and adapting to changes) and usually have _way_ better documentation than GUIs.
- shay_ker 7y agoMany of these actions seem like something you'd just never do in GUI though? Except maybe some of the CSV stuff.
- cosmotic 7y agoAlso an option: a real GUI
- rhacker 7y agoIt's odd that I can't find what "WTF" stands for, and if the F stands for the F-word, that's just pretty ghetto. Aaaand confirmed on the glossary page. I mean couldn't it have been something clever like "Wednesday Thursday Friday" ?
- hnarn 7y agoThis pairs very neatly with cool-retro-term[1] :-) [1]: https://github.com/Swordfish90/cool-retro-term https://github.com/Swordfish90/cool-retro-term
- Exuma 7y agoSomeone please install this and try it and take a screenshot. I just want to see it but don't want to do it myself haha
- cmg 7y agoHere you are. This is the standard config file with Euro time removed and fewer US timezones represented. I've blocked out my IP info. The terminal size in cool-retro-term is around 30x140-ish. https://imgur.com/yb0G39m https://imgur.com/yb0G39m
- hnarn 7y agoDid you anonymize the entire image? Because the text is not supposed to look like that (i.e. unreadable).
- deleted 7y ago[deleted]
- cmg 7y agoInteresting! If I have cool-retro-term on my external display (27" Thunderbolt display at 2560x1440), it's all messed up like that. On my MacBook Pro's built-in display, it looks like this: https://imgur.com/BbVcyA7 https://imgur.com/BbVcyA7
- champagnepapi 7y agoThis is super cool! Thanks!
- andrewbinstock 7y agoDoes it run on Windows? I can't tell if the lack of Windows binaries is because the author didn't compile it/test it for the platform or because for some reason it won't run there. For a desktop project, supporting the OS of 60+% of desktops would seem a boon to adoption (putting aside the politics and all).
- senorprogrammer 7y agoWindows support is being tracked in issue #103 on GitHub. People have had success building from source. Automated Windows builds currently fail for reasons unknown.
- bmcooley 7y agoI'm currently using it without many issues under WSL.
- deleted 7y ago[deleted]
- atarian 7y agoWhy are so many of these command-line tools/dashboards written in Go?
- hultner 7y agoI haven't used Go much but I've gotten the impression that tooling is very good, it's easy to create a self-contained executable and startup time is low. All this while the language itself aims for simplicity and doesn't include a plethora of features rarely used or needed creating an almost python-like simplicity.
- tamrix 7y agoI can't be the only one. I just don't see a lack of features being a feature. You can easily statically link most languages by passing switches to the linker. Python like simplicity is a far stretch. Golang basically just C with co routines and some of the annoying syntax cleaned up.
- ibly31 7y agoLack of features hasn't stopped C from being an extremely useful and prolific language. Your last sentence, to me, reads as a pro rather than a con. C + coroutines - bad_syntax = Great language to me. Mind you, I don't use Go in a professional setting, so take what I say with a grain of salt.
- eeZah7Ux 7y ago...only in the HN bubble. Most of the hyped stuff stays around a couple of years and dies.
- Arcsech 7y agoEven though I'm not a fan of go myself, it does work well for small, simple utilities - it's lightweight, fast, and compiles to self-contained executables, with no dependency on a runtime like Node.js, Python, or a JRE. There are some other languages that have similar benefits, but go is the most popular and trendy. Rust could fill a similar niche but GC is very nice and Rust definitely has a higher learning curve.
- unixhero 7y agoYou know. This could be configured to be a, [really nice] poor man's Bloomberg Terminal. Yikes! Hold my beer! This will take all weekend.
- kilroy123 7y agoIf you do configure some kind of Bloomberg Terminal, please share!
- synunlimited 7y agoSomething very similar that I've used in the past https://github.com/notwaldorf/tiny-care-terminal https://github.com/notwaldorf/tiny-care-terminal
- aluenakyla 7y agoThis is great. Probably one of my favorite things shared on HN in a while. Great job!
- SergeAx 7y agoI am curious why the binary is so large? Almost 60Mb, bigger than Docker.
- darekkay 7y agoThis is really impressive. I'm currently developing a web-based personal dashboard [1] and I'm sure WTF will provide me a lot of inspiration here and there :) [1] https://github.com/darekkay/dashboard https://github.com/darekkay/dashboard