this post was submitted on 13 Oct 2023
129 points (91.1% liked)
Selfhosted
59897 readers
833 users here now
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam.
-
Posts here are to be centered around self-hosting. Please ensure it is clear in your post how it relates to self-hosting.
-
Don't duplicate the full text of your blog or git here. Just post the link for folks to click.
-
Submission headline should match the article title.
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I prefer the KeePassXC fork as it's written in C++ and not C# so it has better native integration with OSes like Linux, but yeah these are really good solutions with no subscription requirements or necessity to upload to any cloud service.
Not sure what you mean by this. Any APIs that can be called from C++ can also be called from C#. C# apps run natively on Linux, and they support self-contained deployment and native AOT (ahead of time) compilation meaning they can run on any Linux system even if it doesn't have the .NET Core framework installed.
This thread is about KeePass and my comments relate to that. If you pull KeePass2 from the repos in Debian, for example, it's going to pull the Mono runtime to execute it as well because it's been built, like most C# apps, for JIT compilation. I doubt it's even possible to compile KeePass2 using AOT compilation.
This is what the C# KeePass application looks like using the Mono runtime in Debian:
This is KeePassXC:
You can see which has better native integration into the desktop out of the box.
.NET Core handles JIT compilation file. It looks like the KeePass developers have not yet updated it to use .NET Core though, which is why it's pulling Mono in.
KeePassXC definitely looks nicer, but it's definitely possible to do that with C# too. The KeePass developers just haven't kept up with modern .NET.