<colemickens>
might actually be useful if someone else uses srht+waybar. I could blog it as "stupid nix tricks" if nothing else, if I ever did that blogging thing
<colemickens>
siraben: what's the neatest thing you've done on your remarkable device so far? I'm debating sending it back
<colemickens>
so does it run X or what? I see there's a vnc client for it, so I could maybe use it as a terminal client outdoors, but I'd rather use an ssh client direclty
<drakonis>
that's ironic
<siraben>
There is a terminal emulator that can run on it
<abathur>
I think he's confusing cults with fandoms
<abathur>
or the other way around
<abathur>
or maybe they're more like tests and not takes
<abathur>
if someone sends me a pipebomb/missionary for farting that <x> is a cult, highly probable that it's a cult?
<samueldr>
we should make a twitter bot
<samueldr>
$OPEN_SOURCE_PROJECT is a cult
<samueldr>
then we can send it to him, freeing his previous time
<abathur>
with the asterisk that I myself had a handle that started with Sir in ye olde 90s, it weirds me out a little every time I see someone address him as Sir
<abathur>
enough so that I really don't want to click on any of his farts; there's always at least one it seems
<energizer>
hot take: it's sorta true. [like many niche communities] nixos and org are sorta isolated and systematically ignore or downplay their problems. at least nixos is best in class tho.
<abathur>
I don't really object to anyone calling NixOS a cult
<samueldr>
abathur: let me guess... was it sir abat? (abat sir)
<abathur>
no, sadly
<abathur>
I've been abathur for a while, but not since circa 2001-02ish
<samueldr>
that would have been quite funny
<energizer>
it does bother me that "hey im new should i use nixos" always gets a "yes" response
<energizer>
when the real answer is always "it depends" and more often than not just "no"
<abathur>
er, not before, yeesh
<abathur>
I answer no
<energizer>
abathur++
<{^_^}>
abathur's karma got increased to 9
<abathur>
I don't really object to people calling Nix/NixOS a cult
<abathur>
I don't really *agree*
<abathur>
but we do put up with a lot of pain for what we get
<energizer>
we certainly do
<abathur>
and I grok how, when just putting up with the pain and not getting the benefits
<abathur>
it can just seem like masochism
<abathur>
or obsession
<energizer>
or demonstrating commitment to the cause
<abathur>
basically my asterisk on "should I" is: do you already know Nix, or is it a spare system?
<abathur>
I started NixOS myself on a desktop that was no longer my primary work system
<samueldr>
I would add "are you deeply familiar with how a Linux distro work" as another option
<abathur>
so I had time for it to be useless for a week or two while I figured things out
<energizer>
my main criterion is "are you a software developer" and "do you want to spend a few weeks on this"
<samueldr>
since when you are, it's easier to make sense of some of Nixpkgs/NixOS does
<abathur>
right, fair
<samueldr>
I didn't know Nix when I jumped feet first into NixOS
<abathur>
my main razor is, will you blow your top if this doesn't work on a schedule?
<samueldr>
yeah
<samueldr>
that's mostly it
<samueldr>
do you have the time to fart around initially?
<samueldr>
if not, maybe wait or do it on another system than your main
<abathur>
for sure, I just mean, it's probably OK to hop into NixOS once you know Nix even if it's a primary system
<abathur>
but if you don't, I really wouldn't recommend doing it on a primary until you have found your sea legs with Nix itself
<energizer>
it's not just the time. you also need to know a lot of stuff about linux and even programming.
<abathur>
nod
<abathur>
FWIW NixOS is my first real desktop linux
<samueldr>
well, it's part of "time", knowing about linux and programming :)
<abathur>
by which I mean, I've run desktop ubuntu in a VM for giggles
<abathur>
but the vast majority of my linux experience before Nix was headless
<samueldr>
I was running Linux as my main operating system since 2006, and the kind of person to try and do funny stuff
<samueldr>
with ArchLinux I made a custom boot splash thing that could work with android boot splash animations
<samueldr>
well, I had a tool to convert them to my thing
<samueldr>
all of that so I could meme hard with a vaporwave "windows" theme
<abathur>
ha
<abathur>
obliquely, I think the thing that plowed me for Nix was Chef
<samueldr>
with matching login screen theme nonetheless
<abathur>
I've done some work on a chef cookbook for a MUD I nominally admin, sort of at the behest of the primary maintainer
<abathur>
and at one point I got stuck between a mysql update we needed, and a version update in the chef database cookbook that broke all kinds of crap for me and entailed a surprisingly big refactor
<abathur>
also, its git cookbook burned me 2 or 3 times by screwing up work I had uncommitted in a shared folder
<abathur>
I happened to read about Nix
<abathur>
around that time
<abathur>
and I knew
<abathur>
took me 2-3 years to have an actual excuse, but I knew then it'd eventually happen
red[evilred] has quit [Quit: Idle timeout reached: 10800s]
LnL- has joined #nixos-chat
LnL has quit [Ping timeout: 246 seconds]
kalbasit has quit [Ping timeout: 240 seconds]
Dotz0cat_ has joined #nixos-chat
Dotz0cat has quit [Ping timeout: 246 seconds]
endformationage has quit [Ping timeout: 240 seconds]
waleee-cl has quit [Quit: Connection closed for inactivity]
<supersandro2000>
I am taking a bit of a break. If I missed any important notification hit me up with it. Back to NightCity!
<supersandro2000>
If you are watching a Repo and they turn on a stable bot and you get hundreds of notifcations....
FRidh has joined #nixos-chat
<sphalerite>
note to self: don't use zfs clone. It's not what I want most of the time. Prefer zfs send | zfs recv.
cole-h has quit [Ping timeout: 256 seconds]
Hm7000 has quit [Quit: Idle for 30+ days]
__monty__ has joined #nixos-chat
FRidh has quit [Remote host closed the connection]
FRidh has joined #nixos-chat
<pie_>
sphalerite: hm
<sphalerite>
pie_: hm?
<pie_>
never thought of doing that
FRidh has quit [Ping timeout: 240 seconds]
FRidh has joined #nixos-chat
thibm has joined #nixos-chat
FRidh has quit [Remote host closed the connection]
FRidh has joined #nixos-chat
LnL- is now known as LnL
lassulus has quit [Ping timeout: 260 seconds]
<eyJhb>
Who has a public repo with Nix advent of code?
lassulus has joined #nixos-chat
lunc has quit [Ping timeout: 264 seconds]
<JJJollyjim>
only to compile and test my haskell which actually solves it lol
<LinuxHackerman>
samueldr: I think memeing hard with a vaporwave theme is the best reason to convert to nix I've heard so far
<pie_>
saw some article scroll buy about big companies pushing for more chrome adoption
<pie_>
by
<siraben>
ugh
<__monty__>
Had to join a google meet on wednesday. Didn't want to work with my firefox so they were pushing me to use chrome. Could imagine that being a common scenario rn.
<__monty__>
Btw, if anyone knows all the privacy unfriendly settings I need to enable to get google meet to work in firefox I'd be delighted to know.
<siraben>
I used google meet in firefox before, don't recall it being problematic.
<__monty__>
Yeah but I have a ton of stuff disabled, like webrtc.
<__monty__>
I'd rather figure out which settings interfere than open everything up but I don't know how to figure it out. I was hoping webrtc was the only thing but it seems not.
FRidh has quit [Ping timeout: 265 seconds]
FRidh has joined #nixos-chat
<patagonicus>
__monty__: using a throwaway profile for each Meet you join is not good enough? Like, what's your threat model?
<__monty__>
patagonicus: My threat model is web security is too hard so I'd rather be as restrictive as I can rather than guess at being restrictive enough.
<patagonicus>
Yeah, ok, that's not very specific. At that point you probably just want to unplug your computer.
<__monty__>
OR google could just publish which features meet requires?
<__monty__>
Not sure why trying to stay as secure as you can offends you.
<patagonicus>
Security is always a tradeoff. "As secure as you can" means not using computers, since there's always ways they can be exploited. Even if it's not networked, you can, for example, recover input from the electromagnetic waves that a keyboard produces.
<patagonicus>
As for why they don't publish which features it needs: that changes all the time as new features are added and old ones deprecated and testing is already hard with different operating systems and browser versions, so it wouldn't be tested anyway. The amount of users that care is also small. So why bother?
<__monty__>
Note that I asked if anyone knew which settings might be preventing meet from working, not whether there's a way to run meet while being 100% secure.
<patagonicus>
I was suggesting the one-off profiles in case you do it because of privacy. I'm not really sure what else there is to do - if you trust Google enough to open Meet, you're letting it run code on your machine, so security wise I'm not sure there's much to gain by disabling features. Either Meet uses them and you need to enable them or Meet doesn't
<patagonicus>
enable them and then it doesn't matter if your browser would let Meet use them.
<__monty__>
Unless there's malicious code which doesn't complain if it's prevented from running?
<siraben>
i clear cookies and browser data on exit and a few minutes after tab closing
<patagonicus>
Ok, now that's a threat model. :) Ok, if that's it, then, yeah, selectively enabling stuff until it works gives you bit of extra security.
<patagonicus>
Just keep in mind - if you're worried about Google doing it on purposes, they can always just make Meet fail if you block their evil attempts and you're unlikely to be able to tell if it's needed for $SHINY_FEATURE or $EVIL_HIDDEN_THING. If it's about injected code from a third party - well, they already get your webcam + mic + as much bitcoin they
<patagonicus>
can mine in the time you're in the meeting.
<__monty__>
I'm not worried about my box managing to mine any bitcoin : )
<__monty__>
I don't like trusting google this much but I figure it must be better than zoom, at least when considering third parties.
<__monty__>
And let's be honest there's no pragmatic alternative to zoom, google and skype.
<__monty__>
If all the participants were passionate about foss jitsi and some other *might* be an option but it's for coderdojo so we need something a dozen kids can get working in 10-20 min.
<siraben>
Jitsi is pretty user-friendly
patagonicus has quit [Ping timeout: 260 seconds]
Dotz0cat_ has quit [Ping timeout: 258 seconds]
patagonicus has joined #nixos-chat
<__monty__>
siraben: I don't know, I keep hearing it's impossible to set up without using BigBlueButton and even if you get it setup there's always issues.
<__monty__>
I'm definitely not hearing "This is a convenient alternative for people unaccustomed to working around issues with free software."
<omnd>
anyone that can give me a working method to reset a local account on win10 that actually works? any of the linux methods so far, seems to work but doesnt. chntpw etc
waleee-cl has joined #nixos-chat
Jackneill has quit [Ping timeout: 240 seconds]
<siraben>
__monty__: you don't even need to set it up if you use https://meet.jit.si/
<siraben>
colemickens: which reMarkable tablet do you have, and what have you been using it for?
<__monty__>
siraben: The misgivings I heard still apply though. If I had any faith in it working out of the box with little or no issue I'd push for it, hard.
Jackneill has joined #nixos-chat
Jackneill has quit [Max SendQ exceeded]
Jackneill has joined #nixos-chat
Jackneill has quit [Max SendQ exceeded]
Jackneill has joined #nixos-chat
Jackneill has quit [Max SendQ exceeded]
Jackneill has joined #nixos-chat
Jackneill has quit [Max SendQ exceeded]
Jackneill has joined #nixos-chat
<abathur>
spotted something crawling a web app I develop for .env files
<gchristensen>
ooh
<joepie91>
abathur: heh. another nice one is .git
<joepie91>
that works way too often
kalbasit has joined #nixos-chat
<ekleog>
Hey, it's trollday, anyone followed what's the current status of the CAS nix project?
<joepie91>
CAS?
<bbigras>
CAS?
<bbigras>
oh sorry I didn't see your message before sending it.
<gchristensen>
abathur: a hobby of mine is picking up a machine in a cloudy provider, seeing what ports people are talking to me on, and setting up honeypots to see if I can collect some interesting data
<gchristensen>
one time I got to become a salt master -- that was interesting
supersandro2000 has joined #nixos-chat
<ekleog>
Oh sorry, content-addressed store
<bbigras>
is it related to ipfs?
* ekleog
still thinks about how much rebuild power we could gain thanks to that project
<ekleog>
it's slightly related to ipfs, not sure what relationship exactly they're having with each other nowadays (each could be a dependency of the other depending on the point of view, or they could be independent)
<ekleog>
The idea of CAS being: if a new derivation builds to the same content as an old derivation, then we can unify the dependency trees below that point too because the result will be the same anyway
<ekleog>
but that requires putting things in the store (and depending on things in the store) based on the content hash instead of on the derivation hash
<ekleog>
which in a way is close-ish to what's required for ipfs
<JJJollyjim>
how could ipfs not depend on cas?
<__monty__>
That doesn't sound right. Dep A doesn't use function F which changed, rebuilding A you find no change, so you throw away the new F, while B does rely on F?
<ekleog>
Well, ISTR at some point ipfs was planned to happen only as an alternative substituter, so it's just another binary cache protocol
<ekleog>
__monty__: you don't throw it away, you throw away the new A rebuild
<ekleog>
s/it/F/
<gchristensen>
nix already uses a content-addressed store for NARs, which IPFS can depend on. CAS is making /nix/store support CAS derivations, which is separate from IPFS
<__monty__>
ekleog: Ah, because the current hash *would* change. Thanks.
<ekleog>
if the dependency graph is A -> B -> C and A -> D, then if A changes that'll rebuild B and D, and if after the rebuild B doesn't change it wouldn't rebuild C
<JJJollyjim>
hmm i see
<__monty__>
Am I correct in thinking the current hashes should only be an optimization? To be able to check caches and maybe shortcut building?
<gchristensen>
what do you mean?
<__monty__>
Afaiui, nix uses the hashes of the inputs because otherwise you can't avoid building things. While in reality you'd really like to work with a hash of the result because that's what really matters?
<__monty__>
The former is a good approximation of the latter often but not always.
<ekleog>
I think the current handling of input hashes (ie. .drv hash) is mostly that it is (much) more complex, implementation-wise, to efficiently use result hashes instead
<ekleog>
the reason for*
<gchristensen>
yeah it is even mentioned in the thesis
<__monty__>
Use of content hashes isn't any harder afaiui? It's just that you need to completely evaluate/build something before you can compute them?
<ekleog>
which in turn complicates things, due to the fact that build becomes intermixed with evaluation as you can "${myderivation}"
omnd has quit [Ping timeout: 240 seconds]
FRidh has quit [Quit: Konversation terminated!]
lunc has joined #nixos-chat
cole-h has joined #nixos-chat
neeasade has joined #nixos-chat
red[evilred] has joined #nixos-chat
<red[evilred]>
"You're just saying that because you haven't been properly indoctrinated by our good Lord Dolstra." -- I confess - I sprayed coffee over my desk when I read that
<red[evilred]>
ekleog (IRC): - so I'm confused by something you said here:
<red[evilred]>
"if the dependency graph is A -> B -> C and A -> D, then if A changes that'll rebuild B and D, and if after the rebuild B doesn't change it wouldn't rebuild C"
<red[evilred]>
I was under the impression that the hashes were generated from the inputs, not from the results of the compilation
<red[evilred]>
so I'm trying to understand how you could have a change in A which doesn't propogate all the way down
<red[evilred]>
obviously that's what we want - so how is it being achieved?
<thibm>
red[evilred]: that was a discussion about content addressed store, or intensional model for Nix
<thibm>
that's not how it works now, indeed.
<red[evilred]>
oh - okay
<red[evilred]>
thanks
<thibm>
"obviously that's what we want" ⇒ not necessarily
<thibm>
imagine you build coreutils because one of its dependency changed, but the output of coreutils is exactly the same
<red[evilred]>
I recall seeing Lord Dolstra write a blog post on the subject of calculating hashes in that self-referencial system
<thibm>
do you "want to" rebuild everything that depend on coreutils or not? ;)
<thibm>
yes there are blog posts about that on Tweag's blog
<red[evilred]>
Right - but how do you know that the output of core utils is the same
<red[evilred]>
unless you do some kind of "post-build hashing"
<thibm>
(not by him though)
<thibm>
it's some kind post-build hashing
<thibm>
(disclaimer: i'm not at all an expert)
<ekleog>
Yeah, the “how to” is the really hard part
<ekleog>
The only idea I seem to remember about it was to place the build output under both its content hash (by value) and under its input hash(es) (by a symlink to the content hash)
<ekleog>
but then you still have a risk of having input hashes which is bad
<ekleog>
another idea actually was hash rewriting, but I don't think anyone ever suggested that we could do that in all situations — though we maybe could decide that things for which we don't know how to do it don't belong in nixpkgs and people can still do it by going out of CAS
<ekleog>
anyway, hard problem :/
<__monty__>
Surely you can't do away with input hashing altogether? Otherwise you break caching, and checking your own store for whether or not you've built something?
<__monty__>
thibm: Do you mean because some things depend on coreutils even though really they depend on the dependency?
<thibm>
__monty__: no
<thibm>
my example was exactly like the A -> B -> C and A -> D example
<thibm>
B = coreutils
<__monty__>
Then I don't know why you'd still want to rebuild C.
<thibm>
you don't want to
<thibm>
but that's what Nix does today
<__monty__>
You're making this a lot more confusing than it has to be imo. That example was for CAS.
<thibm>
maybe. It's related anyway.
<__monty__>
It's confusing because you said this ""obviously that's what we want" ⇒ not necessarily"
<__monty__>
Imo not rebuilding anything depending on something that didn't change *is* what we want.
<__monty__>
The real crux of the problem imo is that even if nix worked fine with CAS you need reproducible builds to be certain content hashes won't change.
<ekleog>
I think there was a misunderstanding on what “that” is in this sentence
<thibm>
"Imo not rebuilding …" > that's what I said (I just said "maybe not" instead of "not at all")
<ekleog>
also yes, reproducible builds are an effort to be pursued concurrently with CAS, but with CAS even if we could make just glibc reproducible it'd already be a great win: we could optimize for what we make reproducible by looking at the narrow parts of the graph
<ekleog>
of the nixpkgs derivations' dependency graph*
<__monty__>
I'm still confused. It sounds to me like we're saying "Not rebuilding is what we want." and you say "Maybe not," as in "I can think of a couple reason we would *not* want that," thibm.
<__monty__>
ekleog: True.
<thibm>
__monty__: I see
<ekleog>
__monty__: I think thibm interpreted the “that” in the “obviously that's what we want” as being “rebuilding when input drv hashes change even if input content hashes don't change”, though I may be wrong as I'm not them
<thibm>
yes
<__monty__>
Cleared up now, thanks.
<thibm>
cool. I said "not necessarily" (to "rebuilding is what we want") and I agreed I could have said "no". For what reasons would we not want that? Good question
rajivr has quit [Quit: Connection closed for inactivity]
cole-h has quit [Ping timeout: 260 seconds]
<philipp[m]>
,launch
<{^_^}>
Ping for space stuff: infinisil Taneb ldlework etu philipp[m] eyJhb gchristensen
<__monty__>
thibm: Now you're confusing me again. Yes/No, we don't want to rebuild something if its dependencies' content hashes didn't change, no matter whether the input hashes changed?
<philipp[m]>
T-3 minutes though, so click fast.
<thibm>
__monty__: I'm sorry x). Yes, we don't want to rebuild something if its dependencies' content hashes didn't change
<philipp[m]>
They are holdling anyway.
<__monty__>
thibm: Thanks! : )
endformationage has joined #nixos-chat
<infinisil>
Damnit, I missed it!
<infinisil>
Oh it didn't launch, phew!
<eyJhb>
AHA! I missed not missing it
<energizer>
I'm guessing the easiest way to solve wake-from-suspend issues is just get a new graphics card?
<colemickens>
siraben: I have the remarkable 2. So far I used it to explain some CSE 160 stuff to my partner. Otherwise it's been in a pile to return :/
<energizer>
colemickens: rm2 looked interesting to me but i didnt try it, what don't you like about it?
<colemickens>
It's not that there's anything I dislike, it's just that I don't have extensive uses for such a device.
<siraben>
What's CSE 160?
<colemickens>
CSE160 is some intro-ish to Python and data analysis
<siraben>
I see.
<siraben>
As a uni student, I use it all the time for class notes/homework/assignment, reading papers and books, and piano sheet music
<siraben>
previously would print a lot, heh
<colemickens>
My partner has a 2-in-1 Chromebook that he uses for that purpose, and is really hooked on the ability to use different colors.
<siraben>
Ah, yeah, rM is only B&W
<siraben>
colemickens: have you ssh'd into it and so on? it's very hackable
<colemickens>
not yet, I figured if I did anything with it, I'd try to get fingerterm built for it?
<__monty__>
I've heard complaints about its ePub capabilities, any truth to those claims?
supersandro2000 has quit [Client Quit]
supersandro2000 has joined #nixos-chat
<red[evilred]>
philipp[m] (IRC), infinisil (IRC) - how does one get added to the ,launch bot notifications?
<infinisil>
,help red[evilred]
<{^_^}>
red[evilred]: Use `,` to list all commands, `,foo = Foo!` to define foo as "Foo!", `,foo =` to undefine it, `,foo` to output "Foo!", `,foo somebody` to send "Foo!" to the nick somebody
<infinisil>
Just edit the command, adding yourself :)
<red[evilred]>
nice!
<red[evilred]>
now I don't really want to comma launch just to add myself - since it will ping all those people
<red[evilred]>
oops
<red[evilred]>
,
<{^_^}>
Special commands: find tell locate expand inclusive-language random-pr permalink - Commands sorted by use count, page 0 (use ,<n> to view page <n>): help libraries channels ping paste escape'' -a escape" library ifd overlay botsnack pinning profiling unfree ask which-channel imperative xml wololo xy fancy-uninstall tofu nixlang++ pointers cache commands pills runtimedeps thesis home-manager invite stateversion unstable exec smart-questions
<infinisil>
red[evilred]: I guess you could redefine it in #bottest instead :P
<red[evilred]>
ahh
<philipp[m]>
It also took me a moment to understand.
<infinisil>
Now redefined it to also have a short explanation how to add yourself
<energizer>
any downside to using linuxPackages_latest?
<samueldr>
not really, though if there's a change in behaviour in kernel drivers, it'll end up affecting you
<samueldr>
be it good or bad changes in behaviour :)
<infinisil>
energizer: Recently this caused problems for me, where the latest kernel slowed down my whole machine to an almost unusable state