nyl

joined 11 months ago
 

In practical perspectives, I'm mostly concerned about computer resources usage; I have computer resources constraints. So using Rust would benefit on that. But it is for a Web application backend. So, is it worth it having to learn Rust + Tokio + Axum, ... in this specific situation? Also, that this is mostly for initially prototyping an application. Also considering if I add developers in the future, they would most likely not be familiar with Rust, but with more popular frameworks such as Node.

[–] [email protected] 1 points 11 months ago

Just do it like me and listen to nature sounds like gentle rain.

[–] [email protected] 3 points 11 months ago

Not really... Many are just devs used to say Windows who happened to get to work in a linux environment.

[–] [email protected] 3 points 11 months ago

Nix files are Nix [function] expressions to declare and set your system; there are many options you can set for example. You just need to learn a few chapters of https://nixcloud.io/tour/ and https://nixos.org/manual/nix/stable/language/, also modularization using imports.

For user/de configuration, you can either do the usual way or use home-manager.

[–] [email protected] 3 points 11 months ago* (last edited 11 months ago)

Basically all that. The unfinished part IMO is mostly for use in developer use cases, and that some ecosystems like JVM are not as well supported.

Can run yes, given that you have to spend some time learning Nix and NixOS specifics. I do that myself.

You either package the software if it is easy to do so—take a look a at nix-init which eases the process—or use Flatpack, containers, steam-run...

[–] [email protected] 12 points 11 months ago* (last edited 11 months ago) (7 children)

It all began with Nix software build system and package manager; they needee a way to build, compile software in a reproducible way. That is, if it builds on my machine, it should build on yours too given some constraints. Then they build a whole package repository for such sofware or package definitions, Nixpkgs, that can be build or retrieved using Nix package manager. Nixpkgs grew to be a repository for enabling runnig an GNU Linux OS on it: NixOS. It is declarative in the sense you write what it should contain like packages and behaves like system services. For example, see https://git.sr.ht/~misterio/nix-config.

Atomic in the sense that when you want to change system's configuration or state, everything should suceed in that update, otherwise fails; it is everything or nothing. This enables storing previous and current system revisions, so can rollback to previous state.

Nix plus things like flakes, nix shell, enables a build inviroment akin to containers, but much better, correct, and flexible.

Haskell is just an ecossytem Nixpkgs support.

[–] [email protected] 3 points 11 months ago* (last edited 11 months ago)

GNU has interviews and more clarifying all the way back to MIT AI lab, lisp machines the printers proprietary code triggering free software movement, etc.

Linux just happened because GNU hand't developed a proper kernel yet; Linus wrote that himself on an mail to the Linux Kernel or Minix mailing list IIRC.

[–] [email protected] 22 points 11 months ago* (last edited 11 months ago) (13 children)

NixOS for declarative system configuration.

[–] [email protected] 5 points 11 months ago* (last edited 11 months ago)

NixOS definitely. The disk encryption with keys you may need do that manually though.

[–] [email protected] 1 points 11 months ago

For those saying NixOS has no commercial support, there is: https://nixos.org/community/commercial-support

[–] [email protected] 3 points 11 months ago

Yes, for video files, needs to convert to MOV:

ffmpeg -i input.mp4 -c:v dnxhd -profile:v dnxhr_hq -pix_fmt yuv422p -c:a pcm_s16le -f mov output.mov