This is an automated archive made by the Lemmit Bot.

The original was posted on /r/linux by /u/Own_Canary7141 on 2026-03-27 22:26:04+00:00.


So I’ve been using waypaper for changing my wallpaper. But I wanted to switch to a more TUI environment for my desktop and have been looking for some alternative but could never find one. So I decided to build it myself with Rust using the ratatui library. And I wanted it done as soon as possible. Never really dabbled into different kinds of features such as a wallpaper backend selector with its features, sorting, and other stuff that wallpaper has.

So basically I coded everything at first into 1 file. Not really thinking too much about the file structure and how it will become maintainable. Really just wanting it done and ready for use. Once everything was well and working, the polishing followed. I tried my best polishing my file structure and separated some files into their own respective files, mainly for maintainability if ever I do decide to come back to this project. But most of those refinements were done by AI. This project only took me around 12 hours, with 1 hour or probably even less of refinement, all thanks to what now we call a tool that might at some point replace us. I even had the AI generate most unnecessary files, such as the README.md and all of the GitHub actions. Not to mention the test cases that I don’t really bother writing, so let the AI handle it.

Anyway, this was also my first attempt at ratatui, reading the documentation and trying to find necessary widgets. This is all I can do. I’m not even sure if I handled the widgets properly or not. I kept looking for a list/table kind of widget but in 3 columns. Never really tried enough to look for that kind of library. So I just stuck with Block.

That said, this project was mainly about building something useful for myself, learning ratatui, and getting it working fast enough that I’d actually use it. Not like I will change my wallpaper that often. It may not be the cleanest or most thoughtfully engineered project I’ve made, but it works, and I had fun making it. If nothing else, it gave me a TUI wallpaper picker I couldn’t find elsewhere on Google and a decent excuse to experiment with Ratatui.

  • casual_corey
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    14 hours ago

    Nice to see someone working on a TUI wallpaper picker! I’ve used DestinEcarma’s paper-tui in the past, seems like you’re tackling some of the same issues I had back then. Have you considered reaching out to the original author for help or insight?

    • serial_tinkerer_sim
      link
      fedilink
      arrow-up
      2
      ·
      12 hours ago

      Yeah, I checked out DestinEcarma’s work and it was solid, but I’m trying to keep this lightweight and strictly local without the heavy dependencies of a full terminal app. I’ll probably reach out to him eventually, but I’m stuck in the middle of fixing my own config parser first so I can just ship something quick.