Nix Software - a website for convenient package search

Hello everyone, I’ve created a Nix Software. The main feature is that packages now have logos, screenshots, categories, and descriptions with markdown support, which can be translated into different languages. All of this is configurable through the admin panel. There’s also filtering functionality. I plan to provide a nice REST API for everyone, and if needed, an .xml file with package information. My goal is to make package management user-friendly for everyone. I’m happy to answer any questions you have.

There is a problem with full-text search: at the moment, the server is too weak.


The website has the opportunity to offer data and translations for the package.
Frontend - https://codeberg.org/Zellrus/web-nix-software-frontend
Backend - https://codeberg.org/Zellrus/nixos-web-software
API Documentation: https://api.nixsoftware.voxelworld.ru/api/documentation/
Nix Software - https://nixsoftware.voxelworld.ru

11 Likes

Hi everyone, straight to the point!
The site has moved to a new domain: https://nixsoftware.org
More than a thousand entries with package metadata have been imported into the website.

Integration with the Weblate translation service has been added. The site now supports more than 50 languages, but help with translations is needed. At the moment, the website is fully translated into English, Spanish, Russian, and Arabic.

Smart search powered by Meilisearch has been added. Now it’s possible to search in different languages and even with typos. You can also search for more abstract terms like “music” or “browser”.

Improved layout and responsiveness.
I’m happy to answer any questions you may have!

You should add a <noscript> banner as I tried to click around & nothing worked when I landed. There’s a massive list of languages in the picker, but most of them aren’t supported—so is there a way to reduce the list if there is no translations?

Why using Docker instead of Nix? :sweat_smile:

Also, thanks for using a non-proprietary, non-US-based forge for your hosting <3

Thanks for the remark — you’re right, it would make sense to leave a warning that the site doesn’t work without JavaScript.

Regarding translations: even if the site interface itself isn’t fully translated into a particular language yet, some packages may already have metadata translated into that language.

As for Docker: I already have a template that I reuse from project to project, and in this case I decided not to break with tradition. Feel free to open a PR if you’d like :slightly_smiling_face:

I don’t speak English, so I’m using AI to help with translation. Sorry for any mistakes.

1 Like

looks a bit like a web version of that gnome-based nix-software-center.

i guess the categories may not do too much since RFC 140 (packages by name), tho hopefully the categorization team will help alleviate that at some point…

If you’re referring to the UI, I was inspired by Flathub.

Maybe nix-software-center and I share similar goals.

1 Like

Is there flake search in the roadmap?

Recently I was looking for a vpn package. I used search.nixos.org to quickly check the menu and I overlooked flake tabs.
I decided to create my own nixos service. Later I asked my self how to share the flake I created and I found vpn package on the flake tab :frowning: !!!

even this nixos-search one just makes for a web front-end to nixos-search/flakes/manual.toml at 7b3ccd86f8bb0dd7fb4cce1e33dcbcda60df0c4d · NixOS/nixos-search · GitHub - you might as well put nix plus the name of your package into your search engine, with where we’re at now

1 Like

How to navigate in that toml file? It is not flat - many dependencies kinda repositories by itself. Links are not clickable right away. So if a flake link doesn’t fit top list then how to choose between sub-repositories?

Nice UI. One small feedback: Exact matches can be moved to the top (a.k.a. search for “yazi”). Also -unwrapped packages might be embedded into the same result.

1 Like

This is really cool. I think this will really help getting Nix known in the bigger public. :rocket:

1 Like

And good to have all parts in codeberg so everyone can submit PR’s.

It does fetch and index the metadata for all the flakes listed there. The quality of general-purpose search engines has been steadily degrading, I think we need a mix of search engines and these kinds of lightly-curated lists/registries…

You might want to create easy to find buttons to contribute and to submit issues. For issues I would create a central place and not devided in the frontend and the backend projects.