gchristensen changed the topic of #nixos-chat to: NixOS but much less topical || https://logs.nix.samueldr.com/nixos-chat
<samueldr> IDentity crisis here
<drakonis> hmm
ornxka has joined #nixos-chat
risson has joined #nixos-chat
drakonis has quit [Quit: WeeChat 2.8]
slack1256 has quit [Remote host closed the connection]
drakonis has joined #nixos-chat
waleee-cl has quit [Quit: Connection closed for inactivity]
cjpbirkbeck has joined #nixos-chat
<ldlework> Would anyone like to read the forward to my Go tutorial?
cjpbirkbeck has quit [Quit: cjpbirkbeck]
rardiol has quit [Ping timeout: 256 seconds]
Jackneill has quit [Ping timeout: 240 seconds]
drakonis has quit [Read error: Connection reset by peer]
<ashkitten> augh, this server is so frustrating. we can't get an os to boot off a hardware raid configuration
<ashkitten> i think the bios disk interrupts don't work with this raid controller or something
Jackneill has joined #nixos-chat
<ashkitten> netbsd just hangs during early boot
<monsieurp> NetBSD <3
<eyJhb> MichaelRaskin: didn't know you could do that, thanks!
cole-h has quit [Ping timeout: 250 seconds]
__monty__ has joined #nixos-chat
<eyJhb> Anyone that can explain that on my computer, decoding protobuf is faster than encoding. But the same test on my friends computer, and basically everywhere I see it will result in encoding being the fastest.
<MichaelRaskin> Are you sure that asking that question without mentioning CPU families is a good idea?
<MichaelRaskin> (Also, did you try in Termux on a smartphone)
<__monty__> Are you running these tests on a TI-83?
<eyJhb> Mine is a i7-3520m, his is a ryzen 9 3900x MichaelRaskin
<eyJhb> Nope, haven't done so yet
<__monty__> That's a pretty big architectural difference right there.
<__monty__> So you shouldn't be surprised there's a difference.
<eyJhb> Intel, gogorptobuf
<eyJhb> Unmarshal (decoding is slower)
<__monty__> eyJhb: You're still comparing a desktop CPU with a laptop CPU.
<eyJhb> Trying on another lp :)
obadz has quit [Quit: WeeChat 2.8]
obadz has joined #nixos-chat
obadz has quit [Client Quit]
obadz has joined #nixos-chat
<eyJhb> __monty__: 5 computers tested, 2 desktop 3 laptops. Mine is the only one :p And all the others are intel based m
<__monty__> Are you running the tests in the same order?
tilpner has quit [Ping timeout: 264 seconds]
tilpner_ has joined #nixos-chat
tilpner_ is now known as tilpner
obadz has quit [Quit: WeeChat 2.8]
obadz has joined #nixos-chat
thibm has joined #nixos-chat
parsley936 has joined #nixos-chat
thibm has quit [Quit: WeeChat 2.6]
<eyJhb> __monty__: yes :)
<__monty__> Any other glaring differences you can identify? Memory, cache, disk, CPU tier, CPU gen?
<eyJhb> Nope, not really. It is all in-memory, but they should compare the "same".
<eyJhb> Only the speed should really chasge
<eyJhb> change
<__monty__> There's tons of factors that can influence timing.
<eyJhb> There is, but it seems weird that all cases on mine is faster at decoding. But my guess is it is CPU related + maybe version. Not sure
<gchristensen> so one down side (you may think it is major, critical, the-idea-is-dead-in-the-water) to patch based VCS is you depend on every patch applying exactly the same forever, and that isn't really something software is good at doing over time
<__monty__> That's why you need a formal foundation.
<__monty__> At least that allows you to decide whether an implementation is correct or no : )
<gchristensen> formally verified implementations never find bugs?
<gchristensen> formally verified implementations never have bugs*?
<srk> no, they have buggy specification
<gchristensen> too bad
<gchristensen> you need that implementation to be exactly the same forever
<MichaelRaskin> Note that the bugs can be both in the specification of the work to do, and in the specification of the execution model
<__monty__> Didn't claim they never have bugs. That's why I said it allows you to tell whether an implementation is correct or not.
<gchristensen> the problem is the very first version of the patch application code is by definition correct
<gchristensen> and the only proofs that matter is every patch that has ever been applied with it
<MichaelRaskin> I think Monotone uses patch storage as an optimisation (while theoretically operating on full states)
<MichaelRaskin> Software is actually pretty good at keeping doing the exact same thing. You just need to keep away everyone who says a module with zero commits in two years is dead and must not be used
<MichaelRaskin> Also, it is easy to apply patches to the state used for their creation. It is porting them cross-branch that is hard (but then you can save the result of porting)
<__monty__> Also, no one says you can't keep as many full snapshots of versions as git does.
<gchristensen> what happens if they disagree?
<__monty__> What do you mean?
<__monty__> If what disagrees?
<gchristensen> applying the patch and the stored version of the applied patch
<__monty__> Why would you do that?
<__monty__> The idea of the snapshot is you freeze a version and then start applying patches from that point again.
<__monty__> Hmm, if this is a concern. Shouldn't you be concerned about pulls/pushes and merges too with the git model?
<__monty__> If you push to someone using a different version they might get a different result.
<gchristensen> pulls / pushes? no
<gchristensen> no, none of that
<__monty__> Or are you assuming that'll be close enough to the source of the problem to detect?
<gchristensen> git stores the contents of files and trees of files, so the transport would never change it
<__monty__> LKML style patches then.
<__monty__> That's probably worse than something patch-based in the first place.
<srk> what does that even mean?
<srk> (LKML style patches)
<__monty__> Just git-sendmail.
parsley936 has quit [Remote host closed the connection]
<srk> but based on what? :)
<__monty__> What do you mean?
<srk> like rc, -next?
<__monty__> All of the above.
<srk> recently I've found patches needed for my lcd panel and edp bridge on freedesktop ml iirc and had quite hard time applying that to 5.5
<srk> asked author on irc, mailed me patches with "apply to xyz-next"
<srk> which isn't that bad! guessing where to apply is :)
<__monty__> That's not really relevant to the discussion imo. Even when you have the exact same branch on both machine and the exact same patch you might not have the same git version or some architecture specific bug might arise.
<srk> (sorry, I don't have all the context)
waleee-cl has joined #nixos-chat
<gchristensen> wow negative oil prices
<ldlework> Hello.
<eyJhb> MichaelRaskin: I feel I am missing sooo many functions in Asymptote. Currently have a map implementiation, join of string[], arrayIntToStrng and two functions to declace arrays in-line
<eyJhb> No clue if there is a way to do in-line arrays, couldn't find any
<MichaelRaskin> Pretty sure a lot of it exists but not ready to give a list of function names by heart
<MichaelRaskin> Literally map function exists
<MichaelRaskin> in-line array is «new int[]{0,1,2}»
rardiol has joined #nixos-chat
cole-h has joined #nixos-chat
emilazy has quit [Ping timeout: 245 seconds]
emilazy has joined #nixos-chat
drakonis has joined #nixos-chat
cjpbirkbeck has joined #nixos-chat
<cole-h> Hm. Recently, my pihole's DNS service has been dying at seemingly random times. Is this maybe indicative of a dying SD card?
<gchristensen> anything in dmesg?
<tilpner> Or journalctl?
<cole-h> log2ram is busted, so I need to fix that (journals were all rotated it claimed)
<tilpner> Yeah, fixing logs is probably a good investment either way
<cole-h> Just needed to bump the size, apparently /var/log is already 61M (and max size was 60M lol)
<ldlework> Is it correct to say that a nixos generation is simply the package in the store to which the nix-profile points to?
<srk> cole-h: log2ram?
<tilpner> cole-h: Perhaps you want to set SystemMaxFileSize
<cole-h> srk: log2ram. https://github.com/azlux/log2ram
<srk> cole-h: yeah, found it. wondering how's that different to Storage=volatile
<cole-h> tilpner: Where would that be changed?
<ldlework> gchristensen: help
<tilpner> ldlework: In a sense, yes. Although I would call it a derivation to not confuse people coming from apt
<ldlework> drakonis: ^
<ldlework> tilpner: what i mean is, it's a thing in the store, no different than any other
<cole-h> srk: No clue :D I just remember it being suggested when I was setting up the pihole... N years ago :P
<srk> ^^
<tilpner> ldlework: Yes, that's correct
<ldlework> except perhaps that this store entry is comrpised of mostly symlinks to other store paths?
<ldlework> which may be particularly unusual
<cole-h> (before I was decently prolific with Linux)
<ldlework> tilpner: thanks.
<drakonis> hello
<drakonis> workin' on writing the nix la karda
<srk> cole-h: there's a lot of weird stuff suggested for pi, like rpi.gpio :)
<tilpner> cole-h: In services.journald.extraConfig
<cole-h> tilpner: Heh, this pi isn't Nix-based :P A project for another day, no doubt
<srk> I wanted to package pihole / ftl ..
<tilpner> cole-h: Then perhaps in /etc/systemd/journald.conf
<cole-h> Indeed, thanks. I was trying `/etc/journald.conf` and it wasn't tab-completing :P
<cole-h> tilpner++
<{^_^}> tilpner's karma got increased to 81
<drakonis> are the manifest.nix files new or have they always been around?
<drakonis> i have never gone deep into profiles
<drakonis> to notice them
<tilpner> They've been around for a few years at least
<drakonis> hmm okay
<drakonis> i see
<drakonis> there's currently no mechanism for using manifests to install complex outputs into the profile?
<drakonis> ie: i want to install emacs but with extra packages into it
<drakonis> libraries never worked really well with profiles in the past due to that, right?
<tilpner> Ehh?
<tilpner> Why do you want to use a manifest.nix for that?
<drakonis> oh sorry, i think i might've mixed things up here
* ldlework has never heard of manifest.nix
<drakonis> i'd like to write down a arbitrary set of packages on a manifest.nix to use it with a user profile
<drakonis> however, libraries have never worked really well with profiles and i'd like to know why
<ldlework> drakonis: do you mean like "in this profile, I want to use this version of FooLib" ?
<drakonis> like that, yes.
<tilpner> ,declarative
<drakonis> oh no
<{^_^}> There are multiple ways of managing declarative profiles. 1) Attrset, compatible with imperative use of nix-env https://git.io/fAQHW ; 2) buildEnv, providing more control over the paths that are linked into the profile https://git.io/fp0aU ; 3) home-manager, providing nixos-like config for your ~ https://github.com/rycee/home-manager
<drakonis> ,libraries
<{^_^}> Don't install libraries through nix-env or systemPackages, use nix-shell instead. See https://nixos.wiki/wiki/FAQ/Libraries for details.
<ldlework> You'd have to provide a global override causing everything that uses it to be rebuilt.
<ldlework> Nothing will use that version, unless specifically told to as one of their inputs.
<tilpner> No, not really
<ldlework> And changing the input causes a recompile, if the thing doesn't already exist.
<ldlework> tilpner: which part was inaccurate?
<ldlework> there seems to be senses in which you would want to say "use this version of this library"
<ldlework> it would be "for everything that uses that library"
<ldlework> or "for these specific packages that use that library"
<ldlework> so either a global override, or per-package ones
<drakonis> there is a mechanism for swapping inputs but its not in wide usage
<ldlework> but in either case, there has to be some "dependent" of that special version of the package you're declaring
<tilpner> You can surgically replace library versions with overrides, so it can be package-local
<ldlework> right
<tilpner> Or you can replace library versions with overlays on a nixpkgs-instantiation level
<ldlework> right
<tilpner> At which point we need to clarify what was meant by "global"
<drakonis> now, global would be best described as a layer
<tilpner> It certainly doesn't need to infect unrelated profiles or even the system
<drakonis> it can come in before or after the list of packages and modify the inputs
<ldlework> i was speaking more to a nixpkgs instance
<ldlework> but good clarification yeah
<tilpner> And then you would be correct, but "global override" could be misunderstood to mean "actually global, as in every instantiation of nixpkgs on a given system"
<drakonis> i'd like to use that as a profile layer that doesn't require rebuilding everything
<drakonis> only apply it to a specific set of packages
<adisbladis> drakonis: What are you trying to achieve ?
<adisbladis> I don't really get it
<drakonis> given a specific set of packages, i'd like to change a specific shared dependency without having to individually modify each one of them
<drakonis> an example would be swapping the libc
<adisbladis> So basically a scoped overlay ?
<drakonis> its not the thing i want to do
<cole-h> "Your Fall 2020 registration appointment has been assigned. Check your student center for your specificdate and time." -> student center gives a 403
<drakonis> hmm, sure
<cole-h> Nice
<drakonis> actually i'm missing some details here
<drakonis> the one last bit is duplicate the resulting and not use it as a dependency for anything
<drakonis> but that should be doable
<drakonis> anyways, its not going anywhere and i'm just tripping myself here
<eyJhb> MichaelRaskin: map as in dictionary test["something"] = T. Ah, I missed the keyword! Thanks
<infinisil> If I decide "I'll use this license for my project", what's the best way to go from that to having a correct LICENSE file in the repo?
<ldlework> MichaelRaskin: so in the Wolfram working group today, Jonathan pointed out to Wolfram that the graph he showed in the article was not an event horizon blackhole of the causal graph, but a symmetric comsomological horizon in rulial space
<ldlework> They're currently going to try to build the actual asymmetric event horizon. Some of the reasons they talked about were similar to what you said. If you want me to find a timestamp just let me know.
<infinisil> E.g. say I have an SPDX identifier like GPL-3.0-or-later and wish to get the license text, any straightforward way to find it in a text-file ready format?
<gchristensen> the best way is probably https://choosealicense.com/ :)
<MichaelRaskin> No, probably not worth the effort — but thanks for telling me what the picture really illustrated.
<tilpner> infinisil: https://spdx.org/licenses/ ^F gpl-3 and follow the link for plaintext
<infinisil> tilpner: Only shows the html version for me
<tilpner> Huh, right. I only checked for agpl
<tilpner> (For which there is a text version, and that seemed good enough)
<cole-h> infinisil: Doesn't GitHub have a license-chooser of sorts? (Assuming you're hosting this project on GitHub)
<MichaelRaskin> Symmetric cosmological horizon makes sense, sure.
<tilpner> Generate it from https://github.com/spdx/license-list-XML /s
<MichaelRaskin> ldlework++ — follow-ups with more details are always nice
<{^_^}> ldlework's karma got increased to 9
<infinisil> gchristensen: Hm that's decent, though if I check gpl3 there, it doesn't seem to differentiate between GPL-3.0-or-later and GPL-3.0-only
<MichaelRaskin> (searches for what rulial space roughly is)
<infinisil> tilpner: Oh nice
<infinisil> Guess I'll clone that and then cp from the repo to my project :D
<infinisil> Oh and indeed, diff GPL-3.0-only.txt GPL-3.0-or-later.txt -> no difference
<cole-h> :P
<infinisil> cole-h: Would fit nice in a small bash function :o
<infinisil> And you wouldn't have to git pull if you want to make sure you have latest versions
<__monty__> No difference in the license text? That doesn't sound light.
<__monty__> *right
<__monty__> Sounds pretty dark too though.
<cole-h> `spdx() { curl 'https://raw.githubusercontent.com/spdx/license-list-data/master/text/"$1".txt' -o LICENSE }` and `spdx GPL-3.0-or-later` :^)
<cole-h> (assuming POSIX-ish)
<infinisil> __monty__: Yeah not sure what's up with this either
<MichaelRaskin> That's always the problem, the copying file is the same (as it is GPLv3, obviously) and only the reference to it is modified by «or, at your option, any later version»
<MichaelRaskin> Annoying, sure
<__monty__> MichaelRaskin: But isn't that part of the license text?
<MichaelRaskin> But I don't need SPDX to know this problem
<MichaelRaskin> __monty__: in FSF/GNU opinion, there is license text and there is application of the license and they are somehow separate…
<infinisil> cole-h: That quoting doesn't look right though
<cole-h> Yeah, oops
<cole-h> s/'/"/g :^)
<__monty__> MichaelRaskin: Like, it's part of this license text: https://www.gnu.org/licenses/gpl-3.0.txt
<__monty__> I would expect the text for the gpl-3.0-but-not-later to not include that part.
<MichaelRaskin> This is informative part,
<MichaelRaskin> this is under the section «how to apply GPL to your programs»
<__monty__> And that's not part of the license text?
<MichaelRaskin> It's part of the license as published by FSF
<MichaelRaskin> But it does not actually cover the work it is attached to
<infinisil> Oh, I'm also just noticing that the license-list-data repository doesn't have the right indentation for gpl3 :/
<infinisil> While __monty__'s link above doesn't have that messed up
<infinisil> Well not a big problem, but it's just more confusing to read
<__monty__> MichaelRaskin: Well that's confusing for no reason...
<MichaelRaskin> __monty__: having the non-normative part is not so confusing per se
<MichaelRaskin> Having this mess of «or later» being hard to establish is sure confusing
<infinisil> Oh! I'm just noticing that the new github notifications can now be sorted by repository. I remember somebody here wanting this
<__monty__> Yippee!
elvishjerricco has quit [Ping timeout: 265 seconds]
elvishjerricco has joined #nixos-chat
<MichaelRaskin> OK, maybe having a setup where local BIND loads a local copy of the root zone and then not updating the root zone by April 20th was a bad idea…
<cole-h> Could you briefly explain exactly what you just said? I'm assuming this is related to DNS somehow, but other than that, everything went over my head...
<__monty__> Why does today matter for DNS?
<MichaelRaskin> Well, now that they have revealed DNSSEC ceremoneies about root signing are just bluff (but updated the signatures) it kind of doesn't…
<MichaelRaskin> I run local BIND which is partially resolver for local zones, partially a recursive resolver and partially a forwarder.
<MichaelRaskin> It verifies DNSSEC whenever it is supposed to exist.
<MichaelRaskin> It takes root zone signatures from a local downloaded copy of the root zone.
<MichaelRaskin> Old root zone signature expired today.
parsley936 has joined #nixos-chat
<MichaelRaskin> Around a month ago there was this ceremony for signing the root zone again. The first attempt failed because the safe storing part of keys was mechanically failing.
<MichaelRaskin> In the process, it turned out that of course in the normal situation this safe can be opened by technical staff without the high-recognition key guardians… In this case it could not be opened by anyone, though
<MichaelRaskin> Some people started to brace for impact, because if the zone signature would not be renewed by today, a lot of interesting failures would happen.
<MichaelRaskin> But safe was talked into compliance
cbarrett has quit [Ping timeout: 265 seconds]
<cole-h> "Talked" heh
<danderson> drills can talk :P
cbarrett has joined #nixos-chat
<MichaelRaskin> I am not sure a drill was involed, actually.
<samueldr> danderson: drill chatter
<samueldr> I rest my case
<danderson> *golf clap*
<MichaelRaskin> It might have been some well-aimed percussive maintenance to make sure nothing is stuck where it should not be, and some lockpicking aided by having all the key material.
<samueldr> [previously on #nixos] I had an horrible time converting a wifi led light bulb to tasmota
<samueldr> well, the conversion was straightforward
<cole-h> What is "tasmota"?
<samueldr> it'll be exposed in due time :)
<cole-h> OK OK, I'll be patient x)
<samueldr> probably more than trying to actually pair the thing using the closed source ecosystem the company is "selling"
<samueldr> (more straightforward)
<samueldr> tuya-convert abuses the fact that most WiFi "smart" "things" are from one ODM that switches around some bits and bobs on the board
<samueldr> and hijacks the update protocol to dump tasmota or another Free firmware
<samueldr> tasmota is, as can be understood, a Free replacement firmware for "smart" "things" https://tasmota.github.io/docs/
<MichaelRaskin> So far so bad!
<makefu> it is a nice way to liberate your iot thingies
<makefu> normally you can directly reflash the esp8266 via serial console, however wifi is much easier
<srk> get esp8266 on a breakout and attach a relay :)
<srk> ^^
<makefu> please not, at least not vor 220v (or 110)
<samueldr> exactly
<samueldr> :)
<makefu> well made devices are still only 5€
<srk> who's talking about 230? :)
<makefu> check out sonoff, they are easily flashable
<srk> LEDs don't need mains, and mains can be done safely
<samueldr> btw I was not already involved with WiFi "smart" "things" that way, I got that cheap bulb from a local store to confirm it would be as horrible as one would think
<samueldr> so, continuing
<samueldr> the conversion process was straightforward, but I did cheat and followed the instructions requiring a raspbian and raspberry pi 3B
<samueldr> I didn't want to shave that yak before knowing it would even work :)
<samueldr> where the fun began is that WiFi is extremely congested here
<srk> and you need 2.4G oldskool one :D
<samueldr> yep
<samueldr> that was one of my main concern with WiFi based "smart" "things"
<samueldr> and it was confirmed
<samueldr> they suck because of that congestion!
<srk> join me a go wired
<srk> *and
<makefu> when wifi is congested use more wifi
<samueldr> it wouldn't connect to my AP
<samueldr> but I first assumed it might have been because of its name
<samueldr> see
<samueldr> my WiFi AP is named "┻━┻ミ\(≧ロ≦\)"
<makefu> that could be due to many things though
<cole-h> Nice AP name :D
<srk> :D lol, my 2.4g is called notso1337
<samueldr> but in the end it wasn't because of that, it just has extremely poor reception due to all the interference
<cole-h> Imagine if you made it undiscoverable and had to type that name by hand
<samueldr> sometimes the ping to that lightbulb shoots to ~26s
<MichaelRaskin> I kind of expect the story to turn to erecting a shrine to St. Faraday… sorry, a Faraday's cage around the experimental area.
<samueldr> yes, seconds
<srk> it's not only reception but also DoS possibility
<samueldr> that's not even the frustrating bit, that was kinda expected so I braced for it and grit my teeth
<srk> and well.. not being able to turn on the light if wifi is down (sometimes) :D
<makefu> so that is the "smart home" everybody is talking about!
<samueldr> "smart"
<srk> yes, pretty much :) current state is pretty funny
<makefu> saving electricity by not being able to turn on the light
<srk> or off!
<samueldr> btw, I was already setup and really satisfied with Zigbee-based Philips Hue
<samueldr> I only did that as an experiment, a trial run, see how bad it could be
<srk> eps8266 + ws2812
<srk> and udp :D
<srk> provided ambilights are not that critical
<samueldr> once this was all setup, and working, most of the time without that much of a terrible ping
<samueldr> I started building me a yak to shave
<samueldr> and try home-assistant
<srk> :))
<samueldr> let's say that the nixos config options are made for those that already know how it works and how to configure it
<srk> I've had hard time with it, trying to make it do 'echo bitOfLua() | nc ..'
<samueldr> that was the unexpectedly annoying part
<srk> I've could have written a full web app in that time :-x
<samueldr> so many undocumented bits in nixos, or badly documented with options referenced that are not options :(
<cole-h> Do I smell another PR coming on?
<srk> like "free" dashboards are nice but even that is not that easy
<cole-h> :P
<samueldr> I don't know
<samueldr> and it's really been built for declaratively managing the home-assistant setup, which is really not fun when you don't know anything about it and you want to get a tour of its features before committing to it
<makefu> samueldr: i have a quite sophisiticated home-assistant configured in nixos (or three actually)
<makefu> for me, sample code is always gold
<samueldr> I tried to search for it a bit, but found nothing useful :/
<samueldr> though the worst bit was mosquitto, which I didn't know how to test for
<makefu> https://git.shackspace.de/rz/stockholm/tree/master/makefu/2configs/ham < my home automation setup (actually at home)
<samueldr> I didn't know whether it was home-assistant being misconfigured, the bulb being misconfigured, or the settings
<samueldr> ended up figuring it out by extrapolation
<samueldr> but the worst part is tasmota+home-assistant, the most relevant instructions to make them see eachother is "fiddle with it until it works"
<makefu> https://git.shackspace.de/rz/stockholm/tree/master/krebs/2configs/shack/glados < home-assistant setup at the local hackerspace
<makefu> this is why i like esphome better, it is more straight forward what actually happens
<samueldr> (and an unnamed option in tasmota that you had to know to change)
<makefu> and there is no need to re-implement the api in home-assistant
<makefu> because of autodiscovery
<samueldr> anyway I'm not sold to it, it's a play thing :)
<samueldr> I'm not planning to rely on it working
<samueldr> that's what's the philips hue is for
<makefu> that is a good way to think about it
<makefu> i have a quite good track record for devices set up with esphome. however my wifi situation is not as bad as yours it seems
<samueldr> relatively dense residential development
<samueldr> with many fighting wireless networks
<samueldr> including many fun things like printers broadcasting
<srk> I've considered generating/templating lua with nix for nodemcu as the apps get repetitive quickly
<srk> hmmmm
<srk> it could combine nicely with home-manager commands or even home-assistant on the other side
<samueldr> anyways, I'll probably end up writing a custom thing to manage all that, I'll look at the different Free software firmwares
<srk> exactly
<samueldr> the more annoying part, flashing it initially, has been handled
<samueldr> I'm not pretty free to experiment
<samueldr> now*
<srk> try nodemcu, repl on it is fun :)
<srk> or micropython
<samueldr> I'll take my smart things with lua on them please :)
<srk> can be turned into netboot (I think!) :)
<samueldr> I probably need one that has some batteries included, though, meaning that configuring how the RGBW things are configured is trivial enough
<srk> needs nix!
misuzu has quit [Quit: leaving]
misuzu has joined #nixos-chat
<MichaelRaskin> srk: you say netboot like it is a good thing! I mean, it is, but not over WiFi _there_
<srk> MichaelRaskin: I'm not advocating for any WiFi for critical stuff :) only wired
<srk> It could be done with fallback to stored app as well
<srk> but all my apps now start with 'wait for wifi' since they are mostly useless without it
<srk> s/all/most
<srk> .. shouldn't have touched that repo, now I'm pumped to add all this ideas
<samueldr> haha
tokudan has joined #nixos-chat
<srk> samueldr you did it again
<samueldr> oops?
<samueldr> what did I do again?
<srk> samueldr: brainstorming leading to $work :D
<srk> samueldr: yesterday it was due to recent discussion about git subcommands with drakonis - now I have https://github.com/sorki/nur-packages/blob/master/hm-modules/custom-command.nix
<drakonis> nice
<drakonis> nix subcommands huh
<drakonis> that's real nice
<srk> I'm not sure! I now want to implement it in haskell to be able to improve the bash thing
<srk> :D
<srk> it might be possible to augment arbitrary command with this
<drakonis> time to augment the nix cli
<drakonis> that'll be good
<samueldr> srk: I'm really good at sniping myself into problems
<samueldr> I figure it's time others are affected too
<srk> samueldr++ ;)
<{^_^}> samueldr's karma got increased to 215
<worldofpeace> ✨ samueldr
<{^_^}> samueldr's karma got increased to 216
<srk> cole-h: ha, thanks :) almost comonad
<cole-h> There's another a few lines below, too :P
<cole-h> Line 79
<srk> pff
<cole-h> ;)
<srk> fixd! :)
<srk> that bash needs work tho, can't handle defaults for sub-commands
<srk> night o/
<cole-h> o/
__monty__ has quit [Quit: leaving]
nckx has quit [Quit: Updating my Guix System — https://guix.gnu.org]
nckx has joined #nixos-chat
<infinisil> How about having a builtins.printf
<gchristensen> O.o
<infinisil> Thinking of this because https://github.com/NixOS/nixpkgs/pull/85635 introduces hex conversions written in nix
<{^_^}> #85635 (by basvandijk, 1 hour ago, open): Support more than 99 nodes in NixOS tests & export toHex and toBase
<infinisil> And with a standard printf, that could be used instead
<infinisil> Would be a very simple pure function that could be very versatile
<infinisil> Lemme see if there's some other uses for it..
<samueldr> "a standard printf", would have to be more standard than regexes in nix
<samueldr> read: not blindly use the system's
<infinisil> Oh yeah that would be nice heh
<infinisil> > lib.fixedWidthString
<{^_^}> <LAMBDA>
<infinisil> Could also replace this ^
<infinisil> Oh it would also be a workaround for the float printing problem, as you could control the precision with it
<cole-h> 👀
<MichaelRaskin> A portable float-printing behaviour? Sounds like a significant amount of work…
<infinisil> Hm, isn't printf like a standard C function? It would probably be fine to use that
<samueldr> it's POSIX, IIRC, and there are extensions
<MichaelRaskin> Standard and portable behaviour are different things…
<samueldr> like, can you use %m?
<gchristensen> soon: builtins.i18n
<samueldr> (that's more needed than you think)
<MichaelRaskin> More like «are you sure you can use %f with 1.7 and get the same string on different platforms»
<samueldr> MichaelRaskin: yes, even more!
<samueldr> two levels of differences, differences in valid inputs, and in expected outputs
<MichaelRaskin> There is also the question how much is 1.7/3.1 - 0.17/0.31 …
<MichaelRaskin> Well, it just says rounding is implementation-specified
<gchristensen> let's make it equal to 1
<MichaelRaskin> Not _so much_ implementation-specified.
<gchristensen> oh
<MichaelRaskin> Only the least significant digit
<MichaelRaskin> A rare case where something in C is implementation-specified, and then actually constrained
<gchristensen> :)
<gchristensen> 1.7/3.1 - 0.17/0.31 is actually the secret back-door which lets your drv access the network
<gchristensen> lol
slack1256 has joined #nixos-chat
<MichaelRaskin> Hmmm. Full WebAssembly support accessed via underspecified float operations? I am afraid that might be hard to get through review
<kraem> i'm super curious; how/why dtz is maintaing a fork of nixpkgs that is so diverged from nixpkgs upstream? (excuse my ignorance)
<kraem> s/maintaing/maintaining/
<gchristensen> kraem: it might be interesting to compare dtz's code to nixpkgs and see what is different
* kraem on it
<drakonis> oh that's interesting
<drakonis> there's a lot of version bumps in it
<drakonis> maybe it'd be interesting to run diffoscope on it
<gchristensen> I'd bet it had to do with his degree where he was doing a lot of research around llvm and musl
parsley936 has quit [Remote host closed the connection]
<{^_^}> nix#1973 (by dtzWill, 2 years ago, open): [WIP] [preview] Single static binary for Nix+deps (bash, coreutils, ...) via ALLVM
<drakonis> seems to be largely version bumps
<samueldr> oh, nixpkgs, duh, I thought of nix
<drakonis> gchristensen: a rare sighting
<drakonis> walking up to someone's face and saying "have you tried x but lisp"
<gchristensen> drakonis: it mirrors my own experiences. people vehemently hating the lisp alternative to something
<drakonis> i'm entirely okay with existing
<drakonis> with it existing
<drakonis> i only wish it didn't have to be so strongly attached to gnu
<gchristensen> oh sure
<drakonis> bold move though
<ldlework> been thinking that someone should make a tool which creates nix shell templates
<gchristensen> :)
<drakonis> the tex packageset isnt complete
<ldlework> something kind of like the dotnet cli's project template system
<gchristensen> ldlework: fpm but for nix?
<drakonis> hmm
<drakonis> it gives you the option to download all of texlive
<drakonis> but not just a subset of it
<ldlework> wanna test something in typescript really quickly? "nixit create ts webapp"
<ldlework> gchristensen: not sure what that is
<drakonis> ohhh that sounds like fun
<drakonis> its a php thing
<gchristensen> ldlework: https://github.com/jordansissel/fpm
<samueldr> I thought it was about the foreign package management thing
<samueldr> yep
<drakonis> oh that is nice
<ldlework> this doesn't sound quite like what i was thinking but i'm not exactly sure what it is yet
<drakonis> i have a better one
<drakonis> pick a build system, target a repo and it'll build a template
<drakonis> alternatively, there's some guy's wacky proposal to automate packaging things but i figure it is kinda off the scope
<kraem> gchristensen samueldr oh, cool. to be able to run that alongside nixpkgs upstream must incorporate a lot of automation :)
<gchristensen> :)
<drakonis> i want to find the repository again
<ldlework> i don't really care about the details
<drakonis> its very detail free
<ldlework> i'm saying, dotnet cli-like, guix potlot-like, doesn't matter to me
<drakonis> just tell it what to do and it will try to its best to output a workable package
<drakonis> its ok
<ldlework> i just wanna be able to push a button and get the community's current best-practices standards as a python nix-shell boilerplate or whatever
<drakonis> yes that'd be great
<drakonis> please do it
<gchristensen> +1
<gchristensen> ldlework++
<{^_^}> ldlework's karma got increased to 10
spacekookie has quit [Quit: No Ping reply in 60 seconds.]
<MichaelRaskin> «the community's current best-practices» — OK, for Python this actually could work…
<drakonis> a godsend for python
<ldlework> i did something for emacs packages and no one used it i dunno
spacekookie has joined #nixos-chat
<ldlework> something similar*
<drakonis> well its emacs tho
<drakonis> emacs seems to be easy to get to cooperate
<drakonis> lol while looking for that weird script for automating packaging, i found this https://hands-on.cloud/why-you-should-never-ever-use-nixos/
<drakonis> wtf
<drakonis> this is some high octane wtfs
<drakonis> thanks google
<drakonis> i didnt need to find out that this existed
<ldlework> drakonis: you should write it
<drakonis> hmm, maybe?
<gchristensen> lol
<gchristensen> I'm glad to see we're good enough to make people mad enough to write blog posts
<ldlework> they make a few valid points but yeah this is pretty humorous
<drakonis> it was written in 2018 it seems
<drakonis> still quite funny
<ldlework> drakonis: what langauge would you use
<drakonis> i can write python but i've been looking into exploring other languages
<drakonis> try to actually learn a lisp
<drakonis> write some real lisp code instead of basic stuff
<MichaelRaskin> gchristensen: basically this article is what one needs to know about Java use
<drakonis> perhaps give ocaml a shot
<drakonis> autobake lol
worldofpeace_ has joined #nixos-chat
<ashkitten> ahaha
<ashkitten> that looks hella useful
<pie_[bnc]> drakonis: 420
<drakonis> that's me
<drakonis> i knew i had found it in the newsletter
<drakonis> i'm harvesting the karma now
<drakonis> too bad i cant post it to reddit's programming subreddit
<drakonis> and /r/linux is too fiddly
<ashkitten> jamey is cool, i should bug him to set up irc or matrix or whatever
<ldlework> that's a funny project
<ldlework> but why not!
<drakonis> i'm gonna be high on nix
<gchristensen> MichaelRaskin: not bad!