Redpill me on NixOS ni/g/gers

Redpill me on NixOS ni/g/gers

>should i fucking install it?
>why tf does everyone tell me to install it

Attached: 8.png (241x209, 5K)

Other urls found in this thread:

ambrevar.xyz/guix-advance/
twitter.com/NSFWRedditVideo

install gentoo

immutable declarative configuration. you can roll back any configuration change. packages are always linked to the dependencies they were built against, so additional packages never break already installed packages, and removing packages never breaks unrelated packages.

it's also an absolute god send if you program

GNU/Linux Rice Thread

[yes i took the image from installgentoo wiki]
specify :
>DE/WM
>Distro
>Additional Info [if you want]

Attached: yes.jpg (800x500, 76K)

oh wow i'm fucking retarded
well this is awkward

suicide 100

What if you don't program (yet) and this would be your first GNU/Linux distro?

Just use kubuntu/xubuntu.

If you're not already comfortable working in a terminal, nixos will be pretty painful. even that is sort of the bare minimum. if you're new to linux, I would suggest debian (plain old debian) or one of the self-installing arch derivatives rather than nixos.

for experienced users: guix or nixos all the way

even if you go with a more user friendly distro, you can still install the Nix package manager and get many of the benefits of nixos without having to go all in. Nix the package manager can happily live along side whatever package manager comes with the distro you have installed.

NixOS users, don't bother explaining here. I tried multiple times but Jow Forums is too immature to consider another way of doing operating systems, not to mention barely anyone on Jow Forums actually uses a Free operating system to begin with.

Everyone else: go to nixos.org or connect to the nixos irc if you actually want to learn more.

And the reason why people unironically recommend it is because it literally solved package management and dependency hell.

Why people don't talk about Fedora Silverblue as often as they talk about NixOS or GuixSD.
It's basically same thing but without declarative bullshit and config files. Am I wrong?

Attached: silverblue.png (1890x800, 87K)

>Fedora Silverblue
because it's not the same. flatpaks are a wasteful mess

There are many different approaches at solving dependency hell like Gobo Linux, Guix System, flatpak, Docker, AppImage, etc. What makes NixOS the best solution?

Hm... I though Silverblue uses rpm-ostree.

Attached: IMG_20190415_112158_644.jpg (1049x1049, 157K)

guix is a reimplementation of nixos in guile scheme and adhering to FSF principles.

I'm not too informed on Silverblue, but from what I understand it uses ostree as a rollback mechanism for packages installed as flatpaks or docker images.

SilverBlue is declarative without the config bullshit

SilverBlue uses both rpm-ostree and flatpak. Atomic uses both rpm-ostree and docker. Flatpak is a mini version of OSTree.

seems cool, i'll try it out

>it's also an absolute god send if you program
What makes it a godsend if you program?

No, it's a dated research project. Guix and Fedora Silverblue do everything Nix does but better. Go with Guix if you're a freetard and Silverblue if you actually do work.

I actually tried to install NixOS on my Thinkpad last weekend and spend 4 hours trying to write a basic config and failed to make it work. Is it because I didn't spend enough time on it, lack the experience in functional programming or because I'm too stupid?

I kind of want to try it since I love the idea of a completely reproducible system with a central place for configuration. Also, is it possible to create multiple modes in the configuration so you can have a work and at home setup?

I followed the manual and created the bare basic config in like 10 minutes. Looking up weird shit took more time (like configuring Haskell libraries) but there are clear steps for a basic config in the manual.

Well at least I understood how to create the most barebones possible config but I wanted to at least make a basic configuration for getting in an environment I can actually do something with. It can be somewhat simple but there really is a minimum amount of configuration it needs before I can use it as a daily driver (which is what I'm going for since it's going to end up somewhere in the corner if I don't).

Do you at least have a fully configured config right now and if so, how long did that take? Generally interested, I just need to know how much effort I need to put into it as a noob.

Nah, I don't use it as a daily driver (but I suppose it would be actually good enough). For me basic environment is just Emacs, web browser, GHC and some Haskell libraries so that was easy enough, just some googling for package names (and a weird thing with GHC and libraries). One bad point about NixOS is that I didn't see any option for a proper package search and that's why I ended up googling them.

check out 'nix search --help'

Emacs, Firefox, mpd, mpv and keepass should suffice for me but the packages don't look like the most difficult part to me anyway. I'm more worried about configuring things like network, graphical environment, users, tlp and other things. I always end up making a lot of configs in /etc which is what I want to avoid by using Nix.

Well I might try again sometime later.

it's seemed based for years but im not autistic enough to use it. i stick with ubuntu, fedora, and gentoo

I used it sometime a few months ago. Documentation is REALLY poor.

dependency hell is literally solved by any package manager that manages dependencies. What year is this??

can someone explain when one should use nix-env and when one should use the configuration file?

>dependency hell is solved by any package manager that manages dependencies.
Yes and no. While the package manager gets the needed dependencies, those dependencies are installed system-wide, meaning every package with that dependency will now use that new version of the dependency, which may lead to unexpected results
This is where nix comes in handy, where all the different versions of one dependency are used by each package accordingly
Use the config file for your base systemd and nix-env for packages you'd use on top of the base system

oof

You don't seem to understand what dependency hell is.

config for things you want installed globally and not bleeding edge (use the stable nixpkgs release), also packages you want if you reinstall your system
nix-env for bleeding edge and things you only want installed as a user
But really ultimately just do whatever lmao

Use GuixSD instead. Much easier to understand, to handle and to work with.

>Yes and no.
What did he mean by this?

bruh

my only complaint really is that when using nix-env -i (install a new package) it's very slow, and I really mean it.
Now my T500 isn't all that powerful but surely installing neofetch shouldn't take 5 (or more) fucking minutes... they should at least add a progress bar for that since a lot of the time I can't be sure whether to halt it or not

>I can't be sure whether to halt it or not
They should really just write a script to display whether or not nix-env -i will halt with your given package.

heh good one anone.
really all I want is a progress bar

You need to do nix-env -iA nixos.PACKAGENAME it's much faster, otherwise you are telling nix to do a really slow regex search through all packages

>nix-env -iA nixos.PACKAGENAME
In guix this is just
guix install packagename

Attached: GuixSD.png (216x635, 152K)

Can I get the GNUpill on why GNUnet distribution is so exciting?

old and busted

Attached: guixsd.png (462x287, 13K)

This. It's called the Guix System now.

Attached: 1557011428289.png (1212x1374, 1005K)

>Guix/Hurd installed over GNUnet
If this is actualized I'll take back all the horrible things I've said about humanity and modernity.

Attached: awe1350281144003.gif (262x200, 498K)

you can create development environment on the fly declaratively. What is different from virtualenv or other lang specific solutions it that you can combine all those language specific environments on a single unified set (nixpkgs interfaces with them correctly).

I didn't know virtualenv but i could install and use numpy, altair, tensorflow and some javascript dependencies more quickly that the rest of the class that did the traditional thing. This removes a user case for docker of reproducible developing environments

Guix/Hurd still in developmet, though you can hack together NetBSD rumpkernels to load it on hardware like Debian/Hurd currently works.

I just want a life free of linux fanboys and the plebnet.

Basically, completely anonymous and uncensorable. You could choose whoever you wanted to provide updates.

hi borja

ambrevar.xyz/guix-advance/

Attached: guix1556843723778.png (1157x868, 120K)

it's good distro but too autistic for me

Does anyone know how to define a guix package which simply installs a shell script? The problem is that the script has a makefile, but without a definition for 'make install'. So I'm thinking of using gnu-build-system with something like this
(modify-phases %standard-phases
(replace 'install
(lambda _ (install-file "script" "path/to/gnu/store"))))

How do I get the correct /gnu/store/ path to install it into and this even the proper way of doing this?

Attached: 1557184565736.jpg (844x656, 370K)

Nevermind, apparently just doing "/gnu/store/" is enough and it does everything automatically.

Who are you quoting?

use flag faggots btfo

Docker has more uses than that

nice thread dude

it's alright pal we all make mistakes sometimes

Actually what other uses does Docker have?

>crashing

Other package managers do handle dependencies, but nix does it better