Allows locking your screen without hiding its contents (i.e. just disables input/interaction.) Nice for when you want to keep some stats, top, or just a plain message visible on your screen.
- sm
"screen message". Goes fullscreen and just gives you an editable text field to type a message into. Great to combine with xtrlock mentioned above to put something like "brb, grabbing coffee" on your screen for your colleagues or so :) (Technically a Gtk app I think, but fits the pattern.)
- [ed.] Xephyr
Open another X server as a window in your current X server. Great as a "canvas" for a screenshare if you want to share multiple windows but not your entire desktop. Batteries not included, you need to know how to juggle xauth & a WM (metacity for me) to make the new X server actually do something.
What a blast from the past feeling. I've never used this specific tool but I think there is/was something in Windows to do this? Through college in the late 90's and into my first few jobs in software engineering, there was a minor zeitgeist across my first few companies to diligently leave a description behind on your screen if you were going to be away for a while. It was a scene full of personality and power.
'Find me in the kitchen' was a courteous thing to do. 'Bob left his machine unlocked, bozo!' built camaraderie. Not seeing a message, combined with long absence, was a sense of dread. You could publicly wrap a middle finger in a heart: 'Canned. But I still love you all!'. Like a Post-It note, it said something about the person whose machine it was on. But its magnitude, beaming out of a miraculous cathode ray tube, was meant for and captured the attention of everyone walking by. You could reach and influence an audience you otherwise weren't welcome to speak so candidly to. I may have built crucial favor and long term work relationships from a silly quip. I couldn't possibly say for sure.
Now having worked mostly remote for half a decade, I miss it. This interesting slice of subculture has decomposed into messenger apps thanks to common availability of satellite-enabled-computers-in-pockets. And @here is a painfully poor substitute.
If you're like me and you think xtrlock sounds really useful, it's worth taking a moment to google how to unlock your computer again before running it.
Has this been proven in any sort of way? As far as I know, some suckless developers like to pretend to be "software nazis" (similar to "grammar nazi" but regarding software) and hence joke about that, but I don't think the conclusion is that they are actually nazis. Happy to be proven wrong though, haven't looked into the matter more than that and wouldn't be the first time I would be wrong.
Given how we witnessed ironic edgelord racism on places like 4chan metamorphose into open, actual, earnest racism in like a decade or less, I'd say no, s*ckless do NOT get a pass on this.
Besides, they tend to rant about SJWs a lot -- red flag #1 that they are for reals far right.
> Given how we witnessed ironic edgelord racism on places like 4chan metamorphose into open, actual, earnest racism in like a decade or less, I'd say no, s*ckless do NOT get a pass on this.
Did some quick searches and couldn't find anything racist posted by suckless developers, but hard to search for. Got any links handy so one could form their own opinion?
> Besides, they tend to rant about SJWs a lot -- red flag #1 that they are for reals far right.
Yeah, sometimes that is true, but I prefer to see hard evidence before reaching any conclusion, especially when people start advocating to stop mentioning software because of it.
This concept is new to me… any chance you could offer a quick summary? Is there like a fascist movement within software development called “suckless”, or what’s up with this?
I don't know where the neo-nazism stuff comes from, but I do know about suckless.
Suckless is a organization that describes itself as "focus on simplicity, clarity and frugality", and "philosophy is about keeping things simple, minimal and usable", from https://suckless.org/philosophy/
I think they are most famous for dwm, but have written a lot of other good software as well.
One of my most-used X utilities is not even really a graphical one.
xclip allows putting stuff in the X clipboard for subsequent pasting into any application. I use it to “copy” canned email responses which I keep in a folder as .txt files and then paste them in the browser for sending by email. No need to bother with browser extensions or built-in crappy functionality (gmail canned responses used to just lose my responses every once in a while).
I make frequent use of xcip as well, with an alias to `xclip -selection clipboard`, which puts its stdin into the clipboard for convenient pasting into GUI programs such as browsers.
And apparently there is at least one guy using it to draw illustrations[1] and explain how to use it with a tutorial[0].
Sadly the site seems to have been moved from another location and the obj files (the files tgif uses) did not survive the move. Only one file was transferred from another tutorial (in Japanese) about using Tgif with Gimp, most likely because it had a "wrong" extension (.html). It does open fine in a build of Tgif i just did though[2].
Well found ;) I remember crossing this multiple times since the 90s while looking for Tgif-related info, but always in Japanese I think... and every time with marvel for his technique applied with both excellent software.
Essentially, hyperlinks for shapes; any graphic element can be linked to another, including other drawings (documents) or sections of a document.
I suppose that's obvious these days. Hyperlinks are expected.
I know that Visio (Windows) and OmniGraffle (MacOS) can do this. I would build active computer network diagrams, dashboards: you could click on a computer's graphic and get an SNMP report.
Great, thanks for the info! I used Tgif for exactly that, designing SNMP monitoring with network maps/dashboard like pages. Forgot exactly which combinations I implemented, but it envolved Tgif, Tkined [0], Scotty [1], Big Brother [2] and later Netsaint [3] (now known as Nagios).
This is speculation but after you use it for a while it has a very distinct look that I've never seen elsewhere. I mean if you use the stock template items.
For example *xte
rm(1)* can is one of the most compatible terminal emulator out there and its nice to have it started each time with random color theme:
+1 for xterm. I also enable VT240 graphics (sometimes called SIXEL graphics) so that I can easily put up a graph or other graphical representation even when I'm ssh'd over to a machine somewhere on the east coast.
Some materials (like old HP-UX training or documentation) is available as CHM files. You can convert them to something else but it the looks like sh*t ... this using xchm(1) helps here. Yes, nowadays it also does not happen that often.
I use that to test what keys what codes have. For example with ThinkPad W520 the keys to the left and right of the ARROW keys are 'NEXT' and 'PREV' - I always map them to Page Up and Page Down keys with ~/.xmodmaprc file:
! PAGE UP/PAGE DOWN
keycode 167 = Next NoSymbol Next
keycode 166 = Prior NoSymbol Prior
... and I use xev(1) in that process first to check what codes are before xmodmap(1) does the job and second time when the new xmodmap(1) config is loaded.
Its not daily but I also do not use nc(1) or traceroute(1) or dig(1) daily but I of course use these tools when needed.
I'm missing x11vnc (a VNC server that shares an existing X screen) and xclip (not xclipboard). There are also a lot of games in that list, but I did not see xkoules or xrick. There are so many nice little gems that seems to be on the brink of being forgotten, it's great to see them listed here!
It's interesting that looking at all these, the HP calculator apps, mimicking the look of physical HP calculators, don't seem to have aged as much as the others (I mean: the calculators themselves certainly do look oldschool, but the app doesn't).
The one X11 app I still use to troubleshoot issues or when I set up a new Debian system is "xeyes" (just two eyes which look/track the direction of the mouse pointer). As long as it's shipped with Debian, I'll be making sure xeyes is installed.
It's a program with no blocking I/O, so if the eyes stop moving, you know you're looking at a certain kind of connectivity issue. If some more complicated app stops responding, the problem space of where to start troubleshooting is much larger.
If you miiiiight have a flaky network, leaving xeyes open in the corner can be a real headache-saver.
Just an artifact of the whole UI being pixel mapped graphics onto buttons/labels/canvas mimicking the calculator. I imagine Tk, Xaw, or Motif is under there, you just can't see it. The TiEmu one appears to be GTK.
Although Free42 is much better on iPhone, simply because it’s always handy. Also, real HP42 was almost exactly the same size as the phone, and the fake tactile feedback is really nice.
I use a GX and feel the same way—something about the HP 48 is just really charming and I wish for a modern alternative. Software emulation isn't enough! Leaves me longing.
I still use NEdit when I develop code. I don't like 1GB+ RAM IDEs like Eclipse or VSCode when I can get things done in a smaller text editor and a command line. I'll use vi for small edit jobs or quick text. NEdit comes out when I need to move code blocks around or need to compare.
Some of my co-workers said it was weird that I used it because the other editors will do instant linting and suggest code for Ansible YAML. I've found that not using VSCode or Eclipse forced me to learn more about the language and I am now the local subject matter expert on Ansible.
Moving blocks of text in NEdit is its best feature. Try doing the same in vim. That is an exercise in frustration.
I first learned NEdit at Fermi where it was developed. Been using it for 28 years now. Carrying a dependency on Motif for all that time has been sort of a drag, though.
In Vim? If I'm at the end of the block it's v?foo^Md/bar^Mp, which takes about a second. Emacs is similar, ^Rfoo^X^X^W^Sbar^M^Y, 10 keystrokes instead of 8, not counting the isearch strings, and more awkward chording in exchange for being less modal. Either is significantly faster than pointing at the block with the mouse, especially if part of it goes off the screen. Vim is the opposite extreme from being an exercise in frustration.
You can't do that in vi. Vim is from the Amiga, not Unix. In vi you have to say d?foo^M/bar^Mp, and though that's less keystrokes, it's harder because you don't have the continuous feedback of v mode or incremental search. Isearch isn't from Unix either; it's from ITS Emacs and wasn't in vim. It was Jef Raskin who did the research to justify centering it as a navigational method by quantitatively demonstrating its superiority to the mouse.
Of course if you don't have Vim in your brain none of this text will make any sense to you; it's almost like reading a list of (x,y) coordinates if mouse clicks. So you won't have any idea about the UI feedback I'm talking about, and you're likely to make clueless sarcastic comments like the one I'm responding to. But you can easily remedy that ignorance by running Vim or Emacs on an appropriate file and typing the recommended keystroke sequences.
Same here — found it in college in the mid-90s and it became my code editor of choice for years. I brought it back recently on some test machines just out of convenience and nostalgia.
XLennart
"XLennart is a modification of the arcade game XBill. An evil and unpopular computer hacker named “Lennart” tries to install his malicious init system on various BSD and Linux systems. Like in XBill, the player has to hit him and restore infected machines."
Still use xv for image viewing and editing all the time. Great for using on remote / headless cloud instances. The power of X11 is to run app remotely and display locally.
According to https://github.com/derf/feh/commits/master, it is still maintained. I use feh as well. How to view gif or webp though? If either of those two support gif and webp, then I will switch.
I used it for quite some time during my time as a PhD student and found it rather easy to use compared to gnuplot. Used it to make all my plots for my publications.
We use grace to provide graphs of resource usage for our end users. We wrote a tool that pulls together acct and other data sources to provide a graph of usage over time. It made it very easy for them to tell us that at 0300, 0442, 0529, the resource usage spiked, which makes looking through application logs much easier.
Yes, and Crossfire [1] too. Can’t believe how much of my PhD time was spent playing that and Xemp [2], though it got to the point that I could glance at a terminal-client map and run with it.
I recall the crystallography dept getting excited thinking there was some new research going on, because of the way I lay out my empire maps, and me leaving a printout or two lying around, back in the day :)
Back in the day (about 1993/4?) we had what we'd now call LAN parties playing this game in the computer labs at university. To the point where the admins banned any use before a certain time in the evening because it overloaded the shared 10Mbps ethernet.
Also there was a great Breakout game for X11 at around the same time that I cannot find anything about now.
If you're making a program today, you should be using some higher level framework or API than raw X11. If you program for Gtk or Qt, or make an OpenGL or Vulkan program, you mostly don't care about X11 or Wayland because i.e. Qt supports both.
You could use Xlib to program a client in pure X11, but that approach would have been outdated even 15 years ago. There's no good reason to do so today, even embedded systems often use Qt and there's good support for building embedded/Qt in Yocto. Most embedded devices that have any UI at all are likely powerful enough to run Qt, so I suspect there aren't many cases these days where you need to limit yourself to Xlib because of performance.
> You could use Xlib to program a client in pure X11
Xlib is actually not very pure X11; Xlib makes a lot of things synchronous whereas X11 is really an asynchronous messaging distributed systems protocol that happens to output to the screen as a side effect. Xcb is a much closer to the actual protocol library.
IMHO, a lot of early hate for X11 was really hate at Xlib; but as Xlib was the official library, it was understandable to get them confused.
XCB is missing support for some important extensions, though. Such as Xft, so you can't display modern anti-aliased fonts (unless you somehow use Xlib at the same as XCB, I think?).
Huh, I remember xearth. It would move the stars every time it redrew itself. I wanted to have it update every second for some reason, and that was distracting, so I patched it to add an option to not do that. Then I couldn't find a maintainer to send it to, so I didn't share it.
Back in the 90s, I has a fun pool/snooker game in 2D for x11. My encounter was in the default install of the ARM port of RedHat 3.0.3.
I've asked on these sorts of threads before, but can anyone remember what it was? I seem to have lost all trace -- source code, screenshots, anything. I thought it was "xpool" but that didn't turn up much.
One candidate to consider is https://www.freshports.org/games/flying/ - "Flying is pool, snooker, carrom, hockey + curling with nice animated spinning balls for pool". I'm not sure about redhat, but it seems to have been present in debian from 1998 through 2010.
Thanks for this. Sounds promising. "flying" is a hard search online for screenshots or other info, so I'll follow the lead from the URL when I'm back at my Linux workstation.
Takes me back to end of the fall semester and running XSnow, NCSA Mosaic, Nedit, and many of these tools, furiously coding in C or lisp on my projects, on an Xterm in the computer lab.
Back in the day there was also a huge security hole which could be exploited with the xwd command. If you knew the dns name of a terminal you could get a screendump from it. It was not secured at all.
I worked on a Java program that was a point of sales terminal. All the registers were reasonably beefy linux machines that ran a Java Web Start application and it worked well... except when it didn't.
Sometimes it had threading deadlocks and that was a pain to debug. In particular, we didn't know where it came from. So we installed a handler on ctl-alt-delete that would find the Java process running and do a thread dump from that (so we could find the methods that were locked) and also did a xwd to capture the screen to see what was happening. Sometimes we were able to pick out "this modal alert window spawned 100x copies of itself" by recognizing an unnaturally thick border around it. Just seeing what the state that the register was in was useful too.
The xwd and thread dumps where then stored in a folder that was sent back as part of nightly reports back to the central office where we'd look at them the next morning.
On one hand it was a bit clunky, on the other hand it really beat trying to get a bug report from cashiers working the registers in a timely manner - they just had to remember to do a ctl-alt-delete rather than power cycling the machine and we'd get it reported back to us automatically.
It compiles and runs! You need to set the SIMHOME environment variable to point at the root of the repo. It also generates a ton of warnings on a modern compiler, but in the end it pops out a running executable.
As an added bonus it runs perfectly well over the network, as a good X app should. You don't need a fast or low latency connection, it runs perfectly well over even mediocre connectivity.
Allows locking your screen without hiding its contents (i.e. just disables input/interaction.) Nice for when you want to keep some stats, top, or just a plain message visible on your screen.
- sm
"screen message". Goes fullscreen and just gives you an editable text field to type a message into. Great to combine with xtrlock mentioned above to put something like "brb, grabbing coffee" on your screen for your colleagues or so :) (Technically a Gtk app I think, but fits the pattern.)
- [ed.] Xephyr
Open another X server as a window in your current X server. Great as a "canvas" for a screenshare if you want to share multiple windows but not your entire desktop. Batteries not included, you need to know how to juggle xauth & a WM (metacity for me) to make the new X server actually do something.