Live data from Hacker News

Make Apps for Linux

makealinux.app

301–310 of 422 posts

Re: Make Apps for Linux

#301

Earlier quoted context omitted.

> Abi stability is when any app can be compiled off any release and run on any future release (and ideally older releases too). Hang on, if that's the standard why is MacOS getting a pass? I'd believe that Windows meets that bar, but I see posts on a routine enough basis about Apple forcing rewrites, unless I really misunderstood something there.

Apple's actually quite good at this, but they do break things on purpose from time to time for reasons which they announce pretty publicly at WWDC when they do (32->64bit, deprecating GL, etc). So, for example a dev can target an app at iOS 8 and it still works fine on iOS 17. Thats almost a decade of OS updates that didn't affect an app. Here's an example: https://apps.apple.com/us/app/bebot-robot-synth/id300309944

Similarly, it’s possible to compile a Mac app that targets PowerPC, x86, and ARM supporting all of the versions of macOS implied by that spread of CPUs.

X Lossless Decoder[0] is one such app, supporting all three archs and Mac OS X 10.4 up through macOS 14.x (current) in a single binary. It’ll work just as well on that circa 2000 400Mhz G3 iMac you picked up from a local yard sale as it will on a brand new M3 Pro MBP.

[0]: https://tmkk.undo.jp/xld/index_e.html

Re: Make Apps for Linux

#302

Earlier quoted context omitted.

It really is mindblowing that Windows 11 is still capable of running 32-bit programs written for Windows 95 , that's 28~29 years of backwards compatibility and environmental stability. If we look back to programs written for Windows NT 3.1, released in 1993 , and assume they run on Windows 11 (because why not?) then that's 30 years of backwards compatibility. Did I say mindblowing? It's downright mythological what Mi…

> It's downright mythological what Microsoft achieves and continues to do. This seems like it was meant in a positive way, but I really don't think that if compatibility with your system requires "mythological" efforts, that should be seen as a good thing for your system. It's also worth noting that backwards ABI compatibility only masters when people limit their software by not distributing the source. Early UNIX so…

> It's also worth noting that backwards ABI compatibility only masters when people limit their software by not distributing the source. Early UNIX software can run fine on modern GNU by just compiling it.

Have you ever tried building decades old programs from source? It's not as easy as you claim.

Here's source for grep from v6 unix. I'd be interested to know the smallest set of changes (or flags to gcc) needed to get it to compile under gcc on linux and work.

https://github.com/takahiro-itazuri/unix-v6/blob/0316b457acb...

Re: Make Apps for Linux

#303

There's a lot of complaints that there isn't much in the way of tooling to create cross-OS compatible apps but I disagree. Just looking at solutions which aren't Electron: - Telegram uses Qt and ships a performant native app across all three OSes - Flutter compiles down to native code across all three (and mobile) - Kirigami is a QtQuick framework that will give you an executable app across all mobile and desktop tar…

While the Qt Telegram app runs fine on macOS, most Apple users opt the Swift/Cocoa client for macOS and iOS[0].

[0]: https://github.com/overtake/TelegramSwift

Re: Make Apps for Linux

#305

Earlier quoted context omitted.

Why is it terrible? Asking for real.

It's got more security holes than Swiss cheese.

You're living in the past. Applets and Flash lost against the HTML/JS/CSS stack and Oracle owned up to it. Applets are terminally deprecated now.

Edit: admittedly, one of the reasons for that was that the sandbox was indeed prone to security holes. Also, the developer ergonomy of the SecurityManager was unsatisfying for both JDK and app developers. Good riddance.

Re: Make Apps for Linux

#306

Earlier quoted context omitted.

On other platforms people don't even try to support anything but one "distro". You could make an AppImage or snap that would work across pretty much any mainstream non-hobbist-oriented distro, and Snap/AppImages is pretty much the Linux equivalent of EXE. Raspberry Pi OS just moved to NetworkManager and they have PipeWire, which was the last reason I had to deal with less common software stacks, so it seems like stuf…

+1 AppImages. And the beauty is you can make them portable by creating a folder with the same name as the AppImage and append .home to the end, and boom: portable software. For example image-editor.AppImage image-editor.AppImage.home (folder, all settings are stored there)

Actually, I don't think I've tried AppImage. Does it do static linking or does it do something more similar to flatpak?

Re: Make Apps for Linux

#307

Earlier quoted context omitted.

I'm a big believer in open source software. I've had wonderful contributors and I'm using qutie a few open source libraries/components in my own apps. That's why I open sourced my own app. I've tried many different options so I could make a living with it (ads, donations, premium features). There are definitely more ways to explore. But for now, I need to ensure that my financial situation is stable before anything e…

It's great that you generally believe in FOSS. You deserve to profit from your work. I wouldn't be opposed to paying (the app looks interesting). But I'd definitely want the security that, should you abandon the project, someone will be able to perform some maintenance. This is why I'm fairly okay with releasing the code late or licensed as "FOSS if unmaintained". Ardour's model of charging for binaries doesn't seem…

Well, your data will always be just plaintext. So you'll be safe whatever happens.

> This is why I'm fairly okay with releasing the code late or licensed as "FOSS if unmaintained"

That seems reasonable.

Re: Make Apps for Linux

#308
post #260

Earlier quoted context omitted.

If you learn how to separate your logic in C++ and your views (GUI) in QML you can achieve the best of both worlds. C++ is fast and I love programming with it. QML is easy and powerful you can create slick looking apps with it with beautiful (and easy!) animations. I bought the Udemy course of Bryan[1] and learned QML in one day. The next day I already had a prototype for a Kanban[2] that is based on Markdown. [1] ht…

That second link is the the sort of thing I wish I saw more being pushed as an example of QT. Looks great!

Thanks! I know, it's totally possible to create beautiful apps using Qt. The problems are:

1. Most people in OSS don't care about UX and aesthetics (most of the people using Qt) 2. The Qt Company's examples are absolutely ugly (with the exception of one). If that's what you show developers they would either not believe it's possible to create beautiful apps with it or that it's too hard.

Re: Make Apps for Linux

#309

Earlier quoted context omitted.

I appreciate your opinion. Notes has been quite a success for me. With over 1,300,000 downloads[1], and being featured in awesome tech websites[2]. Just on Ubuntu alone there are 7000 weekly active users (that have downloaded it from the Ubuntu Store). My new app Plume is going to be a big improvement over Notes. First, your data is and will always be as simple as Markdown/plaintext. My new block editor is based comp…

Well dang! I didn't realize it was that big. That is impressive and definitely changes my opinion a bit. It's quite unfortunate to have such low paid numbers with that many downloads. By logseq's on-disk format, it is local first but it's a stricter subset of markdown with a handful of extensions. The strictness is because Logseq parses all the markdown into an in-memory graph database, and in order to make that work…

Thanks! With Plume I use a tree data structure (just with parent child relationships), although in the future I would probably use Boost::ptree.

The things is, the underlying data structure is just plaintext, so having an ID for each block will make the plaintext look out of place (say, if you wanna move your files to another app).

But I'll add some special syntax to allow this feature for specialized blocks.

Re: Make Apps for Linux

#310
post #272

Earlier quoted context omitted.

No need to be sorry, really. I'm just learning how to navigate this world. I've been pretty lucky so far. Notes is one of the top results in Google (for the keyword "notes"). So I get a lot of traffic and a nice passive income. But it's not something I can fully live on (plus it's unstable and I hate serving ads).

Hosting?

What do you mean by hosting?
Post reply on HN