gchristensen changed the topic of #nixos-chat to: NixOS but much less topical || https://logs.nix.samueldr.com/nixos-chat
pie__ has quit [Ping timeout: 240 seconds]
<infinisil> I just had a great idea for an IRC bot:
<infinisil> Every time a picture gets posted, it outputs ascii art resembling it!
<samueldr> inb4 ban
<samueldr> :)
<infinisil> It would be funny :P
* gchristensen hovers over the "delete user" button ...
<infinisil> I wonder how well it would work
<gchristensen> it would be funny
<infinisil> Hehe
<gchristensen> in sortof a gag way
<ldlework> heh, Discord for IRC
<ldlework> Discord/Slack features
<infinisil> animated emoji's via rapidly outputted message blocks
<samueldr> "rapidly" is something most IRC server configuration acts agains :)
<ldlework> we used to call that "scrolling" in the early AOL chatroom days
<samueldr> (throttling lines after a certain amount is extremely common
<ldlework> we developed scroller programs that would collaborate on a pattern to outpace rate limiting
<infinisil> Neato!
<joepie91> ldlework: and thus a distributed systems programmer was born
<joepie91> :P
<ldlework> heh
Lisanna has quit [Quit: Lisanna]
<infinisil> My pc occasionally freezes because apparently 16GB RAM + 8GB swap isn't enough
<infinisil> Just happened again..
<samueldr> :(
<samueldr> meanwhile, I'm using 9/64GB, without even filling it with cache
<samueldr> 9 ou of 64 GB of ram
<samueldr> I thought I would be using much more than I am when I bought this machine, though the price was too good not to go for 64
<infinisil> Damn
<infinisil> The main suspect of my freeze is Idris.. there might be a memory leak somewhere or something
<samueldr> though, to be fair it's a refurbished 2012-era workstation, for ~650$ shipped Intel(R) Xeon(R) CPU E5-1660 0 @ 3.30GHz + 64GB ECC
<gchristensen> yum
<infinisil> ECC even
<infinisil> Whoa
<samueldr> it was only 100$ more than 32GB
<infinisil> Did you build/refurbish it yourself?
<samueldr> gchristensen: do look for one full generation-behind workstation hardware
<samueldr> nah, bought it
<samueldr> their prices often change, and availability too
<samueldr> when I compared with other refurbishers for workstations, all their prices were much better than the competition
<samueldr> (though some places in the USA did have competitive prices)
<gchristensen> this is incredible
<samueldr> fun thing with xeon builds like this is that they often come close to the better i7 5-year newer
<joepie91> for server hardware, make sure to consider power use
<samueldr> definitely!
<samueldr> I love how they say "Super Quiet Machine , Doesn't Make Any Noise"
<gchristensen> hehe
<joepie91> oof, those are some good prices
<samueldr> unless there's a difference with windows installed (didn't even run it) it's not silent :)
<samueldr> joepie91: especially if you consider CAD vs. USD
<joepie91> fairly old GPU though
<gchristensen> *buys all the things*
<joepie91> lol
<joepie91> gchristensen: the paradox of a good deal...
<samueldr> oh, the GPU isn't why you buy this...
<samueldr> ... it just *needs* a GPU, no onboard graphics
<joepie91> samueldr: sure, but it claims to supposedly be good for video editing, autocad, etc.
<joepie91> :p
sir_guy_carleton has joined #nixos-chat
<samueldr> don't believe their "marketing", all their towers do
<gchristensen> hard-refresh this a few times: http://147.75.96.102/ -- its being served by two servers on the same IP :D
<joepie91> gchristensen: eh... :P
<joepie91> gchristensen: how's that set up?
<gchristensen> BGP :)
<samueldr> monkeys unplugging and plugging really fast
<joepie91> I prefer samueldr's explanation
<gchristensen> as far as I know, maybe that is how BGP works
<joepie91> then again-
<samueldr> Beautiful Giant Primates
<joepie91> damnit
<joepie91> cut off my joke there :P
disasm has quit [Ping timeout: 240 seconds]
disasm has joined #nixos-chat
lassulus_ has joined #nixos-chat
lassulus has quit [Ping timeout: 264 seconds]
lassulus_ is now known as lassulus
sir_guy_carleton has quit [Quit: WeeChat 2.0]
<infinisil> Idris just might have been the culprit for my freeze, after having coded in it for a while now it used like 8GB of memory, and usually my system is using about 15GB already
<infinisil> It's really cool though, what I just coded in it
<infinisil> Namely, a way to do versioning upgrades between types [a, b, ...], by just specifying the types and the migrations between them, and it will work out what to do when it reads a certain version number
<infinisil> E.g. let's say you use a type Int in the first version of your program, so you set `stateVersions = [Int]`, then later you want to migrate everything to a String, so you do `stateVersions = [Int, String]` and provide a transition function `transitions = [(\int => show int)]`
<infinisil> And everything works when the types check!
<infinisil> Now I'm not 100% done, but the most important function is written
<infinisil> It's actually only 11 lines of code lol, but it took me hours, I put it online here: https://github.com/Infinisil/versioning/blob/master/main.idr#L15-L27
Lisanna has joined #nixos-chat
Guanin has quit [Ping timeout: 245 seconds]
Guanin has joined #nixos-chat
pie__ has joined #nixos-chat
jtojnar has joined #nixos-chat
Lisanna has quit [Remote host closed the connection]
Lisanna has joined #nixos-chat
<andi-> might as well be haskell... I will never find the patience to read through the "bloat" of control characters..
obadz has quit [Ping timeout: 260 seconds]
obadz has joined #nixos-chat
obadz has quit [Ping timeout: 268 seconds]
obadz has joined #nixos-chat
__monty__ has joined #nixos-chat
jtojnar has quit [Remote host closed the connection]
jtojnar has joined #nixos-chat
Jason_Grossman has joined #nixos-chat
<infinisil> andi-: you do have a point heh
<gchristensen> control characters, andi-?
<andi-> gchristensen: well all the operators )(:: -> for me (as a non haskell/idris/.. guy it looks very uncommon :-)
<andi-> I started learning erlang latelty.. so It isn't all that foreign to me
<gchristensen> ohhh yeah it does look like nothing to me
<gchristensen> erlang is fun :)
<gchristensen> no types makes me anxious, though
<andi-> yeah..
<gchristensen> and its mechanism for trusting other erlang servers is terrifyingly bad
<gchristensen> haha
<gchristensen> I do like it though
<andi-> I have to dealw ith a army of python developers that are not used to having to specify types at the office.... uargh
<gchristensen> oh andi
<gchristensen> you poor thing
<infinisil> I need mah types
<infinisil> It's so reassuring
<andi-> I started adding comments to reviews like "any reasonable language wouldn't accept this"
<andi-> It's reallt frustrating without types :/
<__monty__> I'm not sure carrying type discipline over to non statically typed languages is a good idea. Sounds like a recipe for frustration and pissing off people not used to types.
<andi-> Yes and no... I sometimes just wish there was a compiler that hits their fingers on some lines of codes...
<andi-> And that thing should not be optional
<gchristensen> are you using python 3.6? :)
<andi-> yes
<andi-> I am using type annotations ;-)
<gchristensen> you can start adding type
<gchristensen> nice
<andi-> and mypy
<andi-> the python4 annoucement read nice as well.. with python4 there will be some nice changes to the type systems.. forgot which but the annotations will get better (somehow)
<infinisil> I used python a couple times.. i just can't do it, the dynamic nature of it was such a big problem
<gchristensen> nice
<gchristensen> tbh I'd rather reach for bash than python mostly .... X)
<andi-> I used it heavily in the past. Still do.. I would recommend it as a great first/2nd language.. Everything beyond that is personal flavor. Since we are in #nixos-chat I guess most people are a bit different from the mainstream already. ;-)
<gchristensen> :D
<infinisil> There's so many Haskell people in the nix community I love it
<andi-> tbh I did have some anger against the whole haskell on nixos thing a few times already.. but in general I don't mind it
<infinisil> andi-: What kinda things?
<andi-> It is not really haskell specific but the whole mirroring an entire other package manager thing.. And the fallout that comes with it.. It just feels wrong (on a stable branch)
<infinisil> Heh, well I love it, never need to package anything
<andi-> sometimes I like that we are incorporating such other repositories and sometimes I feell they'd be better off in their own overlay and can hack around there as they wish (and it's out of my sight ^^)
<gchristensen> someday :)
<gchristensen> man, figuring out how to use BGP in Packet is making so much stuff possible
<andi-> how are they doing it? APIPA/LL neighbours?
<gchristensen> I don't know what that means
<andi-> what do you configure as neighbour?
* andi- looks
<gchristensen> my gateway
<andi-> ahh, pretty standard I see
<__monty__> andi-: I actually like it this way (granted I'm biased because I use haskell). Only reason every languages comes up with their own packaging system is no package manager was good enough to serve their needs but nix *is*. Also, how is it *in* your sight in the first place? Not like haskell packages turn up in a regular query.
<simpson> __monty__, andi-: The Monte language more or less uses Nix as the package manager; I've been working towards shipping a Monte-upon-nixpkgs which integrates directly with the rest of nixpkgs.
<andi-> __monty__: reading commits, reading #nixos-* following issues... :-)
<__monty__> I wouldn't mind overlays as an organizational management tool though. Have the cross-section of nix & haskell people manage the haskellPackages part, as long as it comes included with nixpkgs and doesn't take an extra step to configure.
<andi-> __monty__: no hard feelings.. It is just that sometimes I think one way or another is better... It flips. Both have pros & cons. I was aware when I wrote that, that I will not make many friends with that statement ;-)
<__monty__> andi-: I actually agree that nixpkgs is too big to maintain. People smarter than me should come up with a nice compositional architecture to solve that problem.
<infinisil> __monty__: "Compositional architecture"? I have no idea what that would mean
<andi-> why should one language be included in nixpkgs vs another? Or would you still ship all per default?
<__monty__> simpson: I've mused about that as well, it's a huge part of technical and infrastructure issues that just dissappear.
<simpson> infinisil: The idea is presumably that many small pieces would be composed together at runtime to provide the entire tree, and then presumably each piece could be independently maintained.
<__monty__> andi-: All the things. Nix should rule the world ; )
<simpson> __monty__: Kind of? You need to design your language for it. For example, Haskell's module system is not really great for portable modules.
<__monty__> infinisil: I'm thinking something like having haskellPackages in an overlay instead, and ditto for other packaging subuniverses, like gnome for example. I'm just not familiar enough with nix/nixpkgs to see whether overlays are the right unit of composition.
<infinisil> Well to be exact, all of nixpkgs is already just a bunch of overlays
<manveru> do you know about NUR?
<__monty__> simpson: Where does that turn up? haskellPackages doesn't feel very shoehorned in even though it's completely adhoc.
<manveru> simpson: https://github.com/nix-community/NUR might be a reasonable option :)
<__monty__> manveru: Just that it sounds like AUR. But the AUR is such a second class citizen on arch I haven't looked into it.
<simpson> __monty__: It's a problem because the only way to deal with Haskell modules is Haskell packages, which have terrible composition.
<manveru> i wouldn't call it second class... it just standardizes third party nixpkgs-alike repos
<__monty__> infinisil: Then maybe moving some overlays to seperate repositories manage by subcommunities can lighten the maintenance load?
Jason_Grossman has quit [Remote host closed the connection]
Jason_Grossman has joined #nixos-chat
Jason_Gr` has joined #nixos-chat
Jason_Gr` has quit [Remote host closed the connection]
Jason_Grossman has quit [Ping timeout: 276 seconds]
<andi-> I don't think the maintenance load will change/reduce with splitting stuff... It will probabl if at all increase since you now have to syncrhonize changes between repos
jtojnar has quit [Remote host closed the connection]
jtojnar has joined #nixos-chat
<__monty__> Moving the discussion that relates to a specific subcommunity to a seperate issue/PR tracker would help though, surely?
<gchristensen> help what?
<__monty__> Lighten the load on the nixpkgs maintainers.
<__monty__> Like andi- said, if you're a nixpkgs maintainer who has nothing to do with haskellPackages, all discussion/issues/PRs about that are noise making maintenance harder/more of a chore or at least a tad more annoying.
<__monty__> (I'm paraphrasing, that's not what andi- said exactly.)
<andi-> I don't think it is annoying everyone.. I just sometimes get upset about stuff where I have not knowledge of.. (can be ignored ;-)
Lisanna has quit [Ping timeout: 264 seconds]
ma27 has quit [Ping timeout: 264 seconds]
ma27 has joined #nixos-chat
NinjaTrappeur has quit [Ping timeout: 245 seconds]
pie__ has quit [Remote host closed the connection]
pie__ has joined #nixos-chat
jtojnar has quit [Remote host closed the connection]
jtojnar has joined #nixos-chat
jtojnar has quit [Remote host closed the connection]
jtojnar has joined #nixos-chat
NinjaTrappeur has joined #nixos-chat
__monty__ has quit [Quit: leaving]
NinjaTrappeur has quit [Ping timeout: 245 seconds]
NinjaTrappeur has joined #nixos-chat