Hacker News new | past | comments | ask | show | jobs | submit login
Cool, but obscure X11 tools (2019) (dabamos.de)
311 points by RalfWausE on July 13, 2023 | hide | past | favorite | 257 comments



GLXGears was my command of choice to verify if my graphics drivers were installed. Either they would run smoothly (when installed) or choppy and broken. Can’t use that anymore because the APUs and generic drivers got so good that everything runs smoothly. Good times.


Yes, I recall using GLXInfo in a xterm window to check whether I correctly installed graphics drivers or not. "Direct Rendering: Yes" would confirm that. Good old times indeed.


And you could tell based on whether it ran at ~100FPS or several thousand. I assume that doesn't work so well any more...


it used to be slideshow vs 30fps on some cards back in the day


That'll still work to see which driver is running. Might want to append "| head -30" so you don't get all the unnecessary debug for your answer, though. Or grep for what you're expecting (i.e. "| grep -i nvidia").


Was it using xdpyinfo or driconf or something? Muscle memory tells me it's somewhere around there.


glxgears -info | less


It says last updated in 2022 but I swear this list reads like it's from 1997.

I appreciate it nonetheless.

I browsed around the site and I found this collection which I like a bit more

https://cyber.dabamos.de/88x31/index3.html

It appears to be in roughly alphabetical order by topic, which is quite an accomplishment


You might be onto something

> Dock app that simply counts down the days, hours, minutes, and seconds left until 00:00 January 1, 2000.

https://cyber.dabamos.de/unix/x11/#wmy2k


What does it do now? Count increasingly negative numbers?


http://www.cs.mun.ca/~gstarkes/wmaker/dockapps/time.html#wmy...

put in printf("%s\n",temp); around line 52 and you'll see it is indeed negatives. This very much confuses this line

    copyXPMArea((*p-'0')*7 + 1, 0, 8, 13, k, 2);
But hey, with a change of the targettime you can re-release this as wmy2k38 (https://en.wikipedia.org/wiki/Year_2038_problem)


Random thought: should they be “decreasingly negative numbers,” since technically moving left of 0 is a decrease?


Possibly.

To me, sign and absolute value are often separate concerns.

The series 1, 2, 3, … is increasingly positive.

The series -1, -2, -3, … is increasingly negative.

But I understand, and accept, that others may think differently about numbers.


I think you could probably say either decreasing or increasingly negative, but not decreasingly negative, because that would describe a sequence that starts from a negative number and moves towards zero (but hasn’t gotten there yet)


I would argue that using the -ly suffix here is wrong:

The series 1, 2, 3 is increasing (and) positive.

The series -1, -2, -3 is decreasing negative.

The series -3, -2, -1 is increasing negative.

Edit: formatting


No. They may be decreasing, but they're not "decreasingly negative", quite the opposite.


To be fair, a list of things obscure in 2022 will naturally be weighted to dated software that became obscure with age. I'm surprised to see xterm on the list, but I guess most people are using more modern terminals, or urxvt if they prefer it retro.


The obscure part of xterm for me was the built in tektronix (vector) terminal emulation. I remember digging up a .dvi viewer that could display on tektronix by drawing a _lot_ of horizontal lines.


That is badass. Tex lives on but DVI need not.


Still using xterm, thank you very much. :)


I remember some of them from my first forays into linux, around 20 years ago now. Which is late by some people's standards, but still.


I remember checking some of these out from CVS and killing a bunch of processes so my machine didn't hit swap when compiling it.

You'd use ctrl+alt numpad keys to switch resolution and color depths sometimes if you don't have a lot of video memory. You could get high resolution, low color or low resolution high color.


Well then again, some things are timeless yk


I looked at a screenshot from one of them and it says it's from 2002


I think it's best to assume it was a multi-year project that concluded a long time ago.

Countdown to y2k and NCSA mosaic would have been of pretty limited use in 2002 and some of this software didn't exist pre-2000.

There's probably meta information on the images or a last modified date if people really want to map things out.

Regardless, it's a time capsule either way


Not sure exactly when Micropolis was added, but much later than 1997.


SimCity for Unix was originally released as a commercial product from DUX Software for OpenWindows/NeWS/HyperLook in 1992:

https://www.donhopkins.com/home/catalog/simcity/simcity-revi...

Then later DUX Software released a collaborative multi player version of SimCity for X11/TCL/Tk in 1993:

https://www.donhopkins.com/home/catalog/simcity/simcity-anno...

https://groups.google.com/g/comp.newprod/c/5KWv25ckYHc/m/MgG...

Then it was finally re-licensed under GPL-3 for the OLPC as SimCity, and for any other use as Micropolis in 2008 (with the multi player stuff disabled because the X11 network protocol was not safe or simple enough for kids to use on a mesh network):

https://arstechnica.com/gaming/2008/01/simcity-goes-open-sou...

https://github.com/SimHacker/micropolis


IIRC Micropolis was "born" for the One Laptop Per Child project, so arround 2008 maybe?


WMY2K seems a little obsolete


The cool kids don't make x11 apps anymore.


Some not so obscure ones too. Seems like a general app listing of the X11 days.

Who doesn't remember XEyes, XBiff, XClock, XEdit, Xev, XKill (!), Xv (!!), XMosaic (!!!) ... many others on there.

Granted I did not know FSV2 and some others.

Nice collection, glad to not have to run any of them. Not saying they weren't useful for their time!


I still use xev regularly and xkill pretty much everyday? Along with xclip (everyday too), xdotool (for automation workflows)... glxgears very often too to check if for some reason the GPU driver bailed out


Xev is super useful when messing with keybindings.

I also use xmag (not in this list) when I want to inspect something on screen or as a makeshift color picker.


If anybody uses kwin, you can set mouse-wheel bindings for zooming with a keyboard modifier using xbindkeys like this:

    "qdbus6  org.kde.kglobalaccel /component/kwin invokeShortcut view_zoom_in"
      Mod4 + Super_L + b:4
    "qdbus6  org.kde.kglobalaccel /component/kwin invokeShortcut view_zoom_out"
      Mod4 + Super_L + b:5
You can change Mod4+Super_L to whatever modifier keys you like.


xdotool sits that the heart of a few useful keyboard macros I have set up, e.g.

    ZOOM=$(xdotool search --limit 1 --name "Zoom Meeting" || xdotool search --limit 1 --name "Zoom Webinar")
    
    if [ -n "${ZOOM}" ]; then
        xdotool windowactivate --sync "${ZOOM}"
        sleep 0.1
        xdotool key --clearmodifiers "alt+a"
    fi
Finds the zoom meeting or webinar I'm in, brings it to top, and unmutes it. Very useful


I recently discovered xdotool and it's fantastic. I'm using it with lirc to run a special media TV for my mom, who has Alzheimer's.


It's 2023 and there are stable graphical operating systems that don't make you check 'if the GPU driver bailed out' every 15 minutes...


Do they also not include telemetry or forcefully installed software you never asked for but cannot remove anyway and will remind you of their existence ar every opportunity?


Yes.


With great power comes great responsibility. If you don't want the responsibility, that's fine, but someone else gets the power.


Last time I had to do that, it was on Windows 11 on a friends PC that was unexpectedly using 1024x768 on his 4k HDR monitor.

Glad I don't have to deal with that, Arch just works


Shades of my old Vic20.


It’s more of the driver’s fault, right? BTE, Windows has a Ctrl+Shift+Win+B shortcut to restart the graphics driver if it bails out.


Windows has a Ctrl+Shift+Win+B shortcut to restart the graphics driver if it bails out.

The fact that Windows has a built-in shortcut to restart the graphics driver illustrates that graphics drivers are not as faultless as the parent poster believes.


ohhhh I didn't know this one (as I have of course the same problem on windows regularly on that machine but then I just reboot)


I don't know... Sometimes I've to pull Windows into safe mode and run DDU. The reasons are varied. I assume macOS might run into similar things, all software has bugs


glxgears was/is useful if you use a proprietary graphics driver. Those are prone to getting broken when you update to a new kernel. With in-kernel drivers for most GPUs this is much less of a problem today. Probably still a problem for Nvidia owners.


Same for xkill? Who needs to kill a graphical application every day and what kind of distro parent commenter is using to need to do that in 2023?


i'm happy for you if you never have any application that hangs and ends as a zombie process but for me it happens very, very regularly (generally because of some stuff being on a network share or some hardware being plugged in an out a bit too much.. like unplugging an USB soundcard when it's being actively used, this one always causes some mess)


Not OP, but I use xkill semi regularly (like 1-2 times a week) to check whether an app is running in xwayland or natively...


xeyes can check that too, without killing the application.


aha, I just used it for a very simple reason: it was simpler for me to type "<meta+d> xkill" and point & shoot than to go through the save & exit confirm dialogs of a GUI app I was about to close


who runs js in a web browser every day in 2023.


> It's 2023 and there are stable graphical operating systems that don't make you check 'if the GPU driver bailed out' every 15 minutes...

In my experience it's got nothing to do with the operating system and everything to do with who wrote your graphics card driver. (NVidia is stable everywhere, AMD is... not).


>AMD is not...

We are not in the Radeon times with GATOS project any more. Since the radeon(4) driver, Radeon cards might work much better with open drivers and a current MESA release than NVIDIA except for machine learning.


I use XEyes all the time to find out if an app is running in Wayland or XWayland.


Another way to do it is the xlsclients command.

Also, I can reliably tell based on the fact that the contents of the XWayland windows are fuzzier.

I can do that because I have had lots of practice discerning fuzziness, because I am using a old monitor (as opposed to a HiDPI display) and because I have a fractional (non-integral) scaling factor declared in my monitors.xml file--when the scaling factor is set to 1.0 there is no difference in fuzziness as far as I can tell.


how does xeyes help with that? does it fail to track the mouse on wayland apps? i can see that would be useful.

i actually have problems with XWayland, it frequently (every few days), goes to a 100% CPU and locks up the screen. then i have to remote login and kill it, at which point i see which apps die, so i know what is using XWayland from that. :-)


> does it fail to track the mouse on wayland apps?

Exactly. It will work properly if the app is using XWayland and fail for native Wayland.


I still use xv to look at images, GLXGears to debug GL issues, and xev to debug any weird keymapping issues, and xterm as a visually different terminal for things like monitoring console output.


The xv guy might still be accepting payment. I wonder how much he gets these days

http://www.trilon.com/xv/


It's such a quick and handy tool that I became habituated to xv over a decade of use. Some years ago though, I found it was no longer available to install after an upgrade. I was eventually able to fudge a working version from old code and patches and taking hints (iirc) from some patches for MacOS, but now that has suffered bitrot.

So I'm curious what OS you're running and where your xv is from? Still miss it!


xv runs perfectly on linux (Slackware 64)


Thanks!


right, xterm is obscure?

but xmosaic should count of obscure today because now it only works on old and obscure websites ;-)


For those who are relatively new to X, it is likely very obscure. People seem to be using desktop environments these days, and desktop environments come with their own terminal application. Those seeking out replacement terminals would probably stumble across xterm, but how many would actually try it? It's feature list isn't exactly designed for those with modern sensibilities.

(I was using xterm until very recently, mostly because it used sharp rasterized display fonts. Now that I have a reasonably high DPI display, it is easier to use nearly anything else.)


> For those who are relatively new to X, it is likely very obscure. People seem to be using desktop environments these days, and desktop environments come with their own terminal application. Those seeking out replacement terminals would probably stumble across xterm, but how many would actually try it?

It's really very configurable. My problem with mate-terminal and similar is that they don't often let me set a cursor color independent of the foreground color.

I like to code C projects in a single vim session running in a terminal; by having a bright green fast-blinking block cursor I can visually locate where my cursor is after reading code in a different split.

So, yeah, I use xterm (or uxterm) because of this single feature that I value of any other feature it might be missing.


with that argument every X11 app that isn't gnome/gtk or kde/qt is obscure. but then that is pretty much what the list shows, so maybe that's the authors definition as well.


I used to use

xterm -fn 24 &

on HP-UX workstations and servers. Even on Linux maybe, earlier.


I always thought xbiff was named after the back to the future character. Turns out it was named after one of the campus dogs instead :)


Heidi Stettner's dog, at the Berkeley CSRG.

(Ok, I had to look up her last name. I'm getting old.)


xkill is frequently useful at my work, unfortunately


It's a UNIX system! I know this!


Is there an xkill equivalent for Wayland yet?


Most Linux users these days run GNOME or KDE and have never heard of these janky little apps linked directly against xlib.


I wanted to test something on a "normal" system so I started a new Fedora 38 vm. gnome 44.2.

What an incredibly obtuse, unhelpful, un-useful interface. I don't know about kde but definitely gnome does not get to charge anyone else with any words like janky.


it's a bit of fun running them in wsl


> 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.

Hah! Poor Poettering tho. He really gets a lot of hate '=(


The hate towards Lennart is truly regrettable. I like how systemd has enabled managing and securing daemons easy (Before=, After=, CPUQuota=, ProtectSystem=, ReadWritePaths= to name a few of them.)


It's more about his personality than about his software I think.

Especially the way systemd was pushed through by making gnome dependent on it was not cool.

This made me dislike systemd and Poettering even though it's not bad as such. I just don't like to be forced into things. I don't hate him but I'm not exactly positive towards him either.

I use FreeBSD now anyway because I think commercial influence over Linux is too great. So I'm admittedly an outlier.


It's more about his personality than about his software I think.

as someone who has met him in person, i have to reject that. there are arrogant and uncomfortable developers. he is not one of them.


Lennart earned himself a reputation for thinking his own shit doesn't stink, closing bugs against his software as NOTABUG or WONTFIX even when his software was flagrantly at fault.

Here is one particularly egregious and clearcut example: https://github.com/systemd/systemd/issues/6237

tl;dr: a systemd service configured to run as a user who's username started with a digit (e.g. the username '0day') would instead run as root. Lennart initially closes the bug report and refuses to fix it because he thought such usernames weren't acceptable, despite the kernel and most linux utilities permitting it and handling it gracefully. A good engineer with a shred of humility would take this report seriously, even if he thought other systems shouldn't be permitting the circumstance. To see the lead engineer of a project so important to linux take such a childish stance on a security-related bug was infuriating and demoralizing.

This is just one example, which didn't take anybody by surprise. It's his modus operandi. May the gods have mercy on the Microsoft engineers who now have to call him a coworker.


> Especially the way systemd was pushed through by making gnome dependent on it was not cool.

Can anyone link me to a history of this? I've heard this a number of times but haven't seen anything factual (i.e: that answers "what were the technical benefits to gnome?"). It seems pretty reasonable to me that Gnome devs would see some nice features/integrations that they wanted to use, and decided it was worth it. It also seems plausible that they would have used gnome to strong-arm in systemd. My experience tells me that the former is a lot more likely, but I'd like to investigate the situation.


https://suckless.org/sucks/systemd/ - I dunno if there's anything about GNOME in there but that's got a lot of info


Those PascalCase keys are an unfortunate signal, and reminds one of the Windows registry. "Mixed plus case-sensitive" names are the worst of both worlds—hard to get right unless one uses copy/paste.

Unix tradition (see AOUP) and perhaps supervisord precedent recommend names that need to be user-typeable should be lower/snake case:

https://softwareengineering.stackexchange.com/questions/1863...

Not a huge deal, and keys are not filenames. But it shows a lack of detail-orientation for someone working at such a fundamental level in the OS.


None of that required systemd's basic architecture. That is what is truly regrettable.


Forcing adoption probably did though. Better alternatives that played nice with a unix-style system (e.g. runit) existed for years, but since distributions weren't forcing them, services mostly didn't bother integrating with them.


So what? If a distro doesn't feel any need to adopt runit, so what?

But today, you essentially can't have a system without systemd, because it's no longer just a matter of "if you don't want it, don't use it" because all the upstream packages have now changed to depend on it, and now it's a huge job to artificially hack them all back to sysv-init.

And as bad as that all is, what makes it all nuclear worse, is the complete disregard and inconsideration for anyone raising that objection.


> But today, you essentially can't have a system without systemd

Thankfully the Gentoo maintainers still make this easy.


Void linux is based on runit and is by far the best distro I've ever used after 25 years of distro hopping. (FWIW I've used linux since slackware 3.0)


Never had any problem with systemd, but I did have problems with PulseAudio — the high latency audio server. (These days it seems to work good enough, still looking forward to PipeWire.)


Back in the day I got into the habit of removing avahi and pulseaudio when I could because all they gave me were issues. Only later did I learn they were both by Poettering. When systemd was pushed, I started getting a whole new class of issues (due to renaming of drive and interface names - a problem systemd was designed to fix) which I never had in my entire Linux life. Nowadays it's not like that. Though I still get some systemd task running on a timer or indefinetely keeping the system from booting or shutting down. When the timer ends you realize it wasn't an essential thing after all.

And from a few posts of his I had read when systemd was being introduced one thing struck me. All of the posts of his that I read where he was defending something of his, the post would be full of blatant straw man arguments. It was very odd.


Pipewire is ready. Solved all my bluetooth headphone troubles too, I haven't had a single audio frustration since I switched.

I believe pipewire is already the default in Debian, Ubuntu and Fedora


Yeah. It's actually funny how Pipewire and Wayland turned out. Wayland was supposed to be ready for general use "any day now" since 2011. It's 2023 and the situation looks thus: <https://community.kde.org/Plasma/Wayland_Showstoppers>. Whereas Pipewire seemed to have scarcely any marketing, instead it just happened. I remember reading about it for the first time at some point and started wondering whether Debian, a conservative distro, turned it on or whether I should change a setting to opt into it. I looked at htop and lo and behold: Pipewire was there. So it happened before I even heard about it, without a single hiccup, so smoothly that I didn't even notice the sound system changed.


I think large part because pipewire was basically just going in with the attitude of fixing the underlying system while also supporting all the existing interfaces, which made it very much a drop-in replacement which could support pretty much all the common usecases. Wheras wayland is a big 'lets change the interface' deal (probably a good call actually) which didn't really seem to understand that it couldn't just punt on all the existing usecases for the old interface (I think there was some belief it could just be offloaded to compositor-specific APIs, which is a terrible idea guaranteed to make app developers hate you and irritate users when every combination of app and compositor acts differently), so you get a lot of breakage while people beg them to actually add standard interfaces for things.


Ha! I saw XLennart also and came here to Ctrl+f and see if anyone else had commented.

Indeed, it's wild to see the level of systemd hate that there is. Hopefully Lennart takes it in good humor. I would in his shoes. Can't take ourselves too seriously


Last I heard, he now works for Microsoft.


Some might wonder if he’s been effectively working for Microsoft all along. I don’t think that’s really fair. Both PulseAudio & Systemd are trying to do something really useful and make things better than they were before … but man some of the architecture & design choices along the way are regrettable.


Pulseaudio was a program which, for some years, only worked, if you killed it. Start firefox, try to play a youtube video, does not play audio, kill pulseaudio, sound works.


`xneko` brings back memories. My freshman year at university we were on X terminals where they came in a little pack of several stations. Each of them had X authority on the others within the same pack.

People quickly learned they could open a billion `xneko`s on another person's screen to completely lock them up.


Someone did it to me with a single Xeyes window. I was in my dorm room by myself at the time!


At some point people figured out they could plaster another person's screen with porn via `xv`. But then someone else discovered that meant you could go in and Save File to the original user's directory. Once people realized that giving people write access to their directory wasn't a wise idea, this practice stopped.


xv was the wrong tool, there are others that would have been able to project images without giving the receiver the ability to write to your directory.

the most obnoxious would have been to set the background, because that's not easy to undo if you don't know how.

when i was a student i used to hang out in the computer halls until late at night. being one of the last ones there i was often able to get use of the one sun workstation that had a color screen.

one night the sysadmin logged remotely into the machine i was using and played "always look on the bright side of life"


There was a mode, included with the After Dark screen saver for classic macOS, that was basically an xneko port, named “Neko Neko”.


Mad props for Hans Ecke’s XPlanet Resources page:

http://hans.ecke.ws/xplanet/

For a year or three, I ran this setup on my Linux background desktop. Our team was returning to the United States after working with our colleagues at the European Southern Observatory https://www.eso.org/public/ and a flight attendant noticed the image of Earth, Moon, sun on my computer.

She asked if I were interested or involved in space exploration, and I told her that we looked at stars from the ground, but could get pretty far. She bent closer to me and murmured, “The pilots have just heard from the radio, there has been an explosion of the Space Shuttle.”

2003, somewhere over Greenland.

Anyway: XPlanet rocks.

https://xplanet.sourceforge.net/maps.php


This list is how I discovered xsunclock. which quickly became my poster child for everything I love about computing. It is very clearly a labor of love. It follows no ui guideline known to man(I like to refer to these sort of programs as following the R'llyeh school of design). It is just barely on this side of usable but offers an unmatched set of timekeeping options. It is pretty great.


The program xsunclock uses the look and feel of the Open Look toolkit, which is a programming toolkit from Sun that pre-dates Motif and others, but it definitely looks quite different from other GUI toolkits.


Definitely a blast from the past. I haven't really been using a linux desktop the last 10 years.

Especially in college in the late 90s I remember using/trying a lot of these application.

Some of these like XBiff were standard things almost all of us setup as we configured out desktops. Mostly we were using FVWM but you had to basically build your own environment.

When I was in school the campus computers were basically a mix of Sun, IBM RS6000, and SGI, and the IT department had everything configured extremely nicely where you could log onto any machine and your desktop appeared and all your files were there and everything just kind of transparently worked as if you were always using the same computer, even though the machines were all different versions of Unix. For non programming work it just worked. For my CS stuff you would just have to recompile on the current arch you were on.

Gnome and KDE didn't appear till about my 3rd year.. I don't think any of them were really available on the school machines unless you built it yourself and did the work to configure your environment to use them. So we used a lot of these old school X11 programs.

I never had any money for a TV, game console, etc.. at that point and actually played some of these amateurish X11 games for fun. None of them were good enough to hold your attention very long but there were a lot of them to try. Some were really good for the time, like Netrek. The graphics were not amazing but the multiplayer gameplay was well ahead of it's time.


> Gnome and KDE didn't appear till about my 3rd year.. I don't think any of them were really available on the school machines unless you built it yourself and did the work to configure your environment to use them.

That brings back painful memories of getting Gnome (v1, perhaps) compiled and running properly; was it "the Gnu Network Object Model Environment" or similar?


Speaking of FSV2, I remember randomly discovering fsn on the SGI Irix as an intern and realizing it was the cool 3D file browser from Jurassic park. I thought it was a special effect prop for the movie and then to my surprise it was an actual working application.


I just wish the VR UI from Community were real too <https://youtu.be/z4FGzE4endQ>


For me xfishtank would top the list. I still use it sometimes.

Xblast was also cool. It would transform the mouse pointer into a crosshairs and if you clicked it would shoot a hole in the window that you could actually see through. It was really fun to annoy first year students at uni before xauth was implemented.

Xeyes too of course with some --geometry to make it full screen. Did that with a huge video wall once (nearly got me fired but I was just an intern. So worth it)


Wow. I remember a different Xblast. This was a multiplayer Bomberman clone: https://xblast.sourceforge.net


Hmm maybe it was called xblaster. Not so sure now. But blast and x were definitely part of the name.


Not that obscure but I recently started doing "xeyes debugging".

We have so many debug logs that trying to find your log of a background task, takes a non zero amount of time.

So just inserting system("xeyes"); is actually way easier, to get instant feedback, and you can just use system("xmessage msg"), if you need a message.


I read somewhere, don't remember where, that xeyes can be used with xwayland to see if a window is wayland or X11: because the cursor position is private in Wayland windows, the xeyes will stop moving.


When I see screenshots with window decorators like that I always wonder if there's someone actually using an ancient computer or if the screenshots are just really really old. I tend to guess it's the latter.



i stick with it because i haven't found a window-manager that is better than that. i tell you, there are dozens (yes dozens !) of us.

this is how it looks for me: https://imgur.com/a/OXGVCsK


this is how it looks for me: https://imgur.com/a/OXGVCsK

That's way too useful and productive.

It's not a real OS if it doesn't have ads flying out when you click controls, and constantly telling you the forecast and what Taylor Swift is up to this minute.


Zenburn theme with Emacs too. Awesome! I'm using ctwm as my wm on NetBSD.


More than you think.

There is also NsCDE: https://github.com/NsCDE/NsCDE


before fvwm tvtwm was was my choice. fvwm improved on that dramatically with its featureset. but even fvwm i stopped using already 25 years ago because nicer alternatives became available (i used window maker for a long time, then compiz, now i am just lazy with standard gnome)


yeah, i tried lots of things all over the place, including, but not limited to things mentioned in this thread, but the hobbit in me keeps going there and back...


Getting some old man yells at clouds vibes :)


it appears the author is running freebsd, and based on the style of the title and border i am guessing that this is the fvwm windowmanager, the screen background on some of the images seems to support that.


Yep, when you run startx on a new FreeBSD install (or openBSD for that matter) this is what it looks like by default.


Interesting! I didn't realize it would be that easy and like that by default. This is why I love the kind of discussions that crop up on HN!


This is how modern X applications look by default. It’s gtk, compositors, and window managers that add/change the aesthetics.


If you're just running an X server and a single program, I thought you didn't get any decorations at all.


Window decorator has a specific meaning in X terminology, referring to the frame of the window done by the window manager.

The screenshots are using some commercial Unix wm (mwm?) or one of the free ones that copies their look (fvwm?)

I use fvwm on one of my machines in 2023, in part because I found myself on a retro kick a few years ago, so I don't think it's that weird, though it is extremely dated.


Super fast and light.


It's the third option. A modern computer running modern software that just didn't bother to look modern. Turns out there are some significant performance gains to be had if you don't care too much about your window decorations looking flashy.


Using an older window manager is usually a case of installing its package and adding it to a file executed by your display manager. I don't have much love for the old window managers, but some of the newer ones are quite nice.

As for the old window managers (and applications) themselves, I would imagine they are still bundled with Debian. Now that Debian allows non-open drivers in their official installation media, I'm tempted to try installing it to relive some of that X11 nostalgia. (I have fond memories of xv, xfig, and such.)


A lot of them are made using Xt and Athena widgets. They are ... Spartan. Also the scroll bars often work best with 3 button mice.


Athena widgets can use the mouse wheel with an .Xresources tweak.


It's entirely possible to run that window manager on a modern system.


How can a page like this miss out on Xaos, one of the coolest fractal programs for X11 :-D

https://xaos-project.github.io/


don't forget xfractint


Somehow missing XDaliClock which has around seemingly forever. It's better than most of the clocks they included.


If they did list or link to it, JWZ would probably revert all the graphics to hairy testicles.


`xdaliclock -cycle -transparent ` was my favorite way of running it. Hide the window decorations and it was lovely.


I sometimes wonder what a modern desktop would look like if every app had the Motif look. I wonder if the consistency of this experience would surpass the subjective ugliness of it.


I find Motif good looking and practical. I like visual feedback when i press a button.

Using modern UI without borders, with cluttered title bars, with tiny scrollbars is a PITA.


The SGI Irix 4dwm used it and was pleasing to the eye. Also had vector icons.

Add 4k, text antialiasing, and an updated terminal and I think would look and work quite well.


TIL about XLennart, which it's somehow funny but I still think is undeserved

On the other hand I knew XBill for decades and that was totally deserved.


As strongly as anyone can disagree with something, I disagree with the "undeserved" part of this.


It’s a little bit interesting to me that XBill has the eponymous figure replacing a diverse ecosystem of OSes, not just Linuxen, with his own. That probably is a sign of the times, when that diversity existed in fact and you might be playing that game on an HP-UX or another prediluvian machine. Maybe not though, maybe the waters were already rising. You might even imagine with some fairness an XTorvalds in which you vainly try to save the BSDs and proprietary Unixen from a Linux monoculture. It makes it easier for me to charitably accept how some systemd detractors describe themselves as for init diversity, even if non-systemd and non-sysvinit inits on Linux seem like a curiosity, rather than assuming that they are just contrarian. It is part of a tradition of valuing a variety of ideas and implementations of ideas, even when it becomes quixotic.


I did not find the XLennart very graceful neither.

I admit I am also biased about the original XBill one.


This is why easy coding is important. It opens the floodgates of creative production.

In the fine arts we call it a plastic medium. A medium that's easy to edit. It's why we sculpt out of clay instead of beercans.


I don't know if I'm missing your point, you're overly nostalgic, or you just never had to write a substantial X Window app back when most of these apps were developed, but nothing about that development environment was easy.

It was full of incredibly verbose, buggy API calls with a bunch of platform-specific bugs and everything was manual.


Surprised not to see Xpdf on this list. I actually used it until fairly recently as I just wanted a simple, no-frills PDF viewer (I now use Zathura instead).


I loved Xpdf, it was part of my weird "tex->pdf REPL", which was just

  % xpdf -remote work output.pdf &
  [1]
  % inotifywait --monitor ... | \
      while read; do \
        make && xpdf -remote work -reload
      done
At the time, xpdf was the only PDF reader that wouldn't eagerly try to re-read the PDF file the instant it noticed a change. ps2pdf / latexpdf etc don't write the file atomically, so other PDF readers would display garbage (and then not re-display after latexpdf was finished) and usually lose the page that I was looking at.

With xpdf I could do xpdf -reload after my build finished, and it would retain my place (as long as I hadn't `\if 0`ed the place I was looking at out of existence).


xpdf was updated. It is terrible now.


I remember spending some non-insignificant amount of time playing 3dpong, because that was the first time I got exposed to a wireframe game. I thought the formalism was delightful, it felt very cyberpunk. My first 3d game was probably Stunts, a racing game that used flat shading (there was also Abrahams tank, but I never got into it as much as some of the older people in my circle), and then there was a lot of games that used a kind of hybrid sprite, flat shading, texturing mapping approach, from wolfenstein to Daggerfall. I got 3dpong from a Slackware cd, which was also my first linux install, back when linux was cool :> I was democoding, so probably implementing phong reflection on a sierpinski cube which was a style at the time, and here was a game that established an entire 3d experience space with just a handful of lines.

(some might ask "how the hell did you not know about Elite or Tempest??" before pervasive internet discovery was a non-linear process, I think I learned about these games in the early 2000s, from the internet)


Feel like Stunts is such a sleeper retro game so many played and nobody ever talks about. Incredible fully customizable levels with massive obstacles rendered in 3D. In 1990, 3 years before doom.


I sometimes think we collectively rewrite our past for the common denominator. have people always been doing that, or it's an internet phenomenon? like maybe you listened to Andy gibb or The Bee Gees in the 70s, but you retrospectively remember that you somehow was Black Sabbath's biggest fan, even though that wasn't the circles you've spent time in at all.

I sometimes have to consciously remind myself that I haven't played chrono trigger until 2005, or that I clocked some unreasonable amount of hours playing rise of the triad, Star Wars dark forces and Ultima underworld, rather than the whatever's on the list of top 90s video games.


Stunts was fun but would often send my vehicle infinitely skyward from bugs in the tracks having jumps... that kind of ruined the simulation


You got a flight simulator for free and you are complaining?

:)


Strangely enough, I have run and used every single item on that list, with the exception of xwpe.

How did I not know that this existed?

TIL that:

   sudo apt-get install xwpe
actually works!

Will have to play with this later.


xwpe being a

> Borland-like integrated development environment (IDE)


There was also RHIDE.


Which was deadly slow, it used delay loops for timing IIRC.

Not a bad product otherwise. The Borland IDE still feels like home to me.


There was one called xlsfonts which would list all the available fonts.

https://www.x.org/archive/X11R7.5/doc/man/man1/xlsfonts.1.ht...


If you're thinking of an X11 GUI, I think perhaps you mean xfontsel?


No, I meant xlsfonts, as in the above man page I linked to.

It is a command line tool and can be used without a GUI. You can even query for the fonts on another X server's display (1). See this excerpt:

-display host:dpy This option specifies the X server to contact.

(1) - where the meaning of server and client is the reverse of that of traditional client server.


Fair, I was thinking that because its not actually an X11 GUI (though it is X11 of course)

Its fun to query or set information on a remote. The same applies to xdpyinfo, xset, xrandr and many more support the -display option (if they don't then set the DISPLAY environment variable).


OpenBSD has a ton of obscure x11 games and apps in their ports collection if you want to play with a different subset than FreeBSD's ports includes. I spent a whole evening enjoying the UNIX archaeology contained in their repo.


NEdit was perfect when I was transitioning from Windows to Linux in the late 90s early 2000s. It was even in Slackware.

Also, I miss the large clear, 16/256 color icons from the win 3.0 and 1990's unix era.


NEdit was my main editor for a few years after I started using UNIX in the late 90s but couldn't get the hang of vi and emacs. I have fond memories of using it and I'm pretty sad that it was so tied to Motif that it never developed further. I used it on Solaris, HP-UX, AIX and even Windows (via Cygwin). I kind of miss using an editor so uncomplicated.


Wouldn't gedit do this today? It looks like gedit works on Windows too:

https://wiki.gnome.org/Apps/Gedit#Installation


Many thanks. I did use gedit for a while, though I confess I never became as fond of it as I had been of NEdit. It does tick the "uncomplicated text editor" box though.


https://www.gnome-look.org/p/1920644

and

https://github.com/B00merang-Project/Solaris-8

Change the GTK settings as always. Or use lxappearance.


Actually I hear about GLX Gears pretty often, usually as a test step in setting up graphics drivers. But personally I am super fond of TiEmu because that's what I used all through college. As I got more and more into my CS coursework I found that I really didn't need my TI-84 _most_ of the time but I still needed it _some_ of the time. TiEmu helped shave about 1lb off my heavy backpack and let my brother use my Ti-84 for HS/College.


I used a lot of these in the late 90s and early 2000s. I guess I'm just old, but a lot of them don't seem that obscure.


One I dont see mentioned is Xnest (or its successor Xephyr). In a previous life, used it all the time to debug apps in multiple desktop environments.


Good one.

I recall, around 2004, using it on Windows, under Cygwin, to run cygwin-compiled X apps on Windows.

I'm not sure how that worked at all, to be honest. I hope my memory is not playing tricks on me again.


My (less-than-half-baked) master's thesis has a screenshot of Xnest, which I was using to demonstrate some ridiculously primitive precursor to kernel namespaces, IIRC


I like xvfb-run which runs GUI X11 applications in a headless mode.


One of my favorite bits of software is Xpra [0], "screen for X". You'd run it and it would start another X server (start apps in it with `DISPLAY=:1 xterm` or whatever), and you would "attach" it to your running X server with `xpra attach`.

You can attach to e.g. `ssh://hostname/:1`, so I ran a firefox instance on a homelab server and attached to it from my laptop and my desktop to not have to bother keeping bookmarks, tabs etc in sync.

[0] https://xpra.org/


I used to run Xroach to freak out colleagues. You move a window and they scramble! Tiling window manager I am using nowadays made it obsolette :)


Hey gvim isn't obscure..


Nor is xterm. Or xcalc. Or xclock.


XPilot is missing.

https://www.xpilot.org/


Also xlander ( apparently maintained! https://github.com/ac000/xlander )


I'm sad that xsnow doesn't work on modern environments. Having Snow fall on top of windows was really cool


Still werks for me, I use it every year. I think it even has some wayland support, but I haven't tried that.


1.42 version works flawlessly. The new version is a disaster.


Possibly not old enough to be included in that list, but my oldest piece of desktop software I always run on my main machine is GKrellm with BubbleFishyMon as system load monitor.

http://gkrellm.srcbox.net/


This is giving me strong nostalgia, I loved gkrellm ~20 years ago because of how densely it showed information. I stopped using it eventually because it used a non-trivial amount of CPU just displaying stuff.


I noticed this too, but setting refresh to low values, like 5 per second, reduces considerably the CPU use.


Ah, I love these posts. There's always some gems popping up in the comments.

My top 3 are Xaos (previously mentioned above), XEphem (https://github.com/XEphem/XEphem); an absolutely lovely ephemeris, and predict (https://www.qsl.net/kd2bd/predict.html); the satellite tracker--which has a bunch GUI versions--for example gpredict, which I guess is more relevant for this story.


I'm missing XMMS, basically X winamp ;)


I'm using qmmp (it's in the debian/ubuntu or mint repo, not sure) which is visually and functionally identical.


I never got a chance to write UIs using Motif. Was it pleasant to work with?


It is similar to write win32 apps. Of course the C compilers were way better than MS, but on the other hand no IDE with autocompletion was available. Similar to the MS world, people did anything to avoid writing C apps, so Tcl/TK was born.


Xterm obscure? I use it all the day.


Seeing GLXGears is giving me a panic attack thinking about setting up linux on a shitty old laptop years ago and trying to get world of warcraft to boot up.


Wow. I know most of those (and used a CDE desktop environment, so the window decorations really take me back).

Kind of weird to realise so much time has past.


Related:

Cool, but Obscure X11 Tools - https://news.ycombinator.com/item?id=29681507 - Dec 2021 (128 comments)

Cool but obscure X11 tools - https://news.ycombinator.com/item?id=20713003 - Aug 2019 (246 comments)


I wouldn't put NEdit in the 'obscure X11 Apps' category. It's very useful, for example to visualise logs.


Is x2x considered obscure?

I always thought it was remnant of a much cooler alternative branch we could have gone down for UI, but didn’t.


I've been using Barrier as a shared keyboard and mouse for a couple of years. Works well.

I haven't played with x2x. Thank you for the tip.


Not necessarily obscure, still rather useful. xterm & xv remain my daily tools, and xosview is still maintained here:

https://www.pogo.org.uk/~mark/xosview/


XPilot! And my favorite X11 game: XBattle


Adding two of my favorites:

XMorph - blends two images together: https://xmorph.sourceforge.net/home/gourlay/public_html/Xmor...

ACM - Aerial Combat Simulator: https://www.gnu.org/software/acm/


xmorph was awesome. i'd love to see a more modern version of that that produces better quality results.


XBattle is a great game and seems ripe for re-discovery and re-implementing, maybe as a mobile game. It shares some elements with RTS games but had its own vibe.

There've been a few XBattle clones in the last 20 years, mostly Flash games, but none really took off. It's a great game mechanic.


xtank as well!


Yes I remember playing that one too.


And xconq


Bringing the grognard experience to computers.


I love Angband deeply.


Back in 1994 I remember playing an X11 clone of missile command that alternated the traditional defense wave with an offensive wave when you attacked the attacker's cities.

I've long since forgotten what it was called.

I was kind of hoping it might have been on this list, but sadly it wasn't.


Anyone here use https://github.com/google/xsecurelock?

I found it while going through reddit.com/r/unixporn and looking at other peoples tiling window manager setups.


I was working on a small bash notification client, and I wanted some simple universal apps to use in the examples for actions (run a command when a notification, or a button on it, is clicked) and was shocked to discover that xterm is no longer a safe assumption.


A missing one: ddd debugger

A debugger that can represent data structures like linked lists graphically.


Sadly, changes to gdb have made ddd somewhat unreliable. Also, it has a lot of trouble dealing with programs written in Rust :)


Because it is unmaintained


Yep.


For educational purposes it is still useful.


> A simple RTF editor for X11. [...] Prone to crashing.

That makes is pretty useless as a word processor, unless it has a really robust auto-save system.

Anyway, the Plan calendar thing looked neat, but I don't think it's packaged in Arch.


The GTK2 port of Ted it's better.


A great list, although I'm not seeing xteddy, xkoules and spellcast in it.


I also remember a lot of these from the 90s. But I didn't see xphoon, that was a pretty cool one to display a (fairly) detailed picture of the current phase of the moon in your root window/desktop.


When I first learned about xmosaic in 1993 my first reaction was "nice hypertext tool though not sure why anyone would want to load documents over the Internet"....


Oh gee, I still have my TI-92 Plus in some drawer!

So many memories, what do I do what that? So obsolete now but can't just throw away that piece of working hardware.


Sell it. The calculators I had decades ago are still being manufactured, at a higher price than I originally paid.


The first item on the list (3D Pong) looks like it could have been the inspiration for Strong Bad's famous "your head a splode" game


GNUJump doesn't really belong in a list that suggests installing packages with pkg, but that's the one this brings to the mind.


I used an array of XBiff's at $previousjob on Sun Sparcs. And procmail. Good times.


I'm not sure I would describe gvim as obscure. But this is certainly an interesting list.


gvim and xterm are obscure now? O_o


xev is extremely useful; a natural counterpart to xbindkeys and very useful when you're trying to reconfigure your keyboard mappings. xsnow is maybe my favorite from this list, I install it every winter for the holidays.


I guess it is time for some beers, I recognise like 60% of those applications.


FWIW GLXGears is still in common use by those stress testing LinuxCNC systems


Did anyone ever create a video player titled xvideo?


not a player, but there was (is?) xvideo extension: https://www.x.org/releases/X11R7.5/doc/man/man3/Xv.3.html

i remember it as an mplayer output option mplayer -vo xv [file]


XBill is one I had forgotten about for a long time


Free42 is also available as an iOS app!


To that list, I'd add xdiskusage.


What about XTartan and Xrisk???


And XTank!

Loved XTank. My friends & I wound up getting the source as we found out the version we had deployed on our university's system was older and missed out on a lot of cool tanks & features.


Many happy hours playing XRisk and XPilot at work 25 years ago :)


I feel old.


sunclock is a favourite of mine, and I can't find any newer alternative.


nedit was awesome I really enjoyed using it on my old scrapy computer


Xpilot, xanim, xterm?


Xanim was the first free video player.


In what way are these "X11 apps"? Aren't those just "GUI apps that support X11"? Which is not a particularly special trait, because it applies to every Linux compatible Desktop app?


X is the client and server for rendering pixels on to a screen, which is mapped to one of more monitors. It provides the most basic, bare bones way to draw a window to the screen, and that’s about it.

It’s not even a GNU/Linux thing, X predates Linux, it’s more of the standard system to draw a window on Unix-like systems.

X11 apps are GUI apps uncontrolled by/unaware of a desktop environment, theme engine, or window manager. They appear in a minimalist, maybe even brutalist, aesthetic. You can launch a single X11 app from the console, and the resulting window will be your entire graphical display/instance, returning you to the console after the program terminates execution.

Maybe another way to think about your question might be, think of X vs Wayland.


Interesting

> You can launch a single X11 app from the console, and the resulting window will be your entire graphical display/instance, returning you to the console after the program terminates execution.

Is this not possible with GUI apps using e.g. Qt or Electron?


You interpret X11 apps as a technical descriptor, but I think it's more a description of the ecosystem in which these apps evolved and whose culture they represent.


I see, thanks for explaining


Also most (all?) of these apps use xlib directly, rather than going through a toolkit like Gtk or Qt.


There are a lot of toolkits besides GTK and QT: XT, Motif, Xaw(3d), xforms, xview, wxwidgets.


A lot of these are built against Xlib directly, or X11-only toolkits such as Motif. Porting them to other window systems would require significant rewrites.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: