Hello! My first time posting in the forum so forgive me if I wrote anything in the wrong way.
About half a year ago, I put heavy effort into creating a font browser application for KDE Plasma that let’s you browse fonts from Google Fonts, install them locally on your user, save them to a directory and manage them. Below you can find a screenshot (can only embed one screenshot since I’m a new user):
One note I should mention. It doesn’t quite use the traditional KDE application stack. It still uses Qt and QML but it’s entirely written in Rust with no C++ involved. You can take a look at the Github repo and code for more info:
The initial reason I left this project was packaging. I’ve been using linux for a few years but I’ve never packaged an application I wrote. I find it incredibly hard and confusing, none of the packaging system are easy to understand and actually package to. You can find my efforts to get a working AppImage in the gh repo, it works but not properly and is kinda messed up on non-KDE systems.
If anybody experienced with packaging applications to AppImage and Flatpak can help me, I would be more than happy to release this app under the KDE umbrella (or as a separate project if it’s not accepted). It’s far from perfect currently, has minor bugs and lacks any kind of i18n but I am willing to work on those issues and maintain it (if I can actually package it, as I mentioned).
And if you want to try app for yourself, just clone the repo and run cargo run (assuming you have Rust and Cargo installed on your system). Any kind of test feedback is also welcome!
Looks really cool! I could see this being a good replacement for KFontView someday. That software is quite dated with scary code, and I’ve always though it would have made more sense as a standalone app than a System Settings page,
One UI suggestion: embed the search field in the toolbar. If that toolbar “Search” button is living on a Kirigami.ActionToolBar, then you can set its displayComponent: to be a Kirigami.SearchField and it will appear inline, rather than as a button. The KNewStuff dialog uses this trick.
Would really appreciate the help! Just moved it to KDE Invent from Github, also added a simple flatpak manifest, metainfo file and desktop file:
Another thing about the flatpak build, seems like Cargo isn’t usually used alone for building Rust applications into a flatpak. I think a CMake or meson build file needs to be written.
The main obstacle to adopt QML in a local font browser is a font can have variants, and QML font engine is still too weak to show all of them. One has to face the ancient bizarre freetype interface when dealing with local fonts.
I’m not very experienced with font formats but yeah I can see how that could be a problem for local font support. And some other things that QML doesn’t seem to support (which Google Fonts provides support and fonts for) seems to be variable fonts and colored fonts (although I don’t think Qt Widgets supports them either but I may be wrong).