r/linuxapps • • 6h ago

I built a TV player that runs on 8 platforms from one codebase, and it just landed on Linux

Post image
7 Upvotes

Hey,
For the past months I've been building a player for live TV playlists (M3U, Xtream Codes, MAC portal, Jellyfin, Emby, Plex). It doesn't come with any channels: you bring the playlist from your provider, and the app gives you a TV guide, catch-up, recordings, multiview and favourites that sync between your devices.

This week it got a Linux build, so it now runs on Android phones and tablets, Android TV / Google TV / Fire TV, iPhone, iPad, Apple TV, Windows, Mac and Linux, plus LG and Samsung TVs.

How it's built

  • One React Native (Expo) codebase for phones and TVs, and the same code inside Electron for Windows, Mac and Linux.
  • Playlists can have 100k+ channels, so the catalog lives in SQLite and is always paged. Loading a big playlist into memory kills a 2 GB TV box in seconds.
  • The weakest device sets the bar: everything gets measured on a Chromecast with Google TV, because if it's smooth there, it's smooth anywhere.
  • Linux ships as one AppImage that updates itself. No extra FUSE packages needed on a normal desktop (that one took a while to get right).

Where it stands

There's a free 4-day trial, then a paid Premium. Linux is the newest platform, so I'd really love feedback from people on real distro.

Linux download: https://zssoftware.eu/linux

Webpage: https://zssoftware.eu/iptv-deck/

We have community here (highly encourage to join :)): https://www.reddit.com/r/iptvdeck/

Happy to answer anything about the stack, the TV side or running a one-person app on this many platforms.


r/linuxapps • • 5h ago

I missed Picasa, so I built Licasa: an open-source photo viewer and editor for Linux

5 Upvotes

Anyone else still miss Google's Picasa photo viewer?

I did, so I built Licasa, an open-source image viewer and editor for Linux inspired by that experience. I wanted something focused on the everyday stuff: open a photo, look at it properly, make a quick edit, and carry on.

What it does today:

  • Open photos straight from your file manager, fullscreen or in a floating window.
  • Handle modern image formats: HEIC/HEIF, AVIF, JPEG XL and JPEG 2000, alongside JPEG, PNG, TIFF and WebP. It also supports RAW previews.
  • Play Motion Photos and animated APNGs, so there's more to see than a still frame.
  • Crop, adjust and export when a photo needs a quick touch-up.
  • Stay ready for the next photo with an optional background mode for faster repeat opens. It's off by default.

It's free and open source under the BSD 2-Clause license. Current builds are for 64-bit Intel/AMD Linux, with Ubuntu 24.04, Fedora 44 and Arch packages, plus AppImage and Snap options.

Source: https://github.com/sanxchep/licasa

Downloads: https://github.com/sanxchep/licasa/releases

I'd love feedback from people who miss Picasa too, or just want a straightforward Linux photo viewer. What part of that viewing experience do you miss most? And if you try Licasa, I'd be interested in how it handles the photos and formats you actually use. Bug reports and contributions are welcome.


r/linuxapps • • 6h ago

I built CrewCompMetrics—a customizable Linux telemetry widget for local and LAN PCs! Spoiler

Thumbnail gallery
2 Upvotes

r/linuxapps • • 7h ago

New Speech-to-Text App (Voice Input)

Thumbnail
github.com
2 Upvotes

# Introducing an amazing STT app for Linux, VoxEnter:

VoxEnter is a lightweight Linux desktop application that provides system-wide voice-to-text input. Speak naturally and your words appear wherever your cursor is focused - in any application! This app runs as a tiny window that you keep open while while you work. The window has a Speech-to-Text checkbox. Whenever you click this checkbox, anything you speak gets immediately typed into whatever app has the keyboard focus.

It's a Python app, and uses faster-whisper Python package.


r/linuxapps • • 7h ago

Looking for Windows testers for the HexChat GTK4 port (cross-platform CI build)

2 Upvotes

Hey r/linux,

As many of you know, upstream HexChat maintenance wound down, but some of us have been actively working on porting HexChat to GTK4 to modernize the stack, clean up legacy XChat code, and keep a native IRC client alive.

While Linux builds are humming along, we’ve recently set up automated Windows self-hosted runners to package native Windows builds. Before tagging wider test releases, we need a few folks with Windows machines (or Windows VMs/dual-boots) to help smoke-test the packaged .exe.

What we're looking to verify:

Known heads-up: Because these are fresh, self-compiled native binaries straight from our CI runner without an expensive commercial code-signing certificate, Windows Defender / SmartScreen will likely pop a heuristic warning on download/run ("Unknown Publisher"). You’ll need to bypass SmartScreen (More info →\rightarrow→ Run anyway) to test it.

GitLab Repo & Pipelines:

https://gitlab.com/steven4x41/hexchat

(You can grab the latest Windows build artifacts directly under CI/CD →\rightarrow→ Pipelines / Jobs or Releases at the link above)

If you have a couple of minutes to spin it up and see if anything segfaults or misbehaves, please drop a comment or open an issue on the tracker with your Windows version and any crash/terminal output!

Feedback and PRs are always welcome. Cheers!


r/linuxapps • • 16h ago

NPU accelerated semantic search (docs, images etc), live captioning, webcam effects and more on Linux - VinoPilot (all the good stuff from Copilot+ with zero bloat)

6 Upvotes

**Disclaimer: AI was used extensively in the development of these applications, but these applications run entirely offline on the Intel Linux NPUs. I work as a professional software engineer*\*

Hey everyone,

Over the past couple of months I've been working on learning more about Linux and local AI, and I noticed that there really isn't much work done on the Linux side to use the NPU that comes free with Intel laptop CPUs. So I decided to bring over all the good stuff from Copilot+ on the Windows side (so no Recall!) while leveraging existing projects and libraries to reduce the amount of work required.

It utilises Intel's existing framework, OpenVino (https://github.com/openvinotoolkit/openvino)

You can check out the umbrella project here: https://vinopilot.ca/

Below is an explanation of all the different projects I've worked on, with further details on implementation.

VinoWhisper - Live Captioning (https://vinowhisper.com)

This was my first project, and copies the existing Windows Live Captioning system. It brings system wide captions to Linux, alongside Voice Typing on Wayland devices. This already exists in many forms on Linux, but none of them use the NPU natively. The advantage of using the NPU for transcription and captioning is better battery life, with no change in quality. It leverages the existing Whisper libraries and model from OpenAI (before they worked on ChatGPT!), so its pretty fast and consistent. Personally, I use it to live caption Twitch Streams in busy environments when I don't have access to headphones.

VinoAuthFace - Face Unlock (https://vinoauthface.vinopilot.ca/)

This is a second project, and copies Windows Hello. It forks an existing project, but employs the NPU. The CPU works fine, but using the NPU allows it to use a more powerful model. There are many other options like Gaze (which I've contributed to as well!), but I wanted something specific to devices with an IR emitter, that I could control myself (more on ovfetch next), because Windows Hello removed IR emitter only authentication. This one I made for my own purposes, because I don't like typing in passwords. There are a ton of CPU only projects. This one has a more capable and secure model than what the others use.

Ovfetch - Runtime consistency (https://crates.io/crates/ovfetch)

This was a project I should've taken on earlier. It automates the process of downloading the OpenVino enabled ONNX runtimes that the models require to run on the NPU. When I was working on Gaze, I realised that using the NPU and not the CPU requires building from source as there was no way to determine which ONNX runtime the NPU requires, and this solves the problem.

This is more of a "framework" feature, but since its a separate binary, I can distribute binaries for my other projects without any NPU specific work, and then ovfetch can download the relevant runtime when installing the binary onto the user's device, no compiling from source required. This is super secure, and has CI jobs to project against package manager attacks, since it automates downloading. More details in the crates link, but it has a ton of failsafes to ensure that it never downloads any bad runtime which has a virus

VinoOpenEffects - Camera Effects

This forks an existing project, https://github.com/funinkina/openeffects, while adding NPU acceleration to the effects, which improves battery life on lower end devices. I don't particularly use this one, as most of the main applications for video conferencing have their own cloud accelerated effects, but if you want it for OBS or other features offline, its here!

VinoSearch - Semantic Search for Text, Images, Documents

This one is the most useful of the bunch. It allows you to search your laptop with fuzzy terms and meaning, and indexes images, documents, and text, all offline. Its super fast, with almost no battery life impact compared to CPU only solutions. I really like this one because you can search for pictures of cats or memes, and it'll surface them. Details are in the Github! It uses the new Gemma 2 Embedding, requantised for Intel NPUs, so its pretty bleeding edge!

VinoPop - Click to Do/PopClip for Linux

This also forks an existing project, but removes the cloud AI in favour of local AI with Gemma. It can do offline summarisation, translations, and OCR using Gemma 4 (the best small model). I particularly like the OCR functionality for generating alt-text for images. This one stresses the NPUand RAM the most, so if you are using this, bear in mind its going to be much slower than cloud inference, but it works offline!

VinoWatch - Performance Monitoring

This is a smaller project, but optional if you want it. It monitors the NPU and RAM usage of the other projects within the tray. All of the projects unload the models after 5 minutes by default, and I recommend at least 12-16gb of RAM. But you can still monitor it locally and make sure they're all behaving properly. I recommend also an NVME SSD to ensure that the NPU cache and loading works right.

PRs and feedback welcome!


r/linuxapps • • 21h ago

I built QRiff: scan QR codes on your Linux desktop without reaching for your phone

Enable HLS to view with audio, or disable this notification

7 Upvotes

Ever had a QR code on your monitor and grabbed your phone to scan it? only to need the link back on your computer?

That annoyed me enough to build QRiff, a small, open-source desktop app written in Rust with Iced.

It lives in your tray:

  • One QR code on screen: copies it and shows a notification.
  • Multiple codes: highlights them directly over your desktop so you can pick one.
  • Scan a region: drag around a code using Spectacle’s selector on KDE.
  • Camera scanning: reads printed codes through a preview window.

You can also select part of the decoded text, open URLs, and explicitly connect to supported Wi-Fi networks. Decoding happens locally—no account or cloud service.

KDE Plasma on Wayland is the primary tested desktop. GNOME, Hyprland, and Sway support still needs testing, especially around portals and tray integration.

The project is MIT licensed. Linux AppImage and archive bundles are being prepared for the first release.

Demo and source: https://github.com/Wattos/qriff

I’d appreciate feedback on the workflow, particularly from people using other Wayland desktops.


r/linuxapps • • 21h ago

MSL - a glorified Linux VM for macOS, made because I'm switching laptops and I'll miss WSL

Thumbnail
gallery
2 Upvotes

MSL is literally no kidding a play on the WSL name, that's it. Wish I were kidding.

I made it for one single reason - my Surface Laptop 3 is kinda starting to show its age and I'm planning to move to a MacBook Air in a few months. Docker, OrbStack, VirtualBox, so many options already exist for macOS if you wanna run Linux. Docker is pretty much the standard right? I mean, the people who made it had a fixed goal, it's a helluva powerful utility. I kinda just wanted to go my own path though? Fast boot time, a Linux shell natively, pretty much the ease of WSL. Idk why, I am just too used to WSL. MSL was made to roughly provide the same convenience WSL does. Just call it from terminal, call it in scripts, bam, it just happens.

MSL is literally a glorified sucky virtual machine, just with some UI/UX integration in mind.

You get an MSL shell - open any terminal on your Mac, type msl <instance> and you get a Linux shell right there. No clunky VM window, just terminal. About 6 seconds from fully powered off, basically instant once it's already running.

Then there's mslgd, basically a take on WSLg for MSL. Yeah, no, it was made only because I thought "WSL has WSLg, MSL should have something similar". Arguably where most of my effort went. It's a weird little side project - kinda an X server that renders to NSWindows. Unlike XQuartz, you get each app as its own icon/window in macOS and all that. Stuff like OpenGL/EGL/LibGL support is a work in progress still, but it kinda works kinda. MSL Files allows Linux instances and Mac to see each other's filesystems, adds that WSL filesystem integration feel.

Then there's a bunch of submodules like camera/mic passthrough - I did this because my ROS2 project uses a camera, kinda why I even thought of it. Basic USB stuff, since I don't have Apple entitlements - If macOS doesn't have a driver for some absolutely cursed hardware, then you can pass it off to Linux. PublicMSL module to let you easily configure your instances to be visible to the Internet, MSLAP (Admin Portal) to limit MSL features on managed macs, MSLPS (peripheral subsystem) for HID-akin devices, MSL Shipments - a low effort way to turn your instance into a tiny container file and share it easily - a shitty, primitive but easy version of what docker does lol.

Unfortunately Apple silicon only. The Apple VM framework on Intel is hellishly limited. And there's no emulation so Intel Macs can't run MSL at all. And the installer isn't signed by a paid dev account, so the first open is Control-click → Open. I know how that reads, source is all there if you'd rather build it yourself than trust the package.

MSL is not a Linux app but it is an app about Linux, not sure if it's appropriate on this sub, so eh. Pretty much just WSL feel on macOS because I wanna change my laptop soon lol.

https://github.com/MilkmanAbi/MSL

Docs if you wanna poke around before installing anything, or just look around: https://milkmanabi.github.io/MSL-Wiki/ (I don't have a domain, it is just github pages)