gchristensen changed the topic of #nixos-chat to: NixOS but much less topical || https://logs.nix.samueldr.com/nixos-chat
pie___ has quit [Remote host closed the connection]
pie___ has joined #nixos-chat
hedning has quit [Quit: hedning]
<samueldr> > {a = "a";}.a or "b"
<{^_^}> error: syntax error, unexpected $undefined, expecting ')', at (string):214:13
<samueldr> this could mean you have a non-breaking space somewhere :)
<gchristensen> oh dear
<gchristensen> w00t my erlang SSH server can read input and send output
<infinisil> > 1 + 1
<{^_^}> 2
<infinisil> samueldr: Ohh, you put a non-breaking space in there? Or am I misunderstanding
<samueldr> exacly
<samueldr> oops, exactly
<infinisil> I see :)
<jackdk> gchristensen: are there good ssh libs or are you handrolling a lot?
<gchristensen> jackdk: erlang has an ssh client and server library built in to otp!
<jackdk> because of course it does :-)
<infinisil> #100
<{^_^}> https://github.com/NixOS/nixpkgs/pull/100 (by ierton, 6 years ago, merged): Please, merge my commits
<{^_^}> https://github.com/NixOS/nixpkgs/pull/100 (by ierton, 6 years ago, merged): Please, merge my commits
<samueldr> that's not good :)
<infinisil> (sorry had to test somewhere else)
<infinisil> Indeed
<infinisil> Ah no, that's right, I made the condition `user == infinisil || channel == bottest` for development
<infinisil> #100
<{^_^}> https://github.com/NixOS/nixpkgs/pull/100 (by ierton, 6 years ago, merged): Please, merge my commits
<infinisil> All right, let the testing commence
<samueldr> (somewhere else?)
<infinisil> (#bottest)
<samueldr> right :)
<infinisil> Had to make sure the bot doesn't double-spam other channels
<samueldr> now I see what you were up to
pie__ has joined #nixos-chat
pie___ has quit [Ping timeout: 250 seconds]
<ottidmes> gchristensen: now I remember, I wanted to reply to your message "love downloading ~300 texlive NARs :D" at the time, but could not remember what the context, now I just did, when I do a `du` of the current system's closure, it feels like 70% is texlive...
<gchristensen> haha
<ottidmes> gchristensen: ah, it is actually 65% ... no wonder XD (grep -c texlive temp ~> 3200, grep -c /nix/store temp ~> 4905)
sir_guy_carleton has joined #nixos-chat
drakonis has joined #nixos-chat
drakonis_ has quit [Ping timeout: 252 seconds]
jasongrossman has quit [Ping timeout: 252 seconds]
lassulus_ has joined #nixos-chat
<infinisil> ,fancy-uninstall
lassulus has quit [Ping timeout: 250 seconds]
lassulus_ is now known as lassulus
<infinisil> ,fancy-uninstall
<{^_^}> Fancy way to uninstall packages, needs fzf installed: nix-env -q | fzf | xargs -I{} nix-env -e {}
jasongrossman has joined #nixos-chat
ottidmes has quit [Ping timeout: 244 seconds]
jackdk has quit [Ping timeout: 268 seconds]
sir_guy_carleton has quit [Quit: WeeChat 2.2]
ottidmes has joined #nixos-chat
hedning has joined #nixos-chat
__monty__ has joined #nixos-chat
ottidmes has quit [Ping timeout: 272 seconds]
__Sander__ has joined #nixos-chat
<lejonet> gchristensen: erlang is wonderful, when you do stuff its designed to do, like distributed computing, many small things that are stateless etc etc, but once you start going outside the rather narrow scope of what it was actually designed for, it'll become a bit more hairy (i.e. as ivan said, parsing stdin and child handling and such)
<joepie91> lejonet: from what I've seen, this is true for many functional languages :P
<lejonet> joepie91: indeed
<lejonet> joepie91: they have a tendency, maybe more than imperative/object oriented language?, to be quite purposefully built around a specific or a few specific usage areas
<lejonet> Like erlang, its designed for fault-tolerant, seamless distributed computing of message-based stacks
<lejonet> (and high availability)
<joepie91> lejonet: I mean, I'd say that most languages were designed that way; just you need an escape hatch or a solid interop mechanism between languages or *something* to deal with the cases it wasn't designed for, and that sorta comes for free when designing an imperative language but not when designing a much more constrained functional language
<joepie91> if you look at the history of pretty much any popular language, it probably has an origin along the lines of "I needed to scratch a specific itch"
* joepie91 has got to go now, though
<lejonet> joepie91: fully agree there
<ldlework> I love BEAM but I don't love Erlang per se.
<lejonet> ldlework: same here, I like what Elixir has to add, runtime-wise, to OTP and BEAM, but I don't care much for the syntax of either erlang or elixir
<ldlework> Yeah Elixir is more Ruby than proper ML and that basically breaks my heart.
<lejonet> same here
<lejonet> sure, iex is a lot nicer to do ad-hoc programming in, than erl, but both are headdeskable to use
<ldlework> I once saw a project trying to bring F# to BEAM and I almost cried when I saw it went no where and is dead.
* lejonet has never looked at F#
<ldlework> It's a lovely competent contemporary ML. It's not... Haskell (yes, I know Haskell is not techncially an ML) but it is still quite good.
<ldlework> Expression based syntax, currying, pipelining, overloadable operators, pattern matching, monad syntax support
<ldlework> One of my favorite technical books of all time is Reppy's Concurrent Programming in ML and I found a faithful CSP library called Hopac for F#, so I went through that book porting all the examples to F# and it still stands out as one of more fun programming things I've done in the last decade.
<lejonet> I might have to give it a look, is there a foss runtime for it (aka can it run on linux?)
<ldlework> Yeah
ottidmes has joined #nixos-chat
<lejonet> Sweet :D
<ldlework> The dotnet core is open source and can run on Linux - but there is also Mono of course, which has been top-notch for like a decade or something.
<lejonet> I'm doing my best to get back into to "real programming" again (been scripting for years, but never anything above that really)
<ldlework> F# actually has a very lively web community who are using Fable a F# to JS compiler to do isomorphic web-development
<lejonet> cool :D
<lejonet> so that you don't have to touch JS yourself :D
<ldlework> Yeah they have some slick Elm-like framework with reactive components on front-end being driven by GraphQL and stuff.
<ldlework> It is all impressively modern.
<ldlework> Once I moved to NixOS I became too confused about Nix itself to figure out how to get that build-chain working because there is not great Nixpkgs support for dotnet stuff.
<ldlework> But now that I'm more experienced with Nix perhaps I'll go back sometime and give it another try.
<ldlework> I should probably just learn Haskell though.
<lejonet> haha :P
<ldlework> F# isn't pure or lazy though. And actually, you can just stick imperative code or for-loops anywhere you want.
<ldlework> It is really interesting that way.
<ldlework> It's like a respectable ML, but you can also write classes and be imperative. Quite unique.
<lejonet> That is quite unique
<lejonet> Hows the performance of it in relation to other functional languages? Like erlang or haskell
<ldlework> I don't have a clue
<lejonet> Sure, in many cases nowdays, that is not an issue anyway, but always nice to know, like pre ruby 1.8, it was highly relevant for regex usage in relation to most other languages, because it was slower than molasses in pre ruby-1.8
qyliss has quit [Quit: bye]
qyliss^work has quit [Quit: bye]
qyliss has joined #nixos-chat
qyliss^work has joined #nixos-chat
__monty__ has quit [Read error: Connection reset by peer]
__monty_1 has joined #nixos-chat
__monty_1 has quit [Remote host closed the connection]
__monty__ has joined #nixos-chat
__monty__ has quit [Read error: Connection reset by peer]
__monty__ has joined #nixos-chat
<manveru> aszlig: is there any way i can share modifications needed for steam games so they're applied automatically?
<aszlig> manveru: err, what's the context?
__monty__ has quit [Remote host closed the connection]
<manveru> just patched the Dead Cells start script because they set LD_LIBRARY_PATH=. and LD_PRELOAD=
<manveru> so instead of `LD_PRELOAD= LD_LIBRARY_PATH=. ./deadcells` it should be `LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./deadcells`
<manveru> but not sure i should recommend that to the game devs, might break for other platforms
<manveru> so was wondering if we can add nixos-specific tweaks after a game is installed?
<manveru> also i'd like to get all the Zachtronics games to run, but they fail without any output at all... :|
<aszlig> manveru: ah, i have started with Dead Cells in vuizvui at some point
<aszlig> the idea was to directly package hashlink
<aszlig> manveru: the nixos-specific tweaks for the FHS user env?
<manveru> yeah
<aszlig> hm, no idea about that TBH
<aszlig> i'm not using steam anymore, so i can't say how easy or hard this would be
<manveru> something like a wrapper script for steam that'd run the tweaks before starting it
<manveru> not sure there's any other way that'd be easy to use :)
<aszlig> IIRC steam was quite aggressivly replacing files, not sure if that's still the case
<manveru> they replace them on updates or if you check integrity
<ldlework> manveru: I approve of this project to create turn-key Steam support for NixOS though.
<manveru> but otherwise usually they're left alone, afaict
<aszlig> manveru: you can still use LD_PRELOAD wrappers though
<manveru> the problem is that they remove LD_PRELOAD from the env of the game :P
<aszlig> ah, damn
<aszlig> ah, yeah, missed that "LD_PRELOAD= LD_LIBRARY_PATH=. ./deadcells" you wrote above
<manveru> and games like shenzen/io and opus magnum rely on an env var called STEAM_LD_LIBRARY_PATH, you ever heard of that?
<aszlig> hm, nope
<aszlig> maybe that's for steam-internal libraries?
<manveru> they do this: `export LD_LIBRARY_PATH=$STEAM_LD_LIBRARY_PATH`
<aszlig> manveru: okay, so the existing LD_LIBRARY_PATH won't work
<aszlig> but in the FHS env it shouldn't matter, right?
<manveru> even if i run the binaries via steam-run directly, they fail without output
<manveru> guess i need to add strace to the chroot
<aszlig> manveru: i'm still not sure what's the actual issue here, i mean as said, shouldn't LD_LIBRARY_PATH be needed for the FHS user env?
<manveru> it is, and usually it's fine, unless those start scripts start overwriting it
<aszlig> sorry i meant, LD_LIBRARY_PATH shouldn't be needed in FHS user env
<aszlig> i mean, isn't that env all about providing all the /usr/lib and whatnot?
drakonis has quit [Ping timeout: 268 seconds]
pie___ has joined #nixos-chat
pie__ has quit [Remote host closed the connection]
drakonis has joined #nixos-chat
<pie___> installing gimp also gets some version of networkmanager lol *shrug* >_>
<ldlework> lol
__Sander__ has quit [Quit: Konversation terminated!]
drakonis has quit [Remote host closed the connection]
drakonis has joined #nixos-chat
drakonis has quit [Read error: Connection reset by peer]
kini has quit [Quit: No Ping reply in 180 seconds.]
kini has joined #nixos-chat
Synthetica has quit [Quit: Connection closed for inactivity]
Synthetica has joined #nixos-chat
ottidmes has quit [Ping timeout: 245 seconds]
ottidmes has joined #nixos-chat
<andi-> Internet in hotels all around these islands is so bad /o\ I am probably just spoiled but upgrading my NixOS on the nootebooks takes forever...
<gchristensen> hopefully you didn't get the accidentally bad DNS records
<andi-> seems fine
<andi-> NAT NAT NAT, and then the first hop of a non-RFC1918 network... No IPv6 insight since last sunday… Can not recommened internet wise :|
<gchristensen> :|
<andi-> updating my home-manager managed user profile causes Xen to be compiled... I can't wait to figure out why..
<LnL> wut
<andi-> also a custom version of coreutils o.O Moved away from this machine for 3 days and it goes weird
<LnL> I think there's an optional dependency on it from qemu that's enabled by default
<LnL> so maybe that's it
<andi-> yeah, I am thinking qemu, virt-manager or similar
* LnL wants more optional dependencies not enabled by default
<andi-> I must find more time to look into #49403
<{^_^}> https://github.com/NixOS/nixpkgs/pull/49403 (by andir, 7 weeks ago, open): WIP: qemu_test: disable features that are not needed for tests (closure 567MB -> 174MB)
<gchristensen> oh my goodness
<LnL> the darwin stdenv also increased >100m since I started tracking it
<andi-> I have been thinking of just introdusinc g anew argument to `makeTest` that allows overriding the qemu version that is being used.. Not sure if that would be an elegant solution to the problem.
<samueldr> andi-: what's the issue it would solve?
<samueldr> I mean, there's the PR you linked, but is that insufficient?
<samueldr> ah, logging-in into tests
<andi-> samueldr: it would break nixos-rebuild-vms according to xeji. Not really break but remove features that users might have goten used to (gtk interface for qemu, …)
<samueldr> yeah, you're right, so it's probably the good solution then?
<samueldr> tests test with a testing-specific qemu, and can be overriden for nixos-rebuild
<andi-> yeah, just not sure how to properly do the overriding there without moving too much stuff around
<andi-> must invest an hour soon-ish(tm)
<samueldr> oh, and since `with pkgs` comes later it's not possible to "simply" pass a qemu, right?
dmc has quit [Quit: WeeChat 2.3]
sir_guy_carleton has joined #nixos-chat
dmc has joined #nixos-chat
Guanin has joined #nixos-chat
jackdk has joined #nixos-chat
<ldlework> anyone want to play roboduels?
<ldlework> takes like a second to sign up
<ldlework> it isn't busy so you can play as much as you want
<ldlework> sign up you dummies https://roboduels.com
<ldlework> https://twitch.tv/roboduels if you wanna watch
<jasongrossman> Thanks, ldlework. I'm watching now.
<ldlework> haha
<ldlework> so fun
<ldlework> i'm blue
<ldlework> my friend is orange
<jasongrossman> Shouldn't a duel have only two participants?
<jasongrossman> This IS fun!
<ldlework> it takes like one minute to sign up
<ldlework> and i can get you admin access
<ldlework> to play for free
<ldlework> just arrow keys
<jasongrossman> ldlework: Thank you, but I'm happy being a voyeur.
<ldlework> double kill!
<ldlework> :P
<jasongrossman> He's calling you "Idlework".
<ldlework> that's how most people say it
<ldlework> some say "little work"
<jasongrossman> I've been going to a lot of trouble to say "elldlework".
<ldlework> some say "ladle work" :P
<ldlework> lmao