rutrum

joined 5 months ago
[–] rutrum@programming.dev 3 points 1 day ago

Many people think of Docker as a virtual machine, but a better way to look at it is as a security wrapper around a process.

I really like this interpetation of containers. Thanks for sharing.

 

For example, compose2nix lets you build nixos configuration for containers defined in a docker compose compose.yml. But this step happens offline. You have to first ad hoc generate the config from the compose.yml and then use that generated output in your config.

It seems obvious to me that the best user experience would be to write a flake/module that let's you just point to a compose file directly in your config. On rebuild, it would parse the compose file and build the appropriate config.

But I've not really seen that. These projects that convert from one package mamagement scheme or config file to another (xxx2nix projects) work using this preprocessing step. More examples include pip2nix and cargo2nix.

Given how common this pattern is, I suspect there is something preventing generating at rebuild time from being feasible, or at least easy. Does anyone have ideas for why this is? Thanks.

[–] rutrum@programming.dev 7 points 1 week ago

My fav prog band no doubt

[–] rutrum@programming.dev 5 points 2 weeks ago

Me and one other tech friend who appeased me. We tried simplex first, but sometimes their background service would be off and they wouldnt get messages. So we switch to Molly.

[–] rutrum@programming.dev 6 points 3 weeks ago (1 children)

I've had an amazing time remoting into friends and families windows machines from my linux box, and they were able to install rustdesk very easily. It's incredibly streamlined and has been so helpful when I need it.

[–] rutrum@programming.dev 4 points 1 month ago (1 children)

I use a tool called ouch so I never have to remember the tar flags ever again.

[–] rutrum@programming.dev 4 points 1 month ago

Yes, let's just give up. That's the best choice.

[–] rutrum@programming.dev 5 points 2 months ago (2 children)

I dont think the criticism of installing apps is valid. Windows also has many ways of installing things. He criticizes the app center as if you can install everything from the microsoft store. On windows you still install stuff from a website, and you can use a package manager too it just isn't a requirement.

[–] rutrum@programming.dev 3 points 2 months ago (2 children)

OBS Studio: There's a community version but no official version of OBS for Linux.

This is incorrect, right? Im assuming had to install it somewhere else and presumed it wasnt official.

[–] rutrum@programming.dev 1 points 2 months ago

If you really hate linux, I think the transition will be extra difficult and you might not end up switching away.

[–] rutrum@programming.dev 2 points 2 months ago

If you use conda, I suggest using pixi as a project manager. It has lock files which will fix dependencies, and it can activate your enviroments with scripts and variables defined in your pyproject.toml. It has been so much better than using conda directly: https://pixi.sh/

[–] rutrum@programming.dev 6 points 2 months ago* (last edited 2 months ago)

Theres three things at play here: nix, nixpkgs, and NixOS.

Nix is a programming language. Its designed as its primary purpose to configure, build, and install software.

Nixpkgs is a collections of mamy bundles of premade nix code called derivations. These derivations include the build instructions for applications and the configuration options for those applications. This part is most equivalent to a package repository, but it does not contain prebuilt packages. It only contains the instructions for building it.

Nix has a wide variety of tools for managing these derivations. This includes downloading derivations from nixpkgs and building them locally on your machine (or finding prebuilt packages from a cache). Nix shell is one of those tools that downloads a package temporarily, and makes it available in your shell. You wouldnt use nix shell for installing things permanently.

The OS built with nix as the primary package manager is NixOS. It allows you to define your entire system state as a derivation: your systemd units, installed packages, user configuration, graphical environment, etc.

The best part of NixOS is that it takes the OS and represents the state of the computer as a single repository of code. If you look up someones nixos configuration on GitHub, you'll see a single collection of files (filled with derivations!) that completely and totally define the state of the system.

[–] rutrum@programming.dev 1 points 2 months ago

Lollypop looks awesome. Thanks for recommending. Welcome back to NixOS

 

The gist is you write macros/automations/scripts to play the MMO based on your logic.

I decided to do it in bash/curl/jq to make it extra fun and learn some tools I use occasionally but only withheavy man page referencing. After some playing I might be a bash-scripting pro.

view more: next ›