gchristensen changed the topic of #nixos-chat to: NixOS but much less topical || https://logs.nix.samueldr.com/nixos-chat
<hexa-> ^ same!
<hexa-> it just looks TOO EASY
<gchristensen> :)
<gchristensen> great!
<gchristensen> I mentioned it a week ago or so, but ... yeah, I'd be interested in seeing something like this be like, a reference architecture
<hexa-> also very interested in that secure boot setup :3
<hexa-> pretty sure I subscribed to that some time last year
<hexa-> happy that the pull gets some new attention
<gchristensen> yeah I'm excited to see that come through
<gchristensen> "price cut: $100,000"
<samueldr> out of?
<gchristensen> now down to $449,900
<gchristensen> which is pretty a lot
drakonis has joined #nixos-chat
<gchristensen> I like where I live a lot, but there is a very specific category of house I would move to if it became available for a good price ... and it is concievable that an airbnb host overextended on mortgages is in trouble and needing to sell quickly ... so I've been browsing just in case
drakonis_ has quit [Read error: Connection reset by peer]
drakonis has quit [Read error: Connection reset by peer]
drakonis has joined #nixos-chat
<gchristensen> also I find "realtor speak" funny.
drakonis_ has joined #nixos-chat
<cole-h> You gonna host a party at your new crib if you find one? :P
<gchristensen> I'd love to host a Nix BBQ :P
drakonis has quit [Ping timeout: 260 seconds]
drakonis has joined #nixos-chat
drakonis_ has quit [Ping timeout: 256 seconds]
<gchristensen> I like this ff 75 search bar
drakonis_ has joined #nixos-chat
<cole-h> Really
drakonis has quit [Ping timeout: 260 seconds]
ottidmes_ has joined #nixos-chat
ottidmes_ has quit [Remote host closed the connection]
ottidmes has quit [Quit: Leaving]
waleee-cl has quit [Quit: Connection closed for inactivity]
ottidmes has joined #nixos-chat
ottidmes has quit [Client Quit]
aleph- has quit [Ping timeout: 264 seconds]
aleph- has joined #nixos-chat
aleph- has quit [Ping timeout: 256 seconds]
aleph- has joined #nixos-chat
aleph- has quit [Ping timeout: 258 seconds]
aleph- has joined #nixos-chat
aleph- has quit [Ping timeout: 256 seconds]
aleph- has joined #nixos-chat
Emantor has quit [Quit: ZNC - http://znc.in]
Emantor has joined #nixos-chat
endformationage has quit [Quit: WeeChat 2.6]
danderso1 has joined #nixos-chat
danderson has quit [*.net *.split]
clever has quit [*.net *.split]
makefu has quit [*.net *.split]
cjpbirkbeck has quit [Quit: cjpbirkbeck]
makefu has joined #nixos-chat
evanjs has quit [Quit: ZNC 1.7.5 - https://znc.in]
evanjs has joined #nixos-chat
drakonis1 has quit [Quit: WeeChat 2.8]
cole-h has quit [Quit: Goodbye]
<sphalerite> gchristensen: re your blog post — do you know that the systemConfig parameter isn't used by nix's boot process?
<sphalerite> gchristensen: it's legacy, needed for booting really ancient nixos systems (from before we both started using nixos I think :p )
<sphalerite> gchristensen: the boot parameter that decides the generation to boot is init= :)
<edef> i think even before NixOS got merged into nixpkgs…
<edef> just a few more months till we hit a full decade since that was removed
<edef> i *think* we can reasonably remove that at this point
<edef> i strongly doubt we've not broken the upgrade path from 2010 NixOS in some other way
<edef> of course, it's not implausible that this stuff has ossified into some other ecosystem tools
<edef> although i suspect reading /run/{booted,current}-system is probably obvious enough that this'd be rare
drakonis has joined #nixos-chat
danderso1 is now known as danderson
drakonis_ has quit [Ping timeout: 256 seconds]
rardiol has quit [Ping timeout: 250 seconds]
drakonis_ has joined #nixos-chat
drakonis has quit [Ping timeout: 246 seconds]
<srk> drakonis1: CA is the best mod :) ql seems to have some players https://qlstats.net/, xonotic btw https://stats.xonotic.org/
<srk> drakonis1: I'm gonna stick with teeworlds and springRTS for now or else I wouldn't get much done :)
Jackneill has quit [Ping timeout: 260 seconds]
__monty__ has joined #nixos-chat
jtojnar has quit [Quit: killed]
Irenes[m] has quit [Quit: killed]
leons has quit [Quit: killed]
colemickens has quit [Quit: killed]
thefloweringash has quit [Quit: killed]
rycee has quit [Quit: killed]
arcnmx has quit [Quit: killed]
worldofpeace has quit [Quit: killed]
dtz has quit [Quit: killed]
tokudan[m] has quit [Quit: killed]
vaibhavsagar has quit [Quit: killed]
aanderse has quit [Quit: killed]
leonardp has quit [Quit: killed]
emily has quit [Quit: killed]
yegortimoshenko has quit [Quit: killed]
nocent has quit [Quit: killed]
Jackneill has joined #nixos-chat
nckx has quit [Ping timeout: 264 seconds]
nckx has joined #nixos-chat
thibm has joined #nixos-chat
colemickens has joined #nixos-chat
Jackneill has quit [Read error: Connection reset by peer]
vaibhavsagar has joined #nixos-chat
leonardp has joined #nixos-chat
worldofpeace has joined #nixos-chat
leons has joined #nixos-chat
rycee has joined #nixos-chat
emily has joined #nixos-chat
aanderse has joined #nixos-chat
yegortimoshenko has joined #nixos-chat
nocent has joined #nixos-chat
arcnmx has joined #nixos-chat
dtz has joined #nixos-chat
jtojnar has joined #nixos-chat
Irenes[m] has joined #nixos-chat
tokudan[m] has joined #nixos-chat
thefloweringash has joined #nixos-chat
Jackneill has joined #nixos-chat
KeiraT has quit [Ping timeout: 240 seconds]
thibm has quit [Quit: WeeChat 2.6]
__monty__ has quit [Read error: Connection reset by peer]
__monty__ has joined #nixos-chat
KeiraT has joined #nixos-chat
<infinisil> Goddamn, RIP John Conway
<__monty__> Hearing the news over and over from different places is a bit like Life. I like that.
<MichaelRaskin> (of course, Life being _the only_ association to his name annoyed Conway)
<__monty__> Much like being known only for H2G2 annoyed Douglas Adams.
<eyJhb> Anyone knows a good way to easily copy over a mysql DB from one server to the other every week?
<srk> there's this automysqlbackup service
<srk> not hands on experience, just know it exists
<eyJhb> That just creates a backup file :D The DB in itself is around 25 GB exported
<MichaelRaskin> __monty__: it's another order of magnitude, the things Conway valued most, the things colleagues valued most and the thing mostly known are three non-intersecting sets, more or less
<srk> eyJhb: combine with nfs
<__monty__> I don't know too much about him. Thought one of his things was teaching math through games? Life seems to at least have sparked in interest in many.
waleee-cl has joined #nixos-chat
ottidmes_ has joined #nixos-chat
KeiraT has quit [Ping timeout: 240 seconds]
KeiraT has joined #nixos-chat
ottidmes_ has quit [Quit: Leaving]
KeiraT has quit [Quit: KeiraT]
KeiraT has joined #nixos-chat
<infinisil> What is up with the amount of vague questions in #nixos..
<infinisil> "virtusviri7321[m | Hmm guys , sddm doesn't start after NixOS install . I've followed all the steps"
<infinisil> "woffs | hmm, nixos-rebuild -p does not work as expected anymore?!"
<infinisil> "siers | I'm on t490s and my wifi isn't working."
<infinisil> "Izorkin | How to correct write code - ReadWritePaths = [ "${cfg.stateDir}" "${cfg.logDir}" ] ++ optionalAttrs (cfg.sandboxWriteDir != []) [ "${concatStringsSep " " cfg.sandboxWriteDir}" ];"
<infinisil> Like come on, this is a public channel with people using their free time to help people, have some decency and write complete questions with lots of info
<immae> infinisil: maybe non-english people got interested in nixos somewhere in the world?
<__monty__> Those are all nicks I recognize though.
<__monty__> Not new ones, except for maybe virtus...
<__monty__> Maybe they've just come to expect answers?
<Valodim> infinisil: can I ping you about my buildMachine as submodule PR? :) https://github.com/NixOS/nixpkgs/pull/83104
<{^_^}> #83104 (by Valodim, 3 weeks ago, open): nixos/nix-daemon: Organize buildMachine options with a submodule
<infinisil> Valodim: Will take a look soon :)
<Valodim> thanks!
<infinisil> immae: I wouldn't mind anybody using a translation software if it helps them
<MichaelRaskin> immae: NixOS started as a supermajority English-second/third-language project, after all… But this is about absolute amount of information, not typos or grammar structure
ixxie has joined #nixos-chat
<immae> Sure... I have a feeling that nix has a bigger popularity on occidental cultures (even European?), and the notion of politeness might be different in other countries further from this region, which is why their message seem rude when they’re maybe not meant to
<immae> (I’m not trying to find them an excuse of course, just a possible explanation)
<gchristensen> it isn't a rudeness thing immae but a badly stated question :)
<MichaelRaskin> immae: lack of polite additions and lack of data are different
<immae> ah sorry I misunderstood the topic :D
<MichaelRaskin> I think the channels never were consistently high on «please» usage (and we are still fine on «thanks»)
<immae> ok
<sphalerite> infinisil: well, how to gather useful information might also not be obvious to them.
<joepie91> I don't really care whether people say 'please' or 'thanks' either, what I care about is also the amount of information
<joepie91> sphalerite: I find that those people usually either explicitly say "I don't know what other information is needed", or they include superfluous information
<joepie91> ie. they try to include information
<joepie91> my data is mostly from #Node.js, not #nixos, so there may be some differences there... but IME the people who don't provide enough information do so consistently, even after being told repeatedly to provide more information
<joepie91> and/or explained how to do so
<sphalerite> idk, a "thanks" makes me happy :)
<joepie91> oh yeah, sure, but I won't expect it from people :)
<infinisil> I wouldn't mind people asking "Hey, bla bla doesn't work, how can I debug this problem?"
<joepie91> I've certainly interacted frequently with people who just respond with an "ok" after getting the answer, but they clearly put effort into asking the question well, so that's fine with me
<infinisil> Or "Where can I find logs for this?"
<gchristensen> infinisil: yeah, any indication that they're interested in doing work to solve their problem
<infinisil> Yeah
<gchristensen> even if they have no idea what to do next (I am often in this boat)
<joepie91> ++
<joepie91> also, the magical pass for getting infinite support from me is supplying self-contained repositories that reproduce the problem :P
<joepie91> but that barely happens
<infinisil> Oh yeah
<infinisil> I sometimes did this, takes a bit of work though
<joepie91> I tend to do it for reporting bugs that require weird circumstances or setup
<joepie91> it's actually often faster than describing the setup in detail :P
clever has joined #nixos-chat
<infinisil> gchristensen: Just reading your article. I think the `systemConfig` thing you mention doesn't get used anymore, see https://github.com/NixOS/nixpkgs/pull/60256
<{^_^}> #60256 (by arianvp, 50 weeks ago, open): nixos: Get rid of systemConfig kernel parameter
<gchristensen> yeah you're right :)
<gchristensen> sphalerite: mentioned that too
<infinisil> Nice post though!
hax404 has joined #nixos-chat
<gchristensen> thanks!
<infinisil> I'm wondering if something like that could be built into NixOS
<infinisil> Let people opt in to the persist nothing idea, but have a standard way to specify opt-in for single services
<infinisil> s/opt-in/opt-in persistence
<infinisil> (Link to blog post for future reference: https://grahamc.com/blog/erase-your-darlings )
<infinisil> This also links into the sandbox-every-program idea
<gchristensen> I'd like that, like I mentioned I'd like to see this become a sort of reference architecture for new deployments
<adisbladis> talyz created an interesting module for home-manager we're both using for persistent data https://github.com/adisbladis/nixconfig/blob/9d9239e/modules/home-manager/persistence.nix
<adisbladis> I'd love a similar module for system level persistent directories :)
<adisbladis> A very nice thing that it does is creating the directory structure for the persistent data
<eyJhb> etu, adisbladis: does your compose key also only work when the window is focused?
<etu> eyJhb: How do you type in a non-focused window?
savanni has quit [Ping timeout: 240 seconds]
<eyJhb> -> do you have to have the cursor in the window?
<eyJhb> If I have something focused, but my mouse is not in it, it will not work
savanni has joined #nixos-chat
<etu> eyJhb: Works for me, but I don't use the cursor much. And I don't have focus-follows-mouse or anything like that
<eyJhb> Weird, I have to otherwise no dice..
<gchristensen> adisbladis: ...iiinteresting...
<adisbladis> etu: I have the complete opposite setup ;) mouse-follows-focus
<adisbladis> Rather than focus-follows-mouse
<arianvp> infinisil: someone mentioned NIXOS_LUSTRATE can be used for this
<arianvp> (which is an option in the NixOS initrd)
<arianvp> from the docs: Creating <literal>/etc/NIXOS_LUSTRATE</literal> can also be used on NixOS
<arianvp> to remove all mutable files from your root partition (anything that's not
<arianvp> in <literal>/nix</literal> or <literal>/boot</literal> gets "lustrated" on
<arianvp> the next boot.
<gchristensen> which terrifies me, lol
<gchristensen> one of the nice things about doing it at the partition level is nothing else is mounted there
<gchristensen> there is no possible confusion of "oops, wrong flag"
<MichaelRaskin> Maybe stuff should be moved to /legacy and not removed?
<tilpner> LUSTRATE moves to /old-root
<gchristensen> ah not bad
<worldofpeace> such a nerdy word though "purify by expiatory sacrifice, ceremonial washing, or some other ritual action"
<worldofpeace> it's actually perfect naming though 😁 ceremonial washing. I somewhat like the ring of that. could be a good riff
<MichaelRaskin> I cannot avoid the _other_ association…
<tilpner> Oh. Oh no
<gchristensen> what is that?
<tilpner> I looked it up on Urbandictionary
<tilpner> But if we use that to argue against names, we'll probably find a bad meaning for anything
<gchristensen> "also used in post-Communist countries to refer to the political cleansing of former officials" this one MichaelRaskin?
neeasade has joined #nixos-chat
<tilpner> Huh, another one DDG didn't turn up
<MichaelRaskin> gchristensen: yes
<gchristensen> not great
<gchristensen> it took me a lot of clicking to find that one. hrm
<MichaelRaskin> Unlike what UD says (with root lust, that's UD), it can even be suspected to be the actual meaning
<MichaelRaskin> (fully and forcibly removing from the places of importance)
<__monty__> Isn't "cleansing" also often used to describe genocide? Just to illustrate that association doesn't necessarily contaminate the word. I think with "lustrate" being a lot more obscure a lot fewer people would have that association?
<qyliss> a higher proportion of those who recognize the word at all might, though, in that case
<MichaelRaskin> I mean, in Eastern block lustrate has a native form in many languages, and that's the first meaning
<MichaelRaskin> On the other hand, it's not political cleansing as in camps
<tilpner> However it's called, it's probably not the right way to implement the reset-on-boot feature
<tilpner> We don't want to keep /old-root around
<tilpner> And extending it to be configurable is a big enough change to warrant a new name
* gchristensen is strongly in the camp of "do it via partitions"
<worldofpeace> MichaelRaskin: ah goodness, you saved me from making the most trigger filled riff ever
<gchristensen> making it easy to find your state-to-be-purged with normal tools is super valuable. `ncdu -x`, `find -mount` etc
<MichaelRaskin> worldofpeace: upi mean re: second meaning of lustrate?
<worldofpeace> MichaelRaskin: yeah, you say that enough other meanings would tear through
<MichaelRaskin> In Eastern bloc the first meaning in native languages often is: permanent prohibition to hold any job invested with government authority or high enough authority in general (to people having held high enough authority under previous regime).
<MichaelRaskin> Did not _happen_ everywhere, but when it did, it was discussed in the neighbour countries, too…
drakonis_ has quit [Read error: Connection reset by peer]
<gchristensen> MichaelRaskin++ thanks for bringing that up
<{^_^}> MichaelRaskin's karma got increased to 26
drakonis_ has joined #nixos-chat
<MichaelRaskin> I am not saying it is an unacceptable second meaning, but we were discussing fine details of associations…
Cynthia is now known as Cynthia_
drakonis1 has joined #nixos-chat
drakonis_ has quit [Read error: Connection reset by peer]
drakonis has joined #nixos-chat
<MichaelRaskin> Hmm. infinisil: is it a good idea to extend special-<3 to thanks/ty/thank you?
Cynthia_ is now known as Cynthia
<tilpner> Depends on the size of grahams sticker stockpile
* infinisil didn't do anything :)
drakonis1 has quit [Ping timeout: 246 seconds]
<eyJhb> Anybody in need of some 2GB DDR2 667 SO-DIMM CL5 ram?
<eyJhb> 2 pieces
clever has quit [Ping timeout: 260 seconds]
drakonis_ has joined #nixos-chat
drakonis has quit [Read error: Connection reset by peer]
drakonis has joined #nixos-chat
drakonis_ has quit [Ping timeout: 246 seconds]
clever has joined #nixos-chat
rardiol has joined #nixos-chat
<gchristensen> do y'all know of a trivial program of the CLI API of like ... `whenchanges ./my-input-file -- run-this command --when the --file changes`
<srk> inotifywatch?
<gchristensen> oh great
<srk> pkgs/top-level/aliases.nix: inotifyTools = inotify-tools;
<adisbladis> `entr` works cross-platform
<adisbladis> echo some-file | entr make
<gchristensen> inotifywatch seems to print statistics at the end, not re-run
<neeasade> gchristensen: for what else it's worth this went around recently:
<gchristensen> inotifywait would do it I think
<infinisil> And there's systemd's PathChanged if you want to couple that with systemd units
<gchristensen> I'm trying desperately to get a nice UX when editing the nixpkgs docs for being able to reload the page when I change a source file
<srk> wait indeed, been a while I've used one of these
<adisbladis> My only annoyance with entr is that it doesn't have a recursive mode
<neeasade> adisbladis: couldn't you just pipe find into it
<adisbladis> You can "emulate" it with -d and a loop
<gchristensen> okay now this + some xdotool-but-for-wayland and I can reload too
<adisbladis> neeasade: Sure you can, I mean a recursive mode that automatically watches for new files too
<neeasade> adisbladis: ahh
<adisbladis> I have used such a tool recently-ish but I can't remember the name...
<neeasade> I use qutebrowser for the page refresh workflow currently -- it has ipc so I can just send it 'reload'
<gchristensen> neeasade: ooh do go on :)
<adisbladis> ^ This one is pretty good
<MichaelRaskin> Wait, what browser doesn't have IPC?
<gchristensen> MichaelRaskin: can I trigger FF to refresh the page?
<MichaelRaskin> I thought everything supports WebDriver to real instances nowadays
<neeasade> and then I can just `qb_command ':reload'`
<MichaelRaskin> gchristensen: yes, but you need to launch it with Marionette support enabled
<gchristensen> MichaelRaskin: can I trigger FF to refresh the page?
<gchristensen> hmm
<MichaelRaskin> I mean, I launch my Firefoxes in Marionette-on mode, and I control them over the port
<adisbladis> neeasade: Check out reflex
<neeasade> MichaelRaskin: that's a cool idea
<neeasade> adisbladis: will do
<MichaelRaskin> gchristensen: want me to lok up my scripts for everything related to marionette?
<gchristensen> please!
<adisbladis> reflex -r '\.xml$' make
<neeasade> MichaelRaskin: I would also be interested (I used to webdriver testing for a living)
cole-h has joined #nixos-chat
<MichaelRaskin> I use obsolete Python Marionette wrapper, though — it gives me control over browser chrome, not just the page
* gchristensen mutters something about how it is a good thing the sway authors didn't *want* sway to crash just then
<neeasade> gchristensen: lol
<neeasade> gchristensen: how long have you been using sway? does it feel good™
<gchristensen> hmm not sure how long exactly, but a while. I like it a lot because of exactly two features: (a) hotplugging monitors and projectors works properly, and (b) high DPI displays mixing with lower DPI displays works nicely. other than that, I really don't care about wayland :P
drakonis_ has joined #nixos-chat
<cole-h> I've been using sway for a little under 2 years now, and I concur that hotplugging works very well
<gchristensen>
<neeasade> nice -- I have (a) on X but not without some poking and projector messups
<cole-h> The main reason I switched was because X's screen tearing was pissing me off
<neeasade> cole-h: feel that
<cole-h> On Wayland, smooth, buttery 60fps all day long
<srk> cool
<MichaelRaskin> I want and need manual control over hotplugging, so XRandR is perfectly fine for me
<MichaelRaskin> Wayland mixes up too many things, so a choice of WMs will remain narrow for some more time…
<neeasade> yeahhh
<neeasade> I want bspwm wayland, and started with some wlroots ffi clojure bindings (and luajit/fennel poking), but am now trying to see if I can just bootstrap something bspc-like on top of the i3-ipc
drakonis has quit [Ping timeout: 256 seconds]
<MichaelRaskin> I kind of like the idea that I can load stuff into my StumpWM and (in principle) crash it, but it's trivial to restart and my session is still there
drakonis has joined #nixos-chat
* adisbladis mutters something about exwm on wayland
drakonis1 has joined #nixos-chat
<adisbladis> MichaelRaskin: I miss that about using stump :>
<MichaelRaskin> And even my window tags are there! (because they are stored as an X-server-side thing)
drakonis_ has quit [Ping timeout: 272 seconds]
drakonis2 has joined #nixos-chat
drakonis1 has quit [Read error: Connection reset by peer]
drakonis_ has joined #nixos-chat
<MichaelRaskin> So it looks like the following: there is marionette.defaultPrefs.port setting in about:config, then there is --marionette parameter when launching Firefox
drakonis has quit [Ping timeout: 256 seconds]
drakonis2 has quit [Read error: Connection reset by peer]
drakonis_ has quit [Read error: Connection reset by peer]
drakonis_ has joined #nixos-chat
<MichaelRaskin> Then there is marionette-harness Python 2 package (and I guess geckodriver is fresher if you only need WebDriver)
thibm has joined #nixos-chat
KeiraT has quit [Remote host closed the connection]
KeiraT has joined #nixos-chat
<ldlework> /set weechat.notify.irc.freenode highlight
<ldlework> ^ this might be one of the best things you ever did for your productivity
rardiol has quit [Ping timeout: 260 seconds]
rardiol has joined #nixos-chat
<ldlework> cole-h: let's play Go soon!
<gchristensen> ldlework: same :)
<ldlework> let's teach cole-h so you two can play. ideal outcomes!!
<cole-h> ldlework: For sure! I might be able to do some tomorrow morning-ish (for me; PDT), but I have classes today
<cole-h> Hehe
<ldlework> I've been waking up pretty early so that might actually be possible.
<cole-h> Me and gchristensen's Go talk: "Hey, did you see that one internal-error in ofborg?" "No, not yet. GitHub breaking things again?" "Yeah, seems like. They lost `status` again."
<gchristensen> lol
<cole-h> ldlework: No need to wake up earlier. I can Go (heh) pretty much all day tomorrow. I meant "morning-ish" in that I may or may not sleep in :P
<ldlework> oh shit what day is it
<gchristensen> does it matter
KeiraT has quit [Remote host closed the connection]
<ldlework> tuesday lol ok
<cole-h> Today is Tuesday, 14 April 2020, on the west coast of the US :)
<ldlework> his comment made me think i somehow traveled to friday or some shit
<cole-h> hahaha
<cole-h> No, I don't have lectures/classes to attend on Mo/We
<ldlework> cool
<cole-h> So I do all my chillaxing then, usually
KeiraT has joined #nixos-chat
drakonis has joined #nixos-chat
* gchristensen mutters something about how it is a good thing the sway authors didn't *want* sway to crash just then
<cole-h> Sway crashing for you? Or is sway not-crashing the problem?
<gchristensen> sway crashes often for me
<cole-h> Segfault?
<gchristensen> I dunno, they don't want it to crash and don't take steps to protect people when it does crash, so I lost interest in reporting crashes
drakonis_ has quit [Ping timeout: 272 seconds]
<cole-h> Fair. Stable or from git?
<gchristensen> stable
<cole-h> I ask because I'm running the nixpkgs-wayland overlay and I've only seen 1 crash in the past ~month (which was fixed within a day)
<ldlework> As a user who's totally satisfied with their tiling window manager, why might I care about whether I'm using X or Wayland?
<MichaelRaskin> Because Xorg maintainers are also Wayland developers and threaten to abandond Xorg at some point
<gchristensen> ldlework: I don't care about X or wayland, I care about hotplug displays and mixed dpi support :)
<MichaelRaskin> (which will probably break compatibility with newer cards)
<ldlework> gchristensen: OK that's what I wondered, was there actual value propositions at this point
<cole-h> ldlework: If you see and hate screen tearing, you'd want to use Wayland :)
<ldlework> Because I basically never ever think about X itself. Though I do think about my WM a lot.
<MichaelRaskin> It seems silly that Beryl was doing quite a bit of scaling stuff with AIGLX like ten years ago or so
<MichaelRaskin> Somehow then compositing for X went backwards
<ashkitten> gchristensen: how do you do mixed dpi properly in sway? the only thing i saw was integer scaling one display, which is not what i want
<gchristensen> swaymsg output 'Unknown 0x282B 0x00000000' scale 3; swaymsg output 'Dell Inc. DELL U2713HM 7JNY543I539S' scale 1.5;
<gchristensen> sway autnomatically makes it use the native resolution, and I adjustthe scale to fit. you could also change the resolution I suppose
<cole-h> (you can drop the swaymsg and put that into your sway config, FYI)
<gchristensen> yeah, I copied that from my config :)
<ashkitten> i thought fractional scale was blurry
<gchristensen> it isn't great
<ashkitten> i guess i'll just live with it then
<gchristensen> that U271... monitor is super annoying anyway, and requires a special adapter as it is dual-link DVI
<ashkitten> without scaling
<gchristensen> afaik it requires an active adapter. I have the Apple adapter which literally crashes
drakonis1 has joined #nixos-chat
<ashkitten> i've got one monitor that's 22" 1920x1080 and one 27" 2560x1440 so it's not like one is so small i can't see text
<ashkitten> the 1440p monitor would only have to be about 5 inches bigger to match the dpi of the other, i think
<gchristensen> I find sway most useful when presenting, where I need to hook up to some mysterious TV or project or ...whatever... all of a sudden
<ashkitten> yeah, you don't have to manually add the monitor like under x11
<gchristensen> yeah
<gchristensen> and it is funfor people to see it work immediately, and say "I thought you ran Linux?" and I say "yep, NixOS" and they get a teensy bit of impression that NixOS is magical Linux
<ashkitten> lol
<ashkitten> most display managers can automatically enable the display too
<ashkitten> .r
<ashkitten> er
<ashkitten> desktop environments
<gchristensen> aye
<ashkitten> im tired lol
<gchristensen> not for that U27.... one. that thing is a nightmare.
<ashkitten> lol
<MichaelRaskin> I wonder if my auto-scanning script would guess it correctly with xrandr
<gchristensen> I doubt it
<MichaelRaskin> Isn't it just two halves?
<gchristensen> not even autorandr could get it right
<gchristensen> nor could arandr
<gchristensen> and if you don't tickle it just right the first try you have to unplug the screen (from the computer and the wall) and let it sit a while and think about what it has done
<joepie91> lol
<MichaelRaskin> Ouch
waleee-cl has quit [Quit: Connection closed for inactivity]
<gchristensen> to clarify, wayland doesn't do this better than X
<drakonis1> it must give you joy to hear people ask that
<gchristensen> haha yah it does
<MichaelRaskin> Last time I gave up and helped some presenter with Ubuntu, reaching there took ~ same time as xrandr without completion, though
<joepie91> drakonis1 ah, that's inteestingb
<joepie91> interesting*
<joepie91> keyboards how do they work
drakonis is now known as drakonis_
drakonis1 is now known as drakonis
<MichaelRaskin> Do they, though?
<gchristensen> no
<joepie91> drakonis1: the architecture looks very similar to what I've been thinking of :P
<MichaelRaskin> Keyboards don't work, people work!
<drakonis> definitely an interesting thing for newcomers
<joepie91> (which is to say, I've thought about that architecture for quite some time, and haven't found any obvious issues with it)
<__monty__> Ah, it simply writes its own files which you can include in your config. I guess round-tripping *is* the hard part.
<joepie91> yep
<joepie91> __monty__: that's the optimal approach I've found for this also; generate separate config files that can be imported as the last file, then optionally let the tool wrap stuff in priority specifiers
<joepie91> and then whatever the tool configures acts as an overlay on top of your own config
<joepie91> means you don't need to parse anything not generated by the application
<__monty__> Yeah but that'd be *so cool* : )
endformationage has joined #nixos-chat
<drakonis> very nice
<drakonis> the general flow for that tool seems to be fairly similar to the other graphical installers
<drakonis> queue changes to the system and then enact them
<__monty__> Applying changes when they're made imperatively would be a terrible idea on NixOS.
<drakonis> it is done through rebuilds
<drakonis> it generates the config and then it rebuilds that is
<drakonis> no imperative environment alterations
<drakonis> it is in the present an improvement over not having it at all for attracting people from other distributions
<ldlework> Are we talking about some kind of representitive veneer over nixlang?
<drakonis> yes it is a graphical representation of a low level configuration
<__monty__> I was responding to the idea of not "queueing changes.'
<ldlework> graphical?!
<drakonis> uhh
<drakonis> its a GUI that lets you build basic configurations to spin up changes
<drakonis> basic as heck and doesn't enter into the domain of complex configurations
<__monty__> I'm certain it could make for a nicer beginner UX. Though I personally think that editing configuration.nix to install packages or configure services is the most trivial part of running NixOS.
<ldlework> that's cool, i have been advocating for a veneer since i found out about Nix
<drakonis> its very trivial and it is useful for bringing new users into the fold
<ldlework> I'm not sure we quite need a graphical veneer, I'd take a much simplier text veneer but I am happy to hear about it
<drakonis> worrying about trying to include nontrivial tasks right out of the gate is a trap
<drakonis> the last time we touched on this topic i was jumping onto the idea that anything that handles this should also allow for bigger tasks and well, i'm very wrong on that
<ldlework> yeah, most of my customized modules in my configuration are like "actually use this commit for the source" or "actually, use this commit of nixpkgs for this package" or "append this cli flag in the binary wrapper" or "make sure to render out this file with the location of this file replaced by the one in the nixstore"
<ldlework> all things that don't involve substantially changing how actual packages are built
<drakonis> they do require an bigger understanding of how to do things
<joepie91> I don't think that the aforementioned tool should be the final destination for Nix UI, but I do think it's a useful start
<joepie91> perfect enemy of good etc.
<ldlework> i think there are plenty of things that don't require a more substantial understanding
<ldlework> that are pure users-being-made-into-package-managers concerns
<ldlework> i hardly am actually ever customizing how a package is legitimately built. i might have three examples across my whole config.
KeiraT has quit [Ping timeout: 240 seconds]
<ldlework> but i have to do a lot of work to accomplish all the other little things I want to do
<drakonis> the next step for it would be improving expression manipulation
<drakonis> hmm, hold on gonna reload the nvidia kernel module
drakonis has quit [Quit: WeeChat 2.8]
KeiraT has joined #nixos-chat
<__monty__> I just don't think this particular tool will be of much use to anyone until there's a similarly easy installer. If you can get NixOS installed rn you can probably manage to add some packages and services. I'm not critiquing the tool per se, just remarking that I don't think a flight of stairs with railings on top of Mt Everest will make climbing it much easier.
drakonis has joined #nixos-chat
<samueldr> and again, the perfect has vanquished the good
<samueldr> slain, in vain
<tilpner> __monty__: I think I'll install this tool on someone elses laptop, which I installed NixOS on after getting fed up with Debian (testing or unstable, I forgot)
<samueldr> don't you think there are users that are used to the whole partitioning/installing like archlinux, but have zero knowledge of nixos that can be helped by a tool?
<samueldr> I do
<samueldr> and it would be a nice step forward
<__monty__> tilpner: Yeah, that's the only scenario I could imagine for now.
<tilpner> And it also opens up the possibility of converting my parents laptop to NixOS eventually
<__monty__> samueldr: Partitioning is only a small part of installing NixOS imo. And instructions for other distros work fine for that part.
<samueldr> good!
<tilpner> I'll need to test it first, but maybe...
<samueldr> then the tool is useful for a vast majority of users!
cjpbirkbeck has joined #nixos-chat
<samueldr> what's the deal with everyone poo-poo-ing all improvements of the sort as an all-or-nothing kind of situation?
<gchristensen> samueldr: I dunno, this is awesome :)
<drakonis> i'll take improved expression manipulation to go along with it
<drakonis> because it means it can also configure installs
<drakonis> instead of doing only a specific domain of tasks
<samueldr> I think that all-or-nothing view of the subject **has been** harmful already in the past years
<drakonis> samueldr: functional programming :V
<MichaelRaskin> It's not all or nothing, it's front-loading complexity
<MichaelRaskin> Users who switch to NixOS without buying into the entire model often suffer
<__monty__> I didn't get the memo that any form of criticism wasn't allowed anymore. In an offtopic channel. Where something's been brought up for discussion.
<samueldr> it seems the only "criticism" I've seen for that kind of approach, multiple times over years, is always shooting them down without actual constructive notions
<samueldr> it's hella tiring
<drakonis> the way i see this, do a guided expression manipulation mode that's effectively "manage packages and modules and partitioning" and a free form manipulation that allows for a sufficiently large subset of nixlang to be used
<gchristensen> samueldr++
<{^_^}> samueldr's karma got increased to 208
<gchristensen> being able to use a GUI to create some simple expressions helps give tools to learn more
<__monty__> I'm not shooting anything down. I'm not responding to the forum thread, I'm not gonna tell new users "Don't use that GUI configuration tool, it's terrible!"
<drakonis> also relevant, i'd like to be able to browse the attribute tree to do things like writing or modifying nix expressions for packages
<drakonis> seems like a easy way to get users to be less afraid of working with the language
<gchristensen> yeah
<joepie91> __monty__: you are, though. and it's extremely demotivating when people constantly extrapolate "*I* would not use this" to "noone would use this!"
<__monty__> What I think is likely to happen is someone finds out about "NixOS now has a GUI configuration tool." Deciding they'll suffer through the installation procedure because they expect bliss on the other side and then rather quickly being disillusioned with NixOS.
<drakonis> i have been in the past a bit disillusioned because it requires to actually buy into the whole thing to really feel its power
<drakonis> otherwise it is just a package manager where everything lives in its own tiny corner
<drakonis> which is why i had bounced back to other distributions before coming back
<joepie91> __monty__: like, to give an example, a constructive approach would have been "hmm, this only takes care of *after* the initial install, maybe we should get something going for the install part as well" -- but what you're saying is, paraphrased, "this is useless because it doesn't do everything"
<drakonis> because nixos has already tainted my ability to use other distributions
<joepie91> that is absolutely "shooting it down", even if you only do so in one venue
<joepie91> and it doesn't really benefit anyone, it doesn't provide actionable criticism
<__monty__> Imo that's just an unfavorable paraphrasing. You could just as easily interpret my comments as "Hmm, yeah, install *is* a missing link."
<joepie91> probably everyone in here would immediately recognize "yeah this doesn't handle the install" part, that isn't new information, so all it ends up doing is telling people something they already know and, in the process, being demotivating and negative
<joepie91> __monty__: no, you really couldn't.
<joepie91> you explicitly said "I just don't think this particular tool will be of much use to anyone until [...]"
<joepie91> that is the problem here
<__monty__> And I'm not gonna say "Maybe we should ..." if I don't have the time/energy/interest to act upon that.
<joepie91> you're devaluing the entire tool on the basis of some other problem existing
<joepie91> that comment does not contribute to the discussion at all! all it does is introduce negativity where it's totally unnecessary
<drakonis> before we derail the topic, adopt the tool as something that can be shipped on install isos after it grows enough features?
<samueldr> and it's just been pointed out to me that it would be useful in keyboard-less environments
<samueldr> like a tablet or a phone
<drakonis> replace nixos-generate-config in some form or another
<__monty__> drakonis: That's a great idea.
<joepie91> __monty__: even just saying "someone should handle the install part too" would've been better
<gchristensen> samueldr: I really appreciate you standing up for positivity and encouragement
<drakonis> i find the default install config generator can be a bit inadeqaute
<drakonis> inadequate at times
<gchristensen> we're no good if we get mired in critique
<gchristensen> the openness and support of this community is what drew me in
<tilpner> A CLI tools needs to remain for server installations
<samueldr> unless we want to nip all new attempts at interesting things in the bud
<tilpner> You can't replace nixos-generate-config with a GUI
<__monty__> joepie91: I said "until there's a similarly easy installer." I don't see much of a difference.
<drakonis> tilpner: why not both
<samueldr> "an easy installer is nearly useless unless there's a similarly easy configuration tool"
<tilpner> I didn't say anything agains that
<samueldr> we had the same discussion, with the actors reversed multiple times too
<tilpner> Just replying to "replace nixos-generate-config in some form or another"
<joepie91> __monty__: I just pointed out that difference. the entire claim of "this is not useful to anyone" was unnecessary, demotivating, and had no informational content
<samueldr> what if (galaxy brain) they were two distinct tools?
<gchristensen> =)
<joepie91> __monty__: you don't need to explicitly devalue one thing to suggest another.
<joepie91> just don't do the devaluing part and stick with the suggesting part
<MichaelRaskin> Post-installation configurator is _obviously_ better than installer-only configurator.
<joepie91> (that's not to say that you shouldn't criticize problematic aspects of something, but that's not what "I don't think this will be useful to anyone" is doing, that's 100% a value judgment)
<drakonis> hmm, write a config generation tool that can be used from the CLI and can also provide a GUI
<MichaelRaskin> (and will be converted to be both anyway)
<tilpner> There are a few WIP graphical installers, this should go well together with any of them
<drakonis> let's perhaps change how we approach this, seeing it as a graphical installer seems like an counterproductive path
<joepie91> drakonis: "guided installer" is maybe a more useful perspective?
<drakonis> a tool that manipulate nix expressions that can be used for a variety of tasks instead of one specific primary task
<drakonis> one of them can be a guided installer, yes.
<drakonis> its to avoid it becoming a one off tool that'll be tossed aside once the install is done
<joepie91> oh you mean the lower-level tool
ottidmes has joined #nixos-chat
<joepie91> drakonis: I'd been working on such a tool in JS, but never got around to finishing the parser/stringifier
<drakonis> that'd be good
<drakonis> but is it shippable?
<drakonis> it'd need node wouldn't it?
<joepie91> drakonis: yes, or some other JS runtime
<ottidmes> infinisil: happy its working now though, now I can finally join this channel again
<joepie91> drakonis: (it's convention in JS to target Node, and if the actual target is a different runtime, to use a transpiler and/or bundler to translate the code to something that works in that environment - eg. shimming in system APIs like the `fs` library, or transpiling down to an older JS version)
<drakonis> i'm aware, yes.
<drakonis> but its an issue with shipping it on the disk
<drakonis> its usually a big chunky binary, right?
<joepie91> drakonis: the runtime? yes, for some value of 'big'
<infinisil> ottidmes: Welcome back :)
<drakonis> about 60mb?
<joepie91> drakonis: seems 27MB for /nix/store/0cd5y0wx8b8zlyj3qyw7as6kzxspmvw0-nodejs-10.17.0/bin/node
<drakonis> ah, okay.
<joepie91> drakonis: remainder is probably npm which you don't need to include on disk
<joepie91> as npm is install-time only
<drakonis> right
<joepie91> drakonis: I do have to admit that this is not a big concern for *me* personally :) I have a limited amount of time to work on stuff, so I pick the tools that work most efficiently for the development process and that yield a reliable and not outrageously-unperformant result
<joepie91> it's unlikely that I personally would develop this with something else just to reduce size on disk
<drakonis> i'm not complaining
<joepie91> because it'd inflate development time so much that it basically will never finish :)
<joepie91> drakonis: right, just as a full-disclosure thing
<joepie91> I've seen the discussion about closure size rise in a few places and it's one I pretty much try to avoid
<joepie91> and I'd rather state this upfront than have someone else do the work of working out the numbers when there's no alternative options to me anyway :P
<ottidmes> infinisil: Thanks! Only have to figure out this *push error Error: service type not selected, I just copied it over from your config
<infinisil> Oh, I don't even need that anymore
<infinisil> I used https://www.prowlapp.com/ to get push notifications to my phone
<drakonis> there are some other long run plans for such a tool like using it as a decent way to visualize the available options
<drakonis> for when there's some issue with the website
<ottidmes> infinisil: Ah, then I will just remove it, case of cargo culting, not sure what it does? Just include it XD
<drakonis> of course there's always configuration.nix
<joepie91> drakonis: part of my project was actually a sort of userland Nix reimplementation with more hooks for experimental stuff, debugging code, etc.
<infinisil> Hehe
<drakonis> that's nice
<drakonis> more nix replementations for the nix reimplementation god
<joepie91> drakonis: unfortunately nontrivial due to the unspeccedness
<drakonis> i'm aware, yes.
<drakonis> is it good to have a spec tho?
<joepie91> depends on whether you want multiple implementations :)
<ottidmes> joepie91: Are you implementing Nix in JS? Or am I misinterpreting things?
<joepie91> ottidmes: correct
<joepie91> though I haven't touched that project for a while due to other priorities
<ottidmes> Cool
<drakonis> i mean, i dont want reruns of posix
<__monty__> Just nix-the tool or Nix the language?
<drakonis> have a spec that's updated every often so the reimplementations can follow it
<joepie91> __monty__: the former is a superset of the latter :P
<drakonis> let nix prime do whatever
<joepie91> __monty__: anyway, I wasn't planning for a drop-in replacement of the user-facing Nix tooling
<joepie91> rather a more library-esque implementation of the language (parsing + stringification) and all the core Nix operations
<joepie91> for embeddability into things and experimental hacks and such
<drakonis> write a nix spec the day nix 2 exists
ottidmes has quit [Quit: Configuring ZNC, sorry for the joins/quits!]
<joepie91> there once was a Nix language spec iirc
<__monty__> I was thinking of a frontend that uses FFI to the current Nix implementation.
<drakonis> but that one seems like the kind of thing that'd happen in 2 years
<__monty__> (So not a superset in my eyes.)
rardiol has quit [Ping timeout: 265 seconds]
<joepie91> __monty__: current Nix implementation doesn't seem very designed for that sort of usage
ottidmes has joined #nixos-chat
rardiol has joined #nixos-chat
<drakonis> the conversation that took place weeks ago mentioned exploring eDSLs in nix and it enticed me quite a bit
<drakonis> avoid the curse of lisp and all that
<drakonis> a lofty goal
<joepie91> 'curse of lisp'?
<drakonis> lisp has a significant problem with balkanization
<drakonis> its so powerful everyone rolls their own thing
<drakonis> that everyone
<ottidmes> yep, so everybody has their own dialect
<ottidmes> so much for sharing code
<ottidmes> or understanding that of others
<drakonis> its an issue it faces
<ottidmes> its something I already run into in my Nix code due to sometimes using my custom lib or an interconnected module (not standalone), can't really share that well, same with shell functions, its a general problem really
<drakonis> i'd like to see nix take a route similar to that of racket
<joepie91> I think an interesting question to ask here is why JS (mostly) hasn't succumbed to this fate
<drakonis> because it has npm
<drakonis> and everyone shoves their code in npm
<drakonis> JS instead has another issue, nobody writes code anymore
<drakonis> they assemble their code from lego
<drakonis> its the opposite of lisp in here
<joepie91> that doesn't sound like an issue to me, that sounds like the desirable end state :) but unfortunately we're not quite there yet
<ottidmes> joepie91: at some point it had, remember the time when you had, I think it was called Prototype.JS and many other libraries similar to jQuery but that did pollute the global namespace, it was a mess
<drakonis> flakes could probably get there
<drakonis> if you can have all the power of lisp and the reach of JS, you'd win
<joepie91> programming is about building software, not about writing code, after all
<joepie91> ottidmes: right, but it was all still one language, and mostly recognizable
<joepie91> ottidmes: the only thing that really gave JS a run for its money recognizability-wise, was Angular, IMO
<joepie91> which reasonably succeeded at implementing its own pseudo-language within JS
<joepie91> interop of things like jQuery/prototype/backbone/etc. was junk, but it all still mostly followed the same designs
<ottidmes> joepie91: yep, which is why I stay away from it and similar projects
<ottidmes> joepie91: true, different problem from not speaking the same language so to say :P
<srk> joepie91: I've figured a name for user facing cli for haskell-nix - nih
<srk> (as in nix-in-haskell)
<drakonis> haw
<drakonis> nih...
<drakonis> not invented here collision
<joepie91> srk: lol nice
<drakonis> i'll take that
<srk> :D
<joepie91> ottidmes: I do also stay away from monolithic things that try to be their own ecosystem :P
<drakonis> you know what feature nix misses the most? a dynamic CLI
<joepie91> but I still feel like in JS, they're generally not bad enough to warrant the description of "being their own *language*", Angular 1.x exempted
<srk> drakonis: like repl for store ops? :)
<joepie91> so I wonder where that difference comes from
<joepie91> is it just that there are enough language features that it doesn't feel arbitrarily designable?
<drakonis> srk: like being able to include new knobs on the fly
<srk> drakonis: hmm, an example?
<drakonis> there's enough extra tools available in the ecosystem that it would certainly be nice to have all of them be within reach of the nix cli
<samueldr> drakonis: like the `git xxx` plumbing/porcelain that is implemented mostly using git-xxx tools?
<srk> mix!
<drakonis> yes
<srk> that would be nice indeed
<samueldr> I think it should be possible as a nix plugin, to add that feature
<samueldr> I had that in mind at some point that it would be interesting to explore
<ottidmes> joepie91: Think so, it seems to hit a particular balance
<__monty__> joepie91: Maybe it's a performance consideration? "We'll be running in a browser so let's maybe not unnecessarily abstract things."
<drakonis> invoke nixops through `nix ops`
<drakonis> if it is available, of course.
<srk> drakonis: and a nixHughe package
<srk> *Huge
<drakonis> i'll take it
<joepie91> __monty__: that hasn't been true for many years ("running in a browser"), and I can assure you that this is a common consideration :)
<joepie91> eh
<drakonis> pull in the suite of importers with it
<joepie91> isn't a common consideration*
<drakonis> speaking of which, a nix eDSL would allow eschewing the need for other languages in order to write importers, no?
* joepie91 does not have a mental picture for "nix eDSL"
<drakonis> maybe not this particular task would require such a thing
<joepie91> but like, what are you thinking of when you say "nix eDSL"
<drakonis> writing parsers for specific tasks
<drakonis> hmm, i'm not sure if i could properly answer that question
<drakonis> but what do you normally do with eDSLS on other languages?
<srk> something like tree-sitter with with tree-sitter-nix allows you to use one parser (if you have bindigs for tree-sitter) :)
<drakonis> haw
<srk> we use eDSLs to write abstractions to solve problems of the $domain
<drakonis> there ya go
<drakonis> but really, the lang2nix parsers can rot from time to time
<srk> well you can use hnix to generate nix, that could be called nix eDSL
<drakonis> hmm, i'll take that
<srk> but that forces you to use haskell for generating :)
<drakonis> but hnix isn't nix prime
<srk> so it's not practical for e.g. npm2nix
<drakonis> pretty much
<infinisil> I think you can write literal nix with hnix
<infinisil> And it gets parsed at compile time
<infinisil> Interpolating values should work too
<srk> there's quasiquoter but I've just peeked at it
<srk> hnix needs examples
<infinisil> Same, I actually didn't know how to use it lol
<drakonis> hnix needs to be available first :V
* srk trying to write para(morphisms) all day
<drakonis> its still marked as broken
<srk> λ: length $ concatMap catMaybesFlatten $ extractCallPackagePath p
<srk> 9173
<srk> that's hnix matching callPackage <path>s
<srk> from top-level/all-packages
<infinisil> drakonis: nix-build in hnix's source should work
<drakonis> hm, i should try that then
<srk> before I've started improving it it was over 10k lol..
<srk> this is fun tho λ: length <$> mapMPackages (\p -> return True)
<srk> infinisil: today I've created meta repo with all the overlays to be able to build the hnix/hnix-store/update-nix-fetchgit
<infinisil> From a recent nixpkgs?
<drakonis> a thing i'd like to also have on the nix cli
<srk> got scared by hnix`s default.nix, and it insists on pinned nixpkgs
<srk> yes
<drakonis> fetching hashes from it
<srk> infinisil: fix few issues, will publish that, trying to build a tool for marking packages broken
<drakonis> doing prefetches directly from it because ho boy
<srk> *fixed
<infinisil> I love when packages pin nixpkgs, seeing it not often enough
<infinisil> Though making it configurable would be nice yeah
<infinisil> srk: Nice!
<srk> yes but forcing people to download another ghc with related packages is no good
<infinisil> srk: Hmmm though
<srk> depends on the audience a lot I would say
<infinisil> To automatically mark as broken I think it would be easiest to have a pkgs/top-level/broken.nix which is an auto-generated overlay that only marks stuff as broken
<srk> less noisy for sure
<gchristensen> a bit less nice, but it could work
<srk> this _should_ be one time thing for prior-releases but still.. overlay sounds better
<gchristensen> we should move to -dev
<gchristensen> :P
<infinisil> +1
<colemickens> oh hey, TIL, there is a usable workaround for using gpg keys with native ssh.exe. rejoice and delete all the soft keys!
thibm has quit [Quit: WeeChat 2.6]
* colemickens remembers nix remote builds and grimaces
<__monty__> Remote builds are awesome!
<colemickens> they are, the nix daemon interacting with gpg-agent is less awesome
<colemickens> but I also don't really have any brilliant ideas, so :|
<ashkitten> new nix subcommand: `nix why-am-i-building-this`
<ashkitten> or maybe `why-am-i-building`
<ashkitten> `nix why-am-i-building firefox # on my phone`
<joepie91> `nix just-generally-why`
<joepie91> :P
<ashkitten> `nix why`
* joepie91 uploaded an image: Selection_922.png (30KB) < https://pixie.town/_matrix/media/r0/download/pixie.town/ZObufwSWGGRaTutnwBRyONbi >
<joepie91> ashkitten: I thought that already existed, but I confused it with yarn
<ashkitten> lol
<tilpner> ashkitten: I generally answer that question with nix-store -qR $(nix-instantiate '<nixpkgs>' -A bar) | less +/foo
<ashkitten> bless you
<tilpner> (The question was "Why is foo being built if I wanted bar")
<tilpner> Not quite right, I forgot a flag
<ashkitten> i think that's not my issue rn though
<tilpner> nix-store --query --tree $(nix-instantiate '<nixpkgs>' -A blender) | less +/bison
* joepie91 is trying to work on a chat client, so therefore he is naturally reading up on parser combinators, writing an input validation library, and building an abstraction for modularized immutable state management
<joepie91> these yaks are perfectly healthy, what are you talking about!
<tilpner> Oh, so you finished the UI framework already then?
<ashkitten> that reminds me, what the heck is yak stacking
<joepie91> tilpner: ... please don't remind me of that particular yak :D
<__monty__> `nix why-depends` is already a thing, no?
<ashkitten> i'm more asking for a command to yell at nix for building huge packages with no warning
<__monty__> joepie91: Why parser combinators? Is there more parsing to do than parsing the protocol's packets?
<tilpner> __monty__: It is, but it answers a different question
<joepie91> __monty__: oh, I'm just generalizing things to an ecosystem scale again. I need to validate some incoming identifiers, which have a hostname component amongst other things, and therefore I need a complete generalizable composable-parsing-and-validation mechanism
<joepie91> because that is how half my projects spawn :P
<joepie91> (thankfully I'm actually nearing completion on a few of them!)
abathur has joined #nixos-chat
<joepie91> and because this is a personal project, and my broader goal is 'helping people build more reliable open-source software', this is actually okay!
danielrf[m] has joined #nixos-chat
<talyz> adisbladis: I wrote one for system level directories too - https://github.com/talyz/nixos-config/blob/master/modules/persistence.nix :)
<colemickens> talyz: for those of us lacking context, is that to be used with something like graham's wiping /etc ?
<pie_[bnc]> oh i cant read
<pie_[bnc]> *core* github features
<joepie91> "core features"
<joepie91> pie_[bnc]: note, haven't looked into this in detail, just grabbed the first thing that looked like a fineprint :P
<joepie91> from a quick glance, seems they are banking on heavy CI use and private packaging infra instead
<pie_[bnc]> GitHub Pro now has a reduced monthly price of $4
<pie_[bnc]> GitHub Team now has a reduced monthly price of $4 per user with no minimum seat requirement
<joepie91> ie. corporate features
<joepie91> (well, primarily corporate features)
<pie_[bnc]> yeah my first peek i thought it was "literally everything is free"
thibm has joined #nixos-chat
<pie_[bnc]> joepie91: maybe if youre selling to companies, its not worth the overhead to deal with selling to individuals? :P
<joepie91> pie_[bnc]: I suspect it's more that github's entire business model is to only sell to companies as much as possible
<joepie91> their free users are the marketing
<gchristensen> meh github's business model is an onramp to azure
<joepie91> so they want as many users-who-wouldn't-pay-anyway to use the free shit
<joepie91> because that's what gives them the market dominance that makes github an obvious choice for the companies that will pay, since everyone's there already
<joepie91> at least this has historically been their business model, I don't know how much this will change over time with Microsoft taking over the shop - but this change still fits into that old business model
<pie_[bnc]> something like that was my other guess
<joepie91> I forgot an "as possible" somewhere above
<pie_[bnc]> meanwhile, me, failing at marketin
jared-w has quit [Ping timeout: 260 seconds]
thibm has quit [Quit: WeeChat 2.6]
jared-w has joined #nixos-chat
<pie_[bnc]> time to recompile llvm :(
<pie_[bnc]> which probably means recompiling half the world
<pie_[bnc]> i dont suppose anyone happens to be writing a frontend to systemd services that is more intuitive? :P
<qyliss> isn't that what systemd was supposed to be
<gchristensen> I have wished for a systemd simulator, which lets me express and play with the systemd directives as state machines
<qyliss> I'd just really like all the systemd directives like DynamicUser or whatever to be implemented as programs
<qyliss> then you could just try them out wherever
<qyliss> but that is not the systemd Way
<MichaelRaskin> Next you would ask them to be stable reusable APIs
<MichaelRaskin> > Commiting to a stable API for that given that there are very few other projects who could ever make use of this sounds dangerous at best.
<{^_^}> error: syntax error, unexpected ')', expecting ID or OR_KW or DOLLAR_CURLY or '"', at (string):297:1
<MichaelRaskin> (DynamicUser, but as program is pretty close to nsjail, but of course configuration is different)
<andi-> /q gchristensen
<andi-> ugh
<gchristensen> at least you started with a /q instead of a /msg gchristensen «something private»
<andi-> :P
<andi-> I never do that..
<drakonis> lol
<drakonis> there was one time i did that but with wrong completion
<drakonis> my god
<drakonis> we're doomed
ixxie has quit [Quit: Lost terminal]
<drakonis> anyways, it seems that the paper is a little weird and might warrant waiting a bit more research on the matter
<MichaelRaskin> Heh, ii annoyingly requires /j with nick to contain a message
<drakonis> wacky virus papers all the time
<colemickens> Hm, seems like a nice hobby to pick up, slash good for some anti-anxiety/focus training
<colemickens> Also, I just imagine some 5 year old kickng my butt at it probably.
<MichaelRaskin> I guess a certain 2.5 years old would kick you much harder…
lovesegfault has quit [Quit: WeeChat 2.8]
<__monty__> drakonis: Sounds like the next best thing to a vaccine. Just turn the poor into soylent^WT-cell paste and administer to the rich, virus and T-cells die together, b-bye.
<__monty__> MichaelRaskin: You use ii as a daily driver?
rardiol has quit [Quit: No Ping reply in 180 seconds.]
<gchristensen> colemickens: it has been really fun, ldlework is a fun teacher
<gchristensen> lots of opportunities to undo and try other strategies
<MichaelRaskin> __monty__: yes
<MichaelRaskin> __monty__: I think monoclonal T-cells from the person's own cell line might be cheaper to manufacture than ensuring immune compatibility with _immune cell_ transplant
rardiol has joined #nixos-chat
<drakonis> lol @ harvard study saying social distancing might have to reach 2022
<gchristensen> nope don't like that
<MichaelRaskin> In the unrelaxed form?
<__monty__> MichaelRaskin: But that's not suited to a soylent reference : /
<__monty__> MichaelRaskin: No interface? Just cat and tail?
<MichaelRaskin> Of course there is _some_ interface.
<MichaelRaskin> A screen with less -F in one part and a shell script in another
<MichaelRaskin> Mainly used to filter out single-character input
lovesegfault has joined #nixos-chat
<__monty__> Wow, didn't know Thomas the Tank Engine could get so creepy: https://youtu.be/2q82bGtujFA
rardiol has quit [Ping timeout: 265 seconds]
rardiol has joined #nixos-chat
<drakonis> aaaaaa.
<drakonis> gchristensen: i'm impressed tho, how did you manage to write a post and get so little comments but so many upboats?
<cole-h> Because he was right
<cole-h> :P
<__monty__> How many comments, how many upvotes?
<ldlework> colemickens: you justs start from the beginning. everyone's on their own path.
<eyJhb> Debating if it makes sense to use AWS Server less.. And if Jeff Bezos needs more money
<gchristensen> eyJhb: jeff doesn't need any more money
<ldlework> drakonis: you wanna throw?
<eyJhb> Just my thoughts. Am I weird for not wanting to support AWS?
<gchristensen> I go to great lengths to not support AWS
<MichaelRaskin> Does your usage oscillate by a factor of 4 within a month?
<ldlework> You can run a service on it though.
* colemickens is a bit surprised at the strong aws feels
<vika_nezrimaya> who needs aws when you have google and azure
<ldlework> I remember when you had to call someone on the phone to get a new VPS. So I hold the veritable cloud platforms in high regard from a techincal perspective.
<vika_nezrimaya> and also a Raspberry Pi
<ldlework> And AWS really did it well first.
<gchristensen> ldlework: oh yeah. I remember mowing a ton of lawns to get my first server, before VPS's were really a thing
<ldlework> They also innovate like crazy. And if not innovate, they do productionalize relevant ideas pretty properly.
<ldlework> And if you're a huge organization, their support is pretty incredible, if insanely expensive.
<ldlework> They know their system.
<gchristensen> although I am about to deploy a new service on to AWS
<ldlework> but like maybe amazon is keeping kids in cages or something so it undermines that value
<ldlework> can't say myself
<eyJhb> Like I want to use them, but at the same time not... Wondering if I should design for the possibility of integrating with it easily
<gchristensen> my plan is to launch a URL shortener which uses AWS's very reasonable rates on route53 as the redirector
<ldlework> I don't know what's going on in nixops land, but with tools like Terraform, I feel pretty confident in being able to migrate my systems to other providers.
<ldlework> It wont be easy, but tools like that make it as easy as it has ever been.
<gchristensen> you can have 10,000 records per route53 zone, so (10,000 adjectives).(noun list).(domain).tld
<ldlework> But that seems almost like an armegeddeon prepatory measure
<ldlework> Another way I guess is to run literally all the components of your infrastructure self-managed under k8s but phew...
<gchristensen> phew.
<ldlework> that is asking a lot. there's a reason the cloud providers exist.
<colemickens> I liked the comment about letting someone else run k8s and building your yaml/containers with Nix.
<ldlework> and you'll still have provider specific integration points that are probably not purely glossed over by the tooling that expresses that infrastructure, like Terraform. There's always stuff that gets leaked.
<colemickens> Curious if anyone's using kube-nix for anything big-ish.
<ldlework> I think most dreams of cloud provider migration, or multi-cloud deployments are mostly far off fantasy for most people who would ever commentary on it
<ldlework> At least past a certain level of triviality for the services we're talking about
<eyJhb> We need a universal Api for cloud providers!
<joepie91> the whole ~horizontally scalable cloud hosting~ thing is largely people roleplaying as big tech corporations anyway
<joepie91> eyJhb: that would be openstack
<MichaelRaskin> I have seen a perfectly unsuitable project deployed to EC2.
<MichaelRaskin> Then migrated back a few years later, fortunately.
__monty__ has quit [Quit: leaving]
<ldlework> eyJhb: One of the ideas Solomon would talk about regarding Docker not just being a container engine, but a build and image format, distribution system and execution API was that it was trying to wholly abstract the concerns of running some arbitrary process on some arbitrary compute device. So that later, the same work that had been done making infrastructure programmable could come together to unify
<ldlework> under expressive systems of orchestrating. Basically mapping logical constitutents that make up a service to the infrastructure. Programmable infrastructure, programmable runtime, both underlying programmable orchestration, or the deployment and management of distributed services.
<ldlework> obligatory screw docker, screw solomon, etc, but was pretty exciting for me to be exposed to such ideas at the time
<gchristensen> well and he was pretty much right lol
<ldlework> as someone who comes pretty easy to abstractions, i felt i could see the generalized future he saw and it was fun
<ldlework> gchristensen: one of the first problems we had with the services built around docker was of course to build them in a dockerized way. but then we immediately ran into the problem of managing all these containers and mapping them to the infrastructure.
<gchristensen> hehe
<ldlework> and that's when he explained what we needed to do, and my team, that build the automated image build service, built one of the first container orchestrators, pre-swarm
<joepie91> the problem there is that Docker ended up being a leaky abstraction
<ldlework> so that we could actually deploy the automated build service
<ldlework> we build a generic YAML based DSL, that had a pluggable backend
<gchristensen> ldlework: sometimes you see all the yaks before you and think "hrm are we sure?"
<ldlework> since we prepared for eventual windows conatiners
<ldlework> but we only ended up ever building AWS drivers for our orchestrator
<ldlework> which was called Highland for the silent historians out there
<ldlework> gchristensen: that was one of the most insanely complex things i've ever built
<ldlework> not to mention the actual automated build service itself
<ldlework> i was just a Django developer lol
<gchristensen> ldlework: yeah :) I remember when it came out. I was out there using docker in a big way back then
<ldlework> "hey can you write network services"
<ldlework> > having struggled to understand Twisted for 10 years
<{^_^}> undefined variable 'having' at (string):296:1
<gchristensen> hah
<ldlework> "definitely!"
<ldlework> cole-h: any chance you wanna do some Go introduction with drakonis and I?
<gchristensen> I think I started using Docker at 0.4.3
<gchristensen> (in prod)
<ldlework> gchristensen: i was at a Djangocon randomly, and I sat down to a talk from a guy who would later become my boss
<ldlework> And I had been months into redoing everything for my company into SaltStack
<ldlework> CM was all the rage then
<ldlework> And it was like 5 minutes into the talk I was having an existential crisis
<ldlework> As to how this was going to change everything and let us treat everything the same
<gchristensen> yeahit was obviously a step forward
<ldlework> After the talk I tried to go up and talk to him, but the whole audience got up to talk to him
<ldlework> I just went home and starting building my own CaaS
<ldlework> moyo.io, after the Go term XD
<gchristensen> hehehe
<cole-h> ldlework: If you can deal with me leaving in ~45m, sure :)
<ldlework> cole-h: we can always pick up tomorrow
<ldlework> gchristensen: a moyo is like an implied framework you make with more or less connected stones
<ldlework> like what you get in the opening
<ldlework> i thought it fit
<gchristensen> oh cool
<eyJhb> Good read, makes me think!
<eyJhb> I though you guys meant Go as in Golang. Got excited for a while
<gchristensen> :D
<cole-h> gchristensen: re make everything show up on the checks tab: I can take a look later. You happen to have an example commit I could look at?
<cole-h> Imagining just 243235c86fd484e48a42e8f5a929cd50cac60a71
<gchristensen> cole-h: I can give you a hint certainly
<gchristensen> well
<gchristensen> hrm, it is tricky lol
<cole-h> Heh
<gchristensen> cole-h: the important thing is use the github client that comes from the vending machine, not the `github_legacy` one
<MichaelRaskin> (imagines one passed check per path-to-rebuild)
<gchristensen> the github_legacy one can create gists, the github app one cannot
<gchristensen> the github app one can create checks, the github legacy one cannot
<cole-h> y tho
<gchristensen> github legacy is a user, and github really wants to push integrations like this away from a user and in to an App, so new features like Checks can only be created by Apps
<cole-h> Oh, got it. Makes sense that an app cannot create a gist (since it's not a user)
<gchristensen> yea
<MichaelRaskin> You have an intriguing notion of sense
<cole-h> :P
<ldlework> cole-h: welp no idea where drakonis went ¯\_(?)_/¯
evanjs has quit [Ping timeout: 265 seconds]
<cole-h> ldlework: Heh. online-go seems to be doing some server stuff right now, too :P
<ldlework> ah hehe
<MichaelRaskin> Are apps allowed to merge?
<gchristensen> they can be given the ability to merge
<cole-h> Isn't that was bors does?
<cole-h> was/what
<cole-h> s/
<MichaelRaskin> So creating a commit is fine, unless it is a gist. OK………
<MichaelRaskin> bors is old, it might be a user
<MichaelRaskin> Can a user and an app share the name?
<drakonis> ldlework: i'll join now
<cole-h> nvm, you're right -- bors is a user (at least servo-bors is)
<gchristensen> I dunno, this is the app though https://github.com/apps/ofborg
<MichaelRaskin> Erm, but there _is_ github:ofborg/infrastructure and you are the person who commits there!
<ldlework> drakonis: I sent you a friend request, and a game challenge
<MichaelRaskin> Ah, it's an org
<MichaelRaskin> And orgs cannot have gists?
<gchristensen> right
<drakonis> aight
<gchristensen> more importantly, apps can't have gists :P
<gchristensen> I want to get away from anything other than the app-based auth
<MichaelRaskin> Ah
<drakonis> i'm terrible at it
<ldlework> drakonis: we'll go over some stuff
<cole-h> A little sad that spectators chat doesn't appear to be seen by the players :(
<pie_[bnc]> open a new window as a spectator? 'xD
<MichaelRaskin> I guess it is for players of comparable skill watched by players of similar skill who discuss the position?
<gchristensen> you can do it, drakonis, just go anywhere. he'll teach
<MichaelRaskin> Is app-based app different from user-based use-specific tokens?
<gchristensen> yea
<cole-h> ldlework: So every empty space touching a stone is a liberty, yes?
<ldlework> yes
<ldlework> cole-h: just validate your email and join us in chat
<ldlework> it'd be awesome to have group discussion
<gchristensen> app tokens expire automatically after a few minutes, and use a much stronger, public/private key pair to authenticate to create those tokens
<cole-h> I've signed in with Google
<gchristensen> ldlework: cole and I can chat but you can't see our messages
<cole-h> I can chat, but you can't see it
<MichaelRaskin> Oh
<cole-h> I would have asked in chat if you could see it x)
<MichaelRaskin> And certificate-based auth is still not available for users?
<gchristensen> no
<ldlework> gchristensen: ah I see
<cole-h> ldlework: You have a shortage consisting of D3 and E2, yes?
<ldlework> cole-h: correct
<ldlework> cole-h: you can also ask gchristensen because he has learned a lot :)
<cole-h> (Heh, sorry -- you have to balance two conversations now :) )
<cole-h> Willd o
<cole-h> (insert spacing where applicable)
<gchristensen> I left to give drakonis some space :)
<MichaelRaskin> gchristensen: so, waiting for webauthn support in GitHub?
<gchristensen> heh
<gchristensen> github supports u2f :)
<andi-> just not for SSH :)
<gchristensen> nor the API
<andi-> yeah
<drakonis> gchristensen: come on in
<MichaelRaskin> We-ell… if you had pure-software U2F, you could login and create a shoty-expiry token…
<MichaelRaskin> Then use it for API
<gchristensen> orrrr
<MichaelRaskin> But gists!
<gchristensen> are gists so great? P
<gchristensen> the checks tab offers the same functionality, no?
<MichaelRaskin> Hm true, you can always replace gists just with commits in a special-purpose repo
<gchristensen> I can just submit the gist content tothe body of the check tab
<MichaelRaskin> Until they change the API again!
<MichaelRaskin> If they break git push, I guess we will just give up and migrate to gitea, or who knows, to a VCS that remembers whether a commit originated in staging or in master
<gchristensen> haha
<joepie91> lol
<MichaelRaskin> Maybe even to a VCS with on-disk data consistency model not intricately tied with an FS no longer in widespread use
<gchristensen> MichaelRaskin: I'm going to need you to explain that comment haha
<MichaelRaskin> When Torvalds was first writing Git, the goal was that git should be fast.
<MichaelRaskin> And preferably not lose data.
<MichaelRaskin> (apparently in that order, although he claims the opposite)
<gchristensen> haha
<MichaelRaskin> So he looked at the problem of ensuring on-disk consistency
<MichaelRaskin> Which kind of touches both values.
<MichaelRaskin> «fsync is slow, but it is not needed, I know how ext3 behaves without fsync», he thought (and he was right)
<MichaelRaskin> I think there still was some corner case where a hard-power-off would be unsafe, but very hard to hit and exotic
<andi-> can't wait for an ioctl(fd, SHALL_I_FSYNC, &bool)
<MichaelRaskin> The trick is of course that ext3 was like the most robust data system in the world when used on well-behaved reliable HDDs, and it
<MichaelRaskin> is _hard_ to get your on-disk data into an inconsistent state with it without noticing
<MichaelRaskin> (From the point of view of event ordering predictability it might beat even CoW FSes by default)
<MichaelRaskin> Well, let's just say ext4 is faster than ext3 but still satisfies all the POSIX FS robustness expectations.
<MichaelRaskin> Need I say more?
<gchristensen> yep, got it, cool
<MichaelRaskin> To be fair, Mercurial is not substantially better and might be a bit worse.
<cole-h> ldlework: sente = "we're cool"?
<ldlework> cole-h: it's my turn and there are not liabilities I now must respond to because of your move, so it's my perogative to do whatever with my turn
<ldlework> like take a big open space yet unclaimed, etc
<MichaelRaskin> (Monotone and Fossil use an intermediate layer that actually does fsync and generally has a rock-solid data consistency reputation; namely, SQLite)
<cole-h> Got it.
<MichaelRaskin> (Not making any claims about Pijul because they seem to be secretely preparing 2.0 or something)
<gchristensen> yeah, it works better than 1.0
<joepie91> secretely? :P
<gchristensen> well the source isn't open
<joepie91> (I was trying to pin a joke on the typo)
<ldlework> gchristensen: cole-h I think you can participate in the review
<andi-> so just like GitHub ;)
<MichaelRaskin> andi-: well, Pijul 2.0 is also not available
<joepie91> gchristensen: also, not open as in "currently lives on developer's PC" or as in "is going to be proprietary"?
<gchristensen> andi-: well except this would be as if github made a new version of Git ubt you couldn't look at it yet
<MichaelRaskin> joepie91: as far as I understand, they promise to make a release, with core being open-source. When it's ready
<gchristensen> joepie91: currently lives on the dev's PC and another server somewhere... would be super surprised if it was proprietary
<MichaelRaskin> I think it is implied that there will be an advanced enterprise-feature-friendly version of server which might be partially proprietary
<andi-> gchristensen: well, GitHub most certainly has some internal Git version that is compatible but we aren't allowed to look at. They are still compatible. Same would be true if the nest never gets published.
<MichaelRaskin> Client and server for typical open-source workflows are expected to be fully open-source
<gchristensen> well, this is a new version of the CLI which is not compatible
<gchristensen> so it really really really isn't the same thing at all :P
<joepie91> MichaelRaskin: okay, so open-core, not open-source then
<gchristensen> joepie91: I'm not sure it is useful to guess about what it *will* be
<joepie91> guess that my interest in Pijul goes 🗑︎ then
<MichaelRaskin> joepie91: git is also open-core by that definition
<gchristensen> joepie91: they basically decided the current code was a good first try, and that for the second try it'd be good to stop having users and go clean-sheet for a bit
<joepie91> MichaelRaskin: ... no? Git is open-source
<joepie91> unless I missed a proprietary component somewhere
<gchristensen> note that MichaelRaskin is hypothesizing and I'm not
<MichaelRaskin> joepie91: the full toolset for this model will be released and will be opensource from Pijul
<joepie91> gchristensen: right, that makes sense
<gchristensen> I urge you to not 🗑︎ it based on some hypothesizing
<MichaelRaskin> Well, they did host Nest which was proprietary
<joepie91> I mean, my final judgment will of course be dependent on how it actually turns out
<joepie91> but if I smell actual open-coreness, my judgment will be swift :P
<drakonis> swift like the language?
<joepie91> MichaelRaskin: earlier you said "I think it is implied that there will be an advanced enterprise-feature-friendly version of server which might be partially proprietary" though
<MichaelRaskin> joepie91: our git workflow does bear the impact of it being impossible to setup a NixOS test for ofborg, most probably
<MichaelRaskin> How is this different?
<joepie91> MichaelRaskin: how is what different from what? I don't understand what point you're trying to make
<MichaelRaskin> Git as Nixpkgs uses it ends up being effectively open-core because we use github
<joepie91> that doesn't make Git open-core
<joepie91> "organization uses open-source tool and proprietary tool" is very different from "tool is designed to be partly proprietary"
<joepie91> if the Pijul people are intending to have an open-source and a proprietary version of their stack, it is a case of the latter
<joepie91> what nixpkgs does is the former
<MichaelRaskin> Is Matrix open-core project by that definition?
<joepie91> and while the latter impairs the potential of the open-source tooling, the former doesn't
<joepie91> MichaelRaskin: currently? yes, because of the integration server
<joepie91> however, that is pretty much on the chopping block as far as I understand it
<MichaelRaskin> Well, there is an open version already anyway
<MichaelRaskin> But I don't think there will be an open version of Modular.im management backend.
<MichaelRaskin> (well, there will be a competing open version, maybe)
<joepie91> MichaelRaskin: this sort of concern is actually precisely why the matrix foundation was made a thing
<joepie91> and why the core stuff is being moved out of new vector
<MichaelRaskin> Note that it was done after reaching quite significant size.
<joepie91> that is what's ultimately the difference between something like Matrix and a typical open-core thing, to me; the Matrix people realize the conflict of interest and are actively working to get rid of it, whereas the typical open-core thing just goes "what's the problem?"
<joepie91> I am aware
<gchristensen> ldlework: are you on the tweeter?
<ldlework> barely
<joepie91> I would not have gotten involved in Matrix stuff had they not been actively moving away from conflicts of interest
<MichaelRaskin> joepie91: well, with Matrix the potential for a problem is larger because they have compatibility-critical federation protocol still moving pretty fast
<joepie91> MichaelRaskin: so the thing is, often the rationale behind open core is "this allows us to bootstrap the project", and I'm very skeptical of that; but if an organization *actually* manages to turn things around after that phase, I am willing to change my view on it
<joepie91> when the input changes, so does the conclusion :P
<joepie91> and yes, it is moving fast, but it also being less and less influenced by new vector
<MichaelRaskin> With a VCS the separation can be clean enough that the open part is still usable
<joepie91> this is not fundamentally different for a VCS
<MichaelRaskin> joepie91: well, I do not think they really managed to get rid of the majority-of-work situation
<joepie91> either you continue developing your system based on changing requirements and the API changes, or you do not and it doesn't
<MichaelRaskin> joepie91: well, if your protocol is like git, ACL-agnostic…
<joepie91> whether it's a VCS or a chat protocol
<ldlework> gchristensen: cole and drak are gonna play
<joepie91> MichaelRaskin: and here we are, reinventing Git! :)
<gchristensen> nice
<MichaelRaskin> Nope, you can have a real DVCS with ACL-agnostic bottom layer, too
<joepie91> but better, because requirements have changed!
<cole-h> (waiting on accept)
<ldlework> drakonis: ^
<drakonis> i'm in
<joepie91> MichaelRaskin: you're missing my broader point here
<cole-h> Probably meant to ping gchristensen
<cole-h> :P
<MichaelRaskin> I am not, I am saying there is actually more nuance
<joepie91> MichaelRaskin: insights change, requirements change, expectations change; open and distributed software needs to deal with this just like centralized proprietary software does
<joepie91> this is true for any sort of software
<joepie91> you can't just freeze the design and keep using that for 10 years, without becoming irrelevant or being replaced
<ldlework> gchristensen: get in here :)
<ldlework> cole-h: it's your turn :)
<MichaelRaskin> Git-as-actually used is pretty close to that description, actually
<joepie91> and now we're talking about a replacement for Git
<drakonis> a replacement for git?
<drakonis> who's gonna host that?
<joepie91> anyhow, I should stop getting drawn into discussions :)
<MichaelRaskin> Note that I have consistently rated Git below SVN for all the ten years I am here
<MichaelRaskin> (if only SVK was less of a pain)
<joepie91> I got very little done today on the project I wanted to be working on...
<joepie91> and it's 01:30 :(
<drakonis> svn is notoriously terrible for drawing in contributors
<MichaelRaskin> If SVK was a bit better, SVN would have quite a few benefits (reasonable partial checkouts, mmm)
<MichaelRaskin> But yeah, distributed use of SVN is pain
<joepie91> man, parjs looked good initially, but then I discovered that its author seems to interpret "exhaustive documentation" to mean "jsdoc-style documentation"... :|
<joepie91> "here's a pile of alphabetically sorted methods, good luck!"
<ldlework> cole-h: shortage
<cole-h> Thanks
<gchristensen> y'lal could undo if you wanted
<ldlework> cole-h: drakonis maybe an undo is in order
<drakonis> i can see that i botched it lol
<drakonis> uhhh
<drakonis> what happened now?
<cole-h> Now you have to request an undo I think
<ldlework> one more undo
<cole-h> :P
<drakonis> eep
<drakonis> im pretty sure i'll get capped
<drakonis> i need to play the tutorials
<gchristensen> you're doing great, don't stop now
<ldlework> drakonis: yeah you're doing good
<ldlework> drakonis: what's white's one little stone gonna do now?
<ldlework> :O
<drakonis> not own me
<drakonis> we need to set up voice chat
<drakonis> now that'd be a spectacle
<ldlework> heh
<cole-h> Was that ":O" good or bad? :eyes:
<ldlework> cole-h: hehe just joking on the "one little stone"
<ldlework> "oh now there's two"
<cole-h> Haha
<cole-h> A bit disappointed you didn't reference "Now there's two of them!"
<ldlework> doh
<drakonis> :eyepop:
<drakonis> I GOT CAPPED
<drakonis> BISH
<drakonis> i'm losing this one arent i
<cole-h> I wouldn't bet on it
<drakonis> also i should've done what you did, would've been safe
<cole-h> :)
<cole-h> I like how we're carrying on a conversation in 2 different places lol
<drakonis> multitasking talents
<cole-h> gchristensen: Where is that simulator you were talking about in your last game
<ldlework> cole-h: just do it
<cole-h> :eyes:
<ldlework> review?
<drakonis> :eyepop:
<drakonis> i saw what happened here
<cole-h> Oh, is that the simulator? Got it
<drakonis> i'll take a undo
<ldlework> that's the spirit drakonis
<cole-h> (I wasn't actually sure if that would cap the group because of C1 on the wall)
<drakonis> i'll probably concede in a few turns lol
<drakonis> im getting owned here
<ldlework> there's some good things to say
<ldlework> some blindspots on both sides
<cole-h> Newbie vs newbie
<cole-h> Who will win?!
<drakonis> this is not a winnable fight
<ldlework> cole-h: i think they wanted undo
<ldlework> no
<ldlework> it's over in this state
<drakonis> i'll just invoke two undos
<ldlework> keep going
<drakonis> because lol
<ldlework> nooo
<drakonis> HOL' UP
<cole-h> lololol
<ldlework> drakonis: that doesn't fix
<ldlework> drakonis: look at all groups
<cole-h> (just to show you)
<ldlework> including whites
<drakonis> "YOU DIED"
<drakonis> yes i can see
<cole-h> :D
<ldlework> hahaha
<drakonis> this game needs dark souls style "YOU DIED"
<ldlework> undo was requested
<drakonis> i really cant win this lol
vika_nezrimaya has quit [Read error: Connection reset by peer]
<ldlework> drakonis: white is in atari
<drakonis> gimme a sec.
<drakonis> E1 no?
<ldlework> no
<ldlework> they're already in atari
<ldlework> they have a stone with just one liberty
<drakonis> aha
<ldlework> :)
<drakonis> i didnt try that because i wasnt sure whether it would kill mine or white's
<cole-h> I was curious, too
<drakonis> otherwise i would've done it turns ago
<ldlework> drakonis: the rule is, if the move kills during placement, it's ok and not a suicide
<drakonis> i see
<drakonis> interesting
<ldlework> if it doesn't kill anything, then it would have no liberties and die
<drakonis> I AM SAFE NOW
<ldlework> not quite
<drakonis> CRISIS AVERTED
<ldlework> but white has a number of weaknesses
<drakonis> CRISIS AGAIN
<ldlework> major shortages
<ldlework> drakonis: and they're in atari
<ldlework> nice
<drakonis> HELLO NEIGHBOR
<cole-h> Uh oh
<drakonis> i see two of them
<ldlework> drakonis: once you run out of atari's start looking for shortages
<ldlework> make sure you have no critical ones yourself
<ldlework> keep on top of this each turn and you'll do ok
<ldlework> goes for both of you :)
<MichaelRaskin> (surprised there is no #nixos-go yet; well, there is now that I went to that channel to check if it exists…)
<cole-h> There will be soon :)
<gchristensen> #nixos-baduk
<ldlework> ^