gchristensen changed the topic of #nixos-chat to: NixOS but much less topical || https://logs.nix.samueldr.com/nixos-chat
nckx has quit [Quit: Updating my GNU Guix System — https://guix.gnu.org]
nckx has joined #nixos-chat
<gchristensen> RIP digitalocean
<samueldr> hm?
<gchristensen> a new and exciting CEO who specialises in mergers and acquisitions
drakonis has joined #nixos-chat
cjpbirkbeck has joined #nixos-chat
drakonis has quit [Quit: WeeChat 2.4]
tilpner has quit [Remote host closed the connection]
tilpner has joined #nixos-chat
yorick has quit [Ping timeout: 246 seconds]
<andi-> maybe he will ensure my bucket will be deleted :-)
yorick has joined #nixos-chat
<joepie91> gchristensen: well, that seems to explain a lot about why DO suddenly selects a $40/mo instance as a default and hides the cheaper options...
<eyJhb> But isn't this too new to have anything to do with that?
<joepie91> eyJhb: more that it seems to suggest a shared cause :)
<joepie91> namely; customer acquisition phase is over, time to sell the lot
<joepie91> (and so the numbers probably need propping up)
<eyJhb> I don't hope so, I only have one provider interface for my platform! I don't want to code another right now.
Jackneill has joined #nixos-chat
<joepie91> eyJhb: good example of why I don't want to build against specific providers' platforms :P at least DO is fairly interchangeable
cjpbirkbeck has quit [Quit: Quitting now.]
endformationage has quit [Quit: WeeChat 2.5]
<eyJhb> joepie91: well, that is quite hard not to, if I actually want to get anything running :p But I have a interface I just need to implement to change it to something else
<joepie91> https://www.youtube.com/watch?v=GNqdhKhNpoQ -- genuinely impressive rip-off of a disney ride, at a funfair
Jackneill has quit [Ping timeout: 245 seconds]
Jackneill has joined #nixos-chat
<mgdm> gchristensen: awww no. I just moved a few things over there
<averell> will probably take months to really start to suck... :)
arahael1 is now known as Arahael
veske has joined #nixos-chat
<eyJhb> Tbh. If you use DOs API on a regular basis, then it already sucks. And 1 out of every 10 website load, I get "something went wrong" pages
ajirx has quit [Remote host closed the connection]
ajirx has joined #nixos-chat
ajirx has quit [Ping timeout: 245 seconds]
__monty__ has joined #nixos-chat
veske has quit [Quit: This computer has gone to sleep]
andi- has quit [Ping timeout: 250 seconds]
andi- has joined #nixos-chat
andi- has quit [Excess Flood]
andi- has joined #nixos-chat
andi- has quit [Excess Flood]
andi- has joined #nixos-chat
ajirx has joined #nixos-chat
andi- has quit [Excess Flood]
andi- has joined #nixos-chat
ajirx has quit [Ping timeout: 244 seconds]
andi- has quit [Ping timeout: 252 seconds]
andi- has joined #nixos-chat
Jackneill has quit [Ping timeout: 258 seconds]
andi- has quit [Ping timeout: 264 seconds]
psyanticy has joined #nixos-chat
andi- has joined #nixos-chat
Jackneill has joined #nixos-chat
noonien has quit [Quit: Connection closed for inactivity]
waleee-cl has joined #nixos-chat
Jackneill has quit [Ping timeout: 248 seconds]
Jackneill has joined #nixos-chat
<eyJhb> Anyone good with Elasticsearch/Logstash etc.?
<eyJhb> Or grok I guess?
<gchristensen> I have... used those... at one point
<eyJhb> Can I pm you gchristensen ?
<gchristensen> sure
__Sander__ has joined #nixos-chat
<eyJhb> I seem to remember some way of "promoting" at /dev/pts/x to root, am I completely wrong?
<eyJhb> s/at/a/
drakonis has joined #nixos-chat
<Gilfoyle-> gchristensen: Suddenly glad I didn't put in for tht DO job months back
<gchristensen> heh
<gchristensen> yeah :)
endformationage has joined #nixos-chat
Gilfoyle- is now known as Church-
drakonis_ has joined #nixos-chat
drakonis has quit [Ping timeout: 250 seconds]
drakonis has joined #nixos-chat
drakonis_ has quit [Ping timeout: 248 seconds]
__Sander__ has quit [Quit: Konversation terminated!]
<__monty__> Hmm, joepie91, did you consider krops? I'm interested in how it differs from morph.
<srhb> __monty__: Morph is basically a wrapper around nix-copy-closure and the normal activation scripts, so it's more or less NixOps without the provisioning. :)
<aminechikhaoui> isn't that basically the nixops none backend ?
<__monty__> And also what krops seems to be doing?
<__monty__> aminechikhaoui: I think the difference with nixops is the "stateless" feature? I figure nixOps keeps a database of hosts and their version around or something?
<aminechikhaoui> ha, ok then it makes sense
<srhb> Yes, there's no state in morph at all.
<__monty__> Nor krops. But I want to know the difference between morph and krops : >
<srhb> Yeah, I was just trying to write down what I remember off the top of my head :P
<srhb> One thing that I remember krops does is be able to deploy the source on the target itself innately
<srhb> Meaning, you can lose your deploy sources and not have a bad day.
<srhb> Oh, and per-machine nixpkgs sources are not in morph yet I think..
<__monty__> I guess what I'm wondering about mostly is "Why morph?" given that krops already existed.
<srhb> morph actually existed a long time before then in some internal shape.
<__monty__> Is it just nih-nixops started around the same time and released at some random point?
<srhb> ... yes :P
<__monty__> Ok, then we're back to what are the differences so I can make an educated decision.?
<srhb> So I wrote the first version in bash, the second in haskell, then left the company and they did a much nicer version in go because none of them felt very confident with haskell. :)
<srhb> I wrote the first version because I wanted zero state.
<srhb> the go version is what's called morph
<srhb> The first version was literally ./deploy.sh... I think the second was "nix-deploy" or something along those lines.
<srhb> What are your needs anyway?
<__monty__> Oh, you came up with morph? Cool beans.
<srhb> No, I would definitely not take the honor for that, morph is much nicer than what I wrote ;-)
<__monty__> My needs are enough knowledge to take over the world : )
<srhb> heheh
<__monty__> don't have a direct use. Though in the longer term I'd like to pivot a server from arch to nixos.
<__monty__> Would also love to handle VPSs with some sort of nix deploy tool.
<srhb> morph and nixops are probably the most interchangable..
<gchristensen> I see pivoting X to NixOS as short term. long term, providers should offer NixOS
<srhb> Because morph basically builds on the same machines-evaluation internally
<__monty__> Mister big measuring stick : p
<srhb> So if you ever want provisioning, it might be slightly easier to go morph->(possibly nixops)
<srhb> Then again, it's all just nix, so switching between either of them is going to be a walk in the park.
<gchristensen> srhb: might be interesting to see if morph could take advantage somehow of the upcoming pluginization of nixops
<srhb> gchristensen: I'll be sure to pass that on. :-)
<srhb> I have been following the PR.
<pie_> why do people seem to be building good stuff in go but PL people hate the language
<srhb> Fashion...
<pie_> i mean i know why pl people hate it, just that dichotomy bothers me :D
<srhb> Plus it did resolve some very real distribution/build issues that we tend to forget about in nix land.
<gchristensen> well on the left hand you have "clearyl people can get stuff done in it"
<gchristensen> and on the right hand you have people who don't like how people have gotten things done
<srhb> gchristensen: That's the devil's hand
<srhb> (The left one...)
<pie_> srhb: lol gchristensen: yes
<adisbladis> srhb: I like the devil
<pie_> gchristensen: im the kind of guy that wants the best of both :( (so i never get anything done)
<infinisil> You can build bad stuff in good languages, and you can build good stuff in bad languages
<srhb> #nixos-$foo: The only place on the internet that will always make militant agnosticism a thing. :P
<infinisil> There's not much of a connection between how good a language is and how good the thing is you build out of it
<adisbladis> I think Go is elegant in a way
<adisbladis> "militant agnosticism" <3
<adisbladis> I will hit you with a trout until you also don't know what I don't know
<pie_> :D
<srhb> ^^
drakonis has quit [Ping timeout: 250 seconds]
drakonis has joined #nixos-chat
drakonis has quit [Ping timeout: 264 seconds]
<eyJhb> Well.. Go has good performance and easy to use, so it is when people start using Go as they would Python that .. SOme get unhappy
<eyJhb> And I am a part of that issue!
drakonis has joined #nixos-chat
drakonis_ has joined #nixos-chat
<__monty__> I'd expect people to mind that less than using haskell as if it's python : >
drakonis has quit [Ping timeout: 250 seconds]
<cransom> go as python, doesn't bother me as much as people using go as a bash replacement. or just to rewrite a tool that already exists because that tool isn't go, and they think it should be go.
drakonis_ has quit [Ping timeout: 252 seconds]
<eyJhb> any language as bash is a problem. I have done that before.. Writing something in Python that could be done in 4 lines of bash...
<eyJhb> But yeah, the last part is true. But sometimes it is rewritten in Go, as it might be easier to maintian
<__monty__> Went to a go meetup once. Comments about haskell were *not* friendly. While I've personally never experienced the "ivory tower" people claim haskellers inhabit.
<eyJhb> Setting the alarm for tomorrow, and seeing if I slept right now, I would get around 8 hours of sleep. It is 19.00..
<__monty__> Ouch.
<infinisil> __monty__: What's the "ivory tower"?
<eyJhb> Yeah, I am in-between of just staying up, or trying to go to bed early
<eyJhb> infinisil: `a state of privileged seclusion or separation from the facts and practicalities of the real world.`
<infinisil> I see
<infinisil> So just the standard "haskell isn't practical for real-world programs" :)
webster23_ has joined #nixos-chat
<__monty__> Yes, not practical and writing it's like solving a rubik's cube, hard but pointless.
<srhb> I think ivory tower is specifically aimed at the academia-ness of Haskell in this instance.
<__monty__> Probably, but it's always posited as a bad thing. It's never gotten in my way, learning and writing haskell.
<averell> i still remember when the haskell "killer app" was darcs. now i guess it's pandoc.
waleee-cl has quit [Quit: Connection closed for inactivity]
<__monty__> Or Sigma.
Jackneill has quit [Read error: Connection reset by peer]
<andi-> the new twitter allows pasting of images via ctrl-v and it will show up in the editor... It doesn't upload them when you send the tweet (╯° °)╯︵ ┻━┻)
<__monty__> Hmm, thought I'd gotten a compose key working on macOS, mysteriously doesn't work for some compositions : /
<srhb> __monty__: I recently was so happy to get it working until I realize that chromium completely disregards my xcompose and makes up some shit, somehow.
<__monty__> Wat?
<gchristensen> andi-: wat
<__monty__> Oh, chromium, you keep surprising us with your boneheaded misfeatures.
<__monty__> gchristensen: Twinsies : >
<andi-> gchristensen: yes, paste an image into the editor and try :-)
<manveru> hmm, turned out replacing all the functionality of hakyll (i was using) took about 300 LoC in nix :)
<infinisil> manveru: Can I see those 300 LoC?
<infinisil> Really wondering what kind of things you implemented with it :o
<manveru> :)
<manveru> it's not pure nix anymore
<manveru> but i tried to get as granular compilation as possible
<manveru> anw, will put it up in a bit
endformationage has quit [Ping timeout: 244 seconds]
<infinisil> Neato
<infinisil> I've been trying to get into hakyll, but it's just not as simple as I'd like it to be..
<__monty__> That's a common complaint about hakyll ostensibly. That and slow builds.
<infinisil> __monty__: You mean the build of the haskell executable?
<infinisil> Or the build of the site?
<__monty__> I assume the site.
<__monty__> Tbh, I'd be tempted to roll my own with shake. And use dhall as the templating preprocessor : )
<infinisil> __monty__: While trying hakyll, building the executable itself took a while too..
<infinisil> I guess this can be mitigated by using ghci though
<__monty__> Why do you have to rebuild it?
<__monty__> Is it like a custom compiler with your templates built-in? Then I guess the complaints are about that.
<infinisil> Nah templates are loaded at runtime, but the whole flow of data is hardcoded I guess
<infinisil> And without ghci it would get rather annoying to have to wait for ghc to compile it again when you want to iterate over it
<__monty__> I guess I still don't understand how hakyll works.
<__monty__> Sitepipe looks more and more sensible tbh.
<__monty__> I'd also check out pollen, a racket project.
<infinisil> Well I guess it's kinda my fault, I didn't want to start with the hakyll preset
<infinisil> Wanting to start with an empty project and such
<__monty__> Hmm, can I nix repl home.nix? How do I provide the right arguments?
psyanticy has quit [Quit: Connection closed for inactivity]
<manveru> well, i didn't find hakyll to complicated, it's just a PITA to deploy on gitlab
<manveru> it definitely was faster than the nix code, but nix does caching better :)
lopsided98 has quit [Ping timeout: 244 seconds]
NinjaTrappeur has quit [Quit: WeeChat 2.5]
<__monty__> Why not combine nix+hakyll?
NinjaTrappeur has joined #nixos-chat
<manveru> well, like i said last time, hakyll depends on pandoc
<manveru> that means whatever uses it for building has to download a few GB of dependencies before even getting to the site building part
<manveru> and there's no caching for nix on gitlab
<manveru> i built the generator in nix faster than it took me to wait for docker builds of hakyll :P
<manveru> granted, i had this all built in hugo before as well... which was even faster and smaller, but the least flexible
<__monty__> Can't you use a binary pandoc?
<manveru> how do i tell haskell to use that?
<manveru> i'm not familiar enough with cabal
<__monty__> Does hakyll need the pandoc library? Or was the executable just part of your workflow?
<manveru> the library
<__monty__> Ah, then I'm not sure.
<manveru> likewise
<manveru> sitepipe also uses pandoc that way
<manveru> still wondering if i should try dhall for html generation, but it seems overkill
<__monty__> It probably is but you still should : )
<manveru> i'm using https://github.com/jucardi/infuse now, which is pretty neat
<__monty__> I still can't believe pandoc's deps count in the GBs.
<manveru> i'm used to go templates, and this makes them usable without compilation
<__monty__> It sounds like you're depending on GHC or something.
<manveru> well, ghc is also in there, because you have to build the site.hs
<manveru> and you can't statically compile because of pandoc
<manveru> i dunno, it's all confusing to me
<manveru> essentially i don't even need 1% of what pandoc can do, so why bother
<manveru> https://gitlab.com/manveru/finesco/blob/master/scripts/front_matter.rb is all the functionality for markdown i needed
<manveru> will rewrite that in a compiled language, since it's the slowest part of the build, but since nix caches it it's not too painful
drakonis_ has joined #nixos-chat
<manveru> sorry, this is not offtopic enough for this channel anyway :)
<__monty__> Hmm, looks to me like you could just have used a binary for pandoc though.
<Church-> hakyll is a site generator
<__monty__> Yep.
endformationage has joined #nixos-chat
Jackneill has joined #nixos-chat
Jackneill has quit [Remote host closed the connection]
drakonis has joined #nixos-chat
lopsided98 has joined #nixos-chat
webster23_ has quit [Ping timeout: 264 seconds]
<kalbasit> Going through a memory hole here. What is the term we use to refer to Nix's method definition? As in `add = x: y: x + y` and `add5 = add 5`
<infinisil> kalbasit: How would a function definition have a different name than a non-function definition?
<kalbasit> infinisil: I wish I know what I'm looking for lol. It's a functional programming concept regarding partial functions
<infinisil> Ah, partial application?
<infinisil> currying?
<kalbasit> Yes!!!
<kalbasit> damn it, thanks!!
<infinisil> Wait, which one?
<infinisil> Np :)
<kalbasit> Currying
<infinisil> Ahh
endformationage has quit [Quit: WeeChat 2.5]
<ashkitten> steam runtime mirrors seem to be 404ing
<ashkitten> actually nvm, it's the steampowered repo itself that is 404ing
<ashkitten> maybe the steam runtime should be updated?
<ashkitten> i'll try
<__monty__> kalbasit: Neither of the things you wrote involves currying.
<ashkitten> when fetching patches from patchwork.kernel.org in my configuration, i'm running into discrepancies between the expected and received hashes
<ashkitten> but if i do nix-prefetch-url beforehand it works fine
<infinisil> __monty__: I had to look up currying myself to be sure, but yeah you're right https://wiki.haskell.org/Currying
<infinisil> The `curry` function is not misnamed apparently :)
<__monty__> Yeah, it's one of those weird things. Like how everyone talks about partial application but neither haskell nor nix actually have partial application.
<infinisil> __monty__: Huh, how do they not?
<__monty__> infinisil: Btw, technically `curry` doesn't curry in haskell. It goes from a single-argument function to a single-argument function : >
<__monty__> You can't partially apply anything in either language.
drakonis_ has quit [Ping timeout: 268 seconds]
<__monty__> You can apply single-argument functions to single arguments. And sometimes you get a function as a result.
<__monty__> But there's nothing partial about that.
<infinisil> I think that's what people mean when they talk about partial application
<infinisil> In such functional languages at least
<infinisil> __monty__: What else would partial application be?
drakonis_ has joined #nixos-chat
<__monty__> Well it can only exist in languages that have multiple argument functions.
<__monty__> I know there's not much pratical difference. But the devil's in the details.
<infinisil> Ah I see
<__monty__> Things like python's partial and java's bindTo are what I'd call "real" partial application.
<__monty__> You can probably find out more about this from people like ski over in #haskell : )
<__monty__> nn, infinisil, peeps
<infinisil> Night :)
__monty__ has quit [Quit: leaving]
<ldlework> Some languages have this feature of defining multi-parameter functions as unary functions which return functions automatically
<ldlework> ML's like F#
<ldlework> And so partial application is intrinsic to the language such that calling a function declared with multiple parameters with only some of the required parameters will always result in a unary function that is waiting to be further applied
<ldlework> I think that __monty__'s distinction is one without a difference
<ldlework> Most people writing in ML's would conceive of this mechanism as "partial application" or at least "automatic currying"
<infinisil> ldlework: That game seems perfect for when you need to stress yourself out even more!
<ldlework> i went to the comments but no one seemed to also be thinking it would be a super cool asynchrnous VR-vs-PC game
<ldlework> Imagine if you could only chase the other player around by grabbing the ground and pulling yourself along
<infinisil> Hehe yeah
<colemickens> so is there something wrong with cache.nixos.org or am I somehow have extremely bad luck on both hotel wifi and my independent cell phone tether?
<colemickens> How the fuck do I change my Mac address and not have NM immediately change it back
<colemickens> I just did it 5 minutes ago and now it won't stick
<ivan> colemickens: edit it in networkmanager?
<colemickens> I guess. `ip link set addr <foo>` works too as long as you dont RE-connect from NM. which is lovely.
<colemickens> also, I forgot how unimpressed I am with nmtui, managing to break my terminal after exit, ignoring Esc in half the places, inconsistent menus.
<colemickens> wew lord I am having a rough time with this.
<colemickens> I would connect to a wireguard tunnel but I know that's going to make me insanely less happy because I've been down that road before.