Thanks, now I will try to make an easy-to-use script to wrap this tool up.
I have produced a very primitive version of this install script called nixos-inserter
.
I donât think itâs ready to use thoughâŚ
I wish the community too would be a stakeholder of NixOS adoption also. (I do not say you were not thinking of that, but I think itâs important to repeat it on public forums.)
Anyway, I think a beginner NixOS module is probably a good idea.
I actually think this is nearly the opposite of the truth. It may be the first thing they encounter, but itâs not the most important thing they need. Before a graphical installer is useful, you have to have a graphically manageable OS, and we just donât.
I think this is a common misconception people have about âgrowthâ. What you need is not growth. What you need is the tools to support the growth that you want. Only once you have that can you focus on achieving that growth. If you get it backwards, youâre always going to be on the backfoot trying to keep up with âgrowthâ.
what is it for? I cannot do anything without login?
(btw: it isnât up to date, right?)
I mainly use MyNixOS to search for packages from nixpkgs and options of NixOS, home-manager and nix-darwin, and for that alone itâs very convenient.
Havenât used any of the generation features yet, but they seem quite convenient.
Updated with version v0.1.28 now, including a feature to add arbitrary settings to flake outputs.
Without logging in you can browse content on the website, but to create flakes you need to log in.
Example user flake config: MyNixOS
The goal of the site is to make it easy to create Nix flakes (especially for beginners) by providing a structured UI to browse and use options and packages. Definitely a work-in-progress, but some people are finding it helpful. The videos on the front page should make it clear how you can use the website (they do look a bit dated since the interface has been updated after the videos were made ).
I do wonder what the numbers look like with regard to âaccidentalâ MBR installs versus true legacy hardwareâŚ
Somewhat counterintuitively that might end up resulting in a better overall UXâŚ
Well, how hard can running nix-collect-garbage
get?
When youâre a newbie, itâs extremely difficult. This, along with poor fs options during freshinstall (btrfs, f2fs, xfs, etc.), make nixos a painful experience. Furthermore, when the user is presented with almost no system core basics preconfigured or enabled (printer configuration, bt, etc.), the system feels rushed and unfinished. Why should a new user put up with the heavy overhead when you can install a maintained distro like mint, fedora, or even deb 12 that includes all of the basic functional services, printer setup and folders, and so on?
Its current configuration will and does turn off new users, particularly with the ridiculous number of rebuild switches that occur when you experiment with it for the first few times.
So in regards to your tastless comment
" Well, how hard can running
nix-collect-garbage
get?"
does not help new users spread the word to trial out nixos
I can see where youâre coming from.
I bought a refurbished PC, with Windows 10 Pro preinstalled. I had a go at Hyper-V. Success with Haiku and Mint ISOs, but NixOS didnât work.
I then installed NixOS on the computer, with the Cinnamon desktop. This didnât work properly out of the box. When new software was installed, it didnât end up under the Start menu. I will have to fix this - I think itâs because the place where NixOS places things is different to where Mint places things, and so the desktop doesnât pick this up.
NixOS is not for people who have never worked with Linux before. It is for people who become more motivated where the number of problems increases. I have used Linux before, and Unix before that, but I have a frustration threshold, and so we will have to see how it works out.
The only reason why im sticking it out with nixos is that its the only distro ive come across where wps dosnt crash when i open up docs or spreadsheets from remote servers. Libre office doesnât crash either but i simply loath LO . If wps didnt crash when opening up docs from remote locations (servers) i would most definitely leave nixos as theres just too many overheads to get it up and running especially the garbage it accumulates through rebuilds. I have to also note its most definitely not a reproducible platform as they claim on ad hoc pcâs. Yes this is true when 99% of your infrastructure is identical then yes.
Have you tried Nix-on-Debian or something? Nix works well as a non-system package manager, a lot of applications installed from Nixpkgs just work acceptably (many GUI apps included), NixGL works around some typical failures of OpenGL-needing GUI applications form Nixpkgs on non-NixOS.
It sounds like a slightly more annoying installation of WPS using Nix and Nixpkgs on non-NixOS could be worth the option to manage the rest of the system in a way you prefer and removing a lot of frustration thereâŚ
(If there are issues requiring help to figure out, though, I guess WPSOffice-specific discussion would need another thread)
It is really not about reproducing the state of hardware adjustments on another hardware. The claim is being able to roll back and forward on the same hardware, and reproduce hardware-unrelated parts of the config (e.g. which office suite is installed) on top of a different set of hardware adaptations on another piece of hardware. Both are quite useful for some approaches to using Nix (but yeah, itâs solving problems many people usually do not have).
While thatâs the aim of a lot of users, @tolgaerok is correct in stating that NixOS by itself is not sufficient for that.
Either way, the claim to reproducibility applies to package builds, not configuration, which nix does ensure, with clearly defined limits.
I donât think there is much of a claim to reproducibility at a configuration level, though you can get far with careful attention, and perhaps an erase-your-darlings-alike setup. Which I can accept is âtoo much overheadâ for some, given you actually need to understand a lot of the software you use as well as the nix ecosystem, and even then it will be practically impossible in places (have fun trying to do declarative config for your steam gamesâŚ).
The claim for configuration is declarative deployment, which yes, NixOS does offer. Too many applications have stateful configuration to ensure reproducibility, though.
The full NixOS experience is definitely for the more masochistically inclined. Still, I donât think the distro, if used more casually, is quite that complex, and certainly not much harder to use for your average programmer than say arch or gentoo. And it still buys you quite a bit more robustness than either of those, as well as far more convenient maintenance once youâve figured out nix properly. Itâs just not the distro for you if you want to click in a GUI to install applications (and Iâd argue neither are arch or gentoo).
Excellent thought. installed nix on Debian 12 and WPS Office. Now, where did it go?
The writer opens when I type WPS in the terminal, which is good, but how do I access spreadsheets and add shortcuts from the nix installed packages to the desktop/icons-only task manager (kde)?
Well, Iâm starting to find using the entire nix-os and nix packages for non-nixos to be a huge pain, and Iâm seriously wondering if the projectâs underlying idealogy is even worth the hassles!
I believe it has 4 comands: wps
, wpp
(Presentations), et
(Spreadsheets), wpspdf
(PDF viewer)
which wps
shows it is found in ~/.nix-profile/bin
, right? If so, I would try ln -s ~/.nix-profile/share/applications/wps-office-*.desktop ~/.local/share/applications/
(if there is no target directory, create it). Possibly this requires restarting Plasma to have effect. Hopefully when you update WPS Office the shortcut file names donât change so the things will continue workingâŚ
Thank you for the feedback. I must admit, guessing the application iconsâ location is not acceptable in modern times. Additionally, running the spreadsheet application âetâ either from the command or via the bin file resulted in freezing upon saving and then closing after a 30-second wait.
I appreciate your help and feedback on this matter. After careful consideration, I have decided not to continue with Nix packaging on a non-NixOS systems. Instead, I will exclusively use NixOS, as it allows for normal icon locations, among other benefits.
Overall, I have chosen to step back from Nix and NixOS, as it can be challenging to hunt down code snippets or enable basic operational services in the configuration.nix to use the system like a normal distribution. In my personal opinion, NixOS needs significant improvement to be more user-friendly and appealing to new users.
It proves a point Solene. Better to try than not. (âprobablyâ instead of âmayâ, fyi).
As a struggling neophyte, I am all for the installer.
Really people need to understand that Nixos is not like :-
leaving Windows = moving house
changing distro = redecorating the house
but rather more like building your own house.
As Tlater says: expect a year or so to know the ropes.
(And better if you enjoy bricolage)
The learning tools are not really aimed at people who come under the threshold of the prerequisite skills, (e.g. me).
Fortunately this is being addressed by one or two proactive people - writing books for us, (e.g. Drake Rossman) - but apart from better instruction, the main thing is not to view Nixos like
a standard distro geared towards ergonomics, but more like a fun learning journey/project. (If one finds Arch fun, I am sure one would find Nixos much more fun )
I will speak from a new userâs perspective - NixOS is very hard to learn for all the wrong reasons. Its not the Nix language itself - itâs actually very easy for anyone whoâs done any bit of programming before. The problem stems from lack of any resources and directions to learn how to configure Nix properly. Having been used to the Arch Wiki, the NixOS documentation is⌠lackluster, to say the least. You know something is wrong when the articleâs author asks for an explanation why something behaves the way it does. The tutorials donât guide the users on how to actually learn how to configure Nix by yourself.
For example, one of the very first things you learn when using Emacs are the M-x describe-variable
and M-x describe-function
commands. Python has its help() function. NixOS should also have something like this, right? I knew what I was looking for, yet I couldnât find it even after searching for nearly half an hour. Finally, I found the nixos-option
command. Sometimes it works, and sometimes it segfaults. That may be because itâs meant to be replaced by the new nix
command. The problem is, the nix
command is unstable. It doesnât matter that itâs more stable than the old command set, the API itself is unstable. Because of this, the documentation about it is lacking (thereâs no mention of it on the NixOS docs, only on the Nix ones). Yet itâs being recommended to new users as the new, âproperâ way to configure your whole NixOS system. Even when we get over the unstable thing, the nix
command is even more unfriendly. You learn what options are available by⌠tabbing. Yes, by tabbing a lot. After you found the option you are looking for, you will notice that the :doc command doesnât work with it. You will have to awkwardly inspect it by evaluating it in the REPL.
You might say âwait a minute, you can search through options using the online searchâ.
- Was it mentioned in the NixOS configuration manual? Thereâs an appendix HTML page with all options listed in it. Yes, all options at once on a single HTML file. It almost crashed my web browser.
- Why should I use the web browser for this when any other package manager lets me quickly look everything up from the command line? The same goes for searching for packages themselves. Thereâs a command for that, but itâs hidden in the documentation and itâs very very slow.
Overall, the whole tooling feels messy/unpolished. Thereâs the traditional way, the Nix Flakes way, everyone recommends Home Manager even though itâs not officially part of NixOS, etc. This makes it very hard to learn, especially if youâve got any kind of a problem that hasnât been solved before. If you look for answers online, a lot of them are made by newbies themselves. So you get amazing answers like âI donât know why this doesnât work, but maybe you should tryâŚâ or âI fixed the problem by updatingâ, if you were to even get any. These answers stem from a general lack of knowledge about what is actually happening in the system under the hood.
Also, one thing about the Nixpkgs repository. Itâs very big, but itâs inflated. Some packages are shipped not as the most recent release, but as all the versions independently (python39, python310, python311 etc) with a bare and full version. This created a ridiculous situation where I had both python311
and python311Packages.tkinter
installed, yet tkinter
didnât work. Why? Because I didnât install the python311Full package
. Also, if you want to get a single Python package that gets updated to the latest version when available then youâre out of luck, sorry.
Having said that, after accepting these challenges a properly configured NixOS installation is really nice to use. Learning it is just way harder than it actually should be.
The NixOS wiki is a mess. Some pages are useful, most are not. Stick to the manuals - and yes, this is different than other distros. I believe we just donât have that critical mass of users who donât program themselves and therefore maintain the wiki instead of the distro.
This is probably still my biggest pet peeve about the nix ecosystem. And it neednât even be so: Preface | nixpkgs
Actually, have you ever tried man configuration.nix
?