gchristensen changed the topic of #nixos-chat to: NixOS but much less topical || https://logs.nix.samueldr.com/nixos-chat
<infinisil> So the only difference is the speed?
<samueldr> if you abstract the mechanisms behind, yes
<samueldr> oh, maybe another thing, the github page will put your scrolling position back on top
<infinisil> So my browser doing the "I'm changing to a new page, display the loading bar and stuff" is only because it takes longer than e.g. 100ms?
<samueldr> github prints its own bar in the DOM
<samueldr> and the browser will show the load event due to the AJAX requests
<infinisil> Oh I see
* infinisil thinks some more about it
<samueldr> (web *is* complicated)
<samueldr> and in this particular instance it's compounded by there being multiple history events to consider
<samueldr> which are related, but not solved the same way
<samueldr> you have 1) the channel selection 2) search terms change 3) unfree change 4) result page selection
<samueldr> any on top of (4) will change what's available and on which page it is available
<infinisil> Hmm, so I'd think that (1) should produce history entries, while the others shouldn't. Currently all of them do, and you agree with the current behaviour?
<samueldr> let's forget about (1) since it's a no-brainer and isn't hard to conceptualize
<infinisil> Maybe I'm still not getting it haha
<samueldr> (I meant that yes, 1 should produce history)
<Drakonis> is dealing with iqubic normally hard?
<infinisil> Drakonis: Yes..
<Drakonis> welp
<infinisil> Drakonis: /ignore recommended, they have been in #nixos for over a year and didn't seem to learn anything
<infinisil> (sorry not sorry)
<Drakonis> haw
<Drakonis> i mean, a year and learning nothing? that's a shame
<samueldr> it feels that 80% of the time they just ask without looking things up, but the moment iqubic *tries* they generally can do it
<samueldr> (assuming it's at a level they should know)
<Drakonis> i still feel like an complete newcomer
<samueldr> yes, and that's a bit of the issue :(
<infinisil> Drakonis: You apparently know more than iqubic already though, which is not really hard to achieve, but still!
<Drakonis> i don't know how i can actually write down any knowledge i accumulate into docs
<samueldr> Drakonis: first thing to do is just note it in a log
<samueldr> not even format it
<samueldr> just each thing you try
<samueldr> write it
<samueldr> and then the result
<samueldr> formulate questions in writing
<samueldr> and answer them
<samueldr> you are accumulating raw data at that point
<samueldr> things you tried, things you "know"
<samueldr> (they may not be *right* but it's your understanding at that point in time)
<Drakonis> i feel like setting up something like org-mode might be nice for writing things down
<samueldr> it may be a trap!
<samueldr> you want to play with a tool, instead of just writing down things
<samueldr> so do it *not when you're trying to write down things*
<samueldr> make it a separate process to learn the tool you want to do to write down things :)
<samueldr> infinisil: it may be my old-school self at play here, but on the web, a link is a link is a link, whether it does fancy javascript things or no fancy thing and loads a page via http; if a link loads a page of contents, it's a link
<Drakonis> that sounds like a plan
<samueldr> so as for pager navigation, the next/previous links are links
<samueldr> they load a page of contents
<samueldr> since the mid 90s, when the web was conceived, links caused history events to be pushed on the stack
<samueldr> there were dark ages where it was impossible for fancy things to push on the stack, leading to badly designed "apps" with their own back navigations (I'm not talking about pager here)
<infinisil> samueldr: It's annoying for the user though, it's like scrolling through a man page and having to unscroll all the way to the top to be able to exit
<samueldr> infinisil: if the page was made without javascript, the same behaviour would happen
<infinisil> The next/prev buttons are essentially replacements for not being able to display 100000 packages in a single long list
<samueldr> that's the way to build the experience
<samueldr> ah, that's another issue
<samueldr> we could show the long list
<samueldr> though it'd be hell in many cases
<samueldr> somehow, browsers aren't good at dealing with a bunch of textual dom elements :/
<samueldr> go figure
pie_ has joined #nixos-chat
<infinisil> That doesn't sound very nice
<infinisil> I like the idea of prev/next, but it seems like the ideal opportunity to use javascript to not push a boatload of entries in the users history
<infinisil> Would like to hear what others think of this though
<samueldr> I think this is strictly into the bike shedding territory
<Drakonis> let's yak shave
<samueldr> well, not even
<samueldr> Drakonis: yak shaving is what you need to do to get to the bike shed :)
<infinisil> How about a lazy long list, like youtube subscriptions (scrolling down makes more entries load)
<samueldr> infinisil: the issue being that you can't link into a lazy long list
<samueldr> any screenful of information you can see with the package searcher, you can copy the URL on top and see the same result (with the same data input)
<infinisil> Ah yeah, or you can, but it's slow
<infinisil> (because it needs to travel through everything first)
<samueldr> infinisil: in that case you can assume it would be fast
<samueldr> all the data is already there
<samueldr> most lazy lists are lazy in loading them ad-hoc
<infinisil> Okay, no long lazy list then
<samueldr> while we have the whole channel information pre-loaded
<infinisil> I get your point, and there's lots of other sites doing a similar thing. E.g. just looking at hackernews
<samueldr> ?
<infinisil> Their "More" button at the bottom
<infinisil> It goes to the next page, and puts a history entry
<samueldr> (in this case, no JS fancyness AFAICT)
<infinisil> Oh right, but it would behave the same if with javascript (minus loading time)
<samueldr> yes
pie__ has joined #nixos-chat
pie_ has quit [Excess Flood]
<infinisil> I'm not sure what it is, but your demo doesn't make prev/next loads seem like a new page justifying a new entry
* samueldr adds fake loading time
<samueldr> ;)
<infinisil> Haha
<samueldr> you see
<samueldr> I actually had to do that once
<samueldr> for a client
<infinisil> I've heard of such stories heh
<samueldr> the fact that the information loaded instantly... no, it shouldn't
pie___ has joined #nixos-chat
<samueldr> I added a small wait and an animation for the loading and everything was right :/
<samueldr> but I *do* see the reasoning behind your thinking
<samueldr> you see an app
<samueldr> and not pages
<samueldr> which is entirely fine
<samueldr> if the web was to be rebuilt
<infinisil> Yes
<samueldr> history could really well be rebuilt with that in mind
* infinisil goes looking at some other websites to see if he can find a similar one
<samueldr> where you get a "site" history, and a "page" history
<samueldr> alas, we're stuck with decades of legacy
<samueldr> and bad decisions
* samueldr weeps
<samueldr> AND PEOPLE SAY LEARNING NIX IS HARD
<infinisil> FWIW https://nixos.org/nixos/packages.html also doesn't add new history entries
<samueldr> ignore those, they're "old school" js with few regards to the UX in that regard
<samueldr> it's kinda hard to explain, one of the reason you may feel this is because of how it's harder to do the right thing
<samueldr> so sites often don't do it
<Drakonis> 42582 packages hoo boy.
<samueldr> for application-like flows
pie__ has quit [Ping timeout: 240 seconds]
<infinisil> Hmm.. okay but if we look at this from a bit more of a theoretical perspective
<infinisil> The advantages of no history entries are that you get back to the previous webpage quickly *if* you want that. If you intended to go to the last page on the same site you can't do that.
<infinisil> advantages and disadvantages of yes history entries are inverted
<infinisil> Now what is the ratio of people intending to go back to the last webpage vs wanting to go to the last page in the list?
<infinisil> (I can't answer this obviously, only estimate)
<infinisil> Also, need to incorporate the expected result there
<Drakonis> since we're bikeshedding about the website, why isn't the nix wiki moved into the org domain?
<infinisil> Because for the longest time now, the NixOS homepage worked without history entries. Suddenly changing it would certainly confuse people at first (if they do needed this functionality they may be glad later though)
<infinisil> samueldr: Ultimately I don't really care that much, even though it seems like I do right now :P
<samueldr> Drakonis: because it's a users-maintained wiki
<samueldr> not part of the nixos organization
<samueldr> infinisil: I care about making sure you realize how bad *implementation of all things* are on the web
<samueldr> keep away from the web if you can
<samueldr> :)
<samueldr> (in your developer life I mean)
<Drakonis> s/web/computers
<infinisil> I'll try lol
<Drakonis> hmm, wouldn't it be forwarding looking to have a domain for the non official services ala debian dot net
<Drakonis> there's dot org for the official stuff
<samueldr> Drakonis: that's why it's at nixos.wiki
<samueldr> it's the domain for the non-official service for the wiki
<samueldr> I guarantee that if it becomes managed by the nixos org, it will stay nixos.wiki
<Drakonis> well, what if i want to run something that's not wiki related :V? would it be a wiki subdomain?
<samueldr> ah, there may be other domains
<samueldr> that was an X/Y question Drakonis :D
<samueldr> I really should lobby again to figure out a solution for my logging bot :)
<Drakonis> haha welp
<Drakonis> so that's what an x/y question means
<Drakonis> i shouldn't ask the solution for a problem i already solved
<samueldr> asking X but actually having Y in mind
<infinisil> samueldr: Solution to what problem?
<samueldr> infinisil: getting under the nix(os?).community domain instead of nix.samueldr.com
<Drakonis> say there's a domain for unofficial nix servers, in which they may graduate in the future into official services
<infinisil> Oh I see
<Drakonis> there's that
<Drakonis> probably simpler
<samueldr> Drakonis: the current ad-hoc process is hosting it under something personal, try something without your irc handle
<samueldr> and then there's no real historical follow-ups
<Drakonis> okay that answers the question
<samueldr> see all under nix.gsc.io :)
<samueldr> see all under nix.samueldr.com :)
<infinisil> We should do it like tumblr haha
<Drakonis> hahaha
<samueldr> infinisil: meaning?
<infinisil> Everybody gets their own subdomain when they sign up
<samueldr> lol
<infinisil> It's really neat, I like it
<samueldr> not under nixos.org due to security issues
<Drakonis> it works
<infinisil> Definitely not fit for nixos.org though
<samueldr> I should really work on doing something with that idea
<Drakonis> definetely not, thus an extra domain for those semi official services
<samueldr> (nix manpages service)
<infinisil> samueldr: :OOO
<Drakonis> yes please
<samueldr> HEY
<samueldr> I'm already into something way too deep
<Drakonis> you can steal debian's source for that
<Drakonis> HEYO FRIENDO
<samueldr> Drakonis: not really since we can have multiple clashing pages
<samueldr> and I'm not only talking about updates
<infinisil> samueldr: How can I find available store paths?
<infinisil> (if at all right now?2
<infinisil> Oh, right
<Drakonis> i mean the man page lookup
<samueldr> you also can see when it was all generated
<samueldr> Drakonis: in my particular case, I'm sure it's more worthwhile to implement it due to the specifics of nix
<infinisil> samueldr: Got the git commit this was done from?
<samueldr> no
<samueldr> it wasn't done from a git commit
<samueldr> well
<samueldr> I say that
* samueldr logs into server
<Drakonis> debian's implementation is fairly elaborate from an user interface perspective
<infinisil> If it was, I could make ,locate man link to these pages if available
<samueldr> infinisil: whatever the 17.09 channel was february 26th
<Drakonis> except maybe the part where it separates by releases instead of versions
<infinisil> Phew
<samueldr> :)
<Drakonis> yeah okay this might be a problem
<infinisil> Oh, git doesn't have branch history..
<samueldr> infinisil: forget about it, it's stale data
<samueldr> the moment I can dig my way down in my stack of things, I'll try doing something
<samueldr> or if someone wants to adopt the janky mess
<infinisil> Nah no problem
<infinisil> samueldr: Okay one question: How did you generate the html files?
<samueldr> implementation note: it doesn't rely on an evaluation
<samueldr> it directly works with .nar
<samueldr> or .narinfo
<samueldr> mandoc -Thtml -Ostyle=/man/style.css
<Drakonis> TIL target uses Nix
<infinisil> Neat
<pie___> target is weird :p
<samueldr> ah right, so infinisil, it uses nix-locate to figure out all man file paths, then it downloads directly the .narinfo / .nar for those packages
<samueldr> and from the .nar.xz, extracts only the manpages
<samueldr> so it completely removes nix from the equation
<samueldr> I can easily bypass any closure size catastrophe
<infinisil> samueldr: Oh that's neat!
<Drakonis> someone check on the main channel real quick
<Drakonis> some folks seem allergic to looking things up
<Drakonis> but that works
lassulus_ has joined #nixos-chat
lassulus has quit [Ping timeout: 260 seconds]
lassulus_ is now known as lassulus
pie___ has quit [Remote host closed the connection]
pie___ has joined #nixos-chat
sir_guy_carleton has quit [Quit: WeeChat 2.0]
Guanin has quit [Ping timeout: 256 seconds]
Guanin has joined #nixos-chat
Drakonis has quit [Read error: Connection reset by peer]
Lisanna has quit [Remote host closed the connection]
jD91mZM2 has joined #nixos-chat
<jD91mZM2> "Due to the persistent ongoing spam, all new connections are being scanned for vulnerabilities. This will not harm your computer" <- This sounds like it suggests it even can harm my computer
lassulus has quit [Ping timeout: 244 seconds]
lassulus has joined #nixos-chat
lassulus has quit [Client Quit]
lassulus has joined #nixos-chat
jtojnar has quit [Remote host closed the connection]
jtojnar has joined #nixos-chat
<maurer> If it's working the way people are theorizing, it probably won't even help?
<maurer> The guess people have is that 90% of it is browser based, so a remote scan won't turn anything up
<samueldr> maurer: nah, it's open proxies
<samueldr> at least, the ones outside freenode
<samueldr> about 90% of the connections on my IRC server have an open port in a well-known range for botnet-like behaviour
<samueldr> (not only the port needs to be checked)
<samueldr> ideally, what a network would do is not stop a user connecting at that moment, but give them really bad karma
<samueldr> but pretty sure no irc servers operate that way
<samueldr> (you would treat users with bad karma differently, don't show their join/part/quit until they message successfully)
<samueldr> (not show messages that fail spam heuristics or filters)
<maurer> My guess is that they are not bothering to filter the spam based on the obvious metrics because they don't want the spammers to start mutating it
<maurer> if they're cutting it off at the source somehow, or trying to (and failing) it'd be useful to know you can easily classify the spam
<samueldr> given the sophistication of the attacks, they might not know how to at first :/
<samueldr> and mutating the spam is going to happen
<samueldr> they're just making sure they spam more right now
<jD91mZM2> Welp, if I go down randomly mid-conversation, they might decide to IP block the spammers. I'm using a VPN :P
<jD91mZM2> That might be because*
<samueldr> let's hope their heuristics for port scan are good
<samueldr> though, the amount of vpn-users and nerds-with-open-ports here almost guarantees it won't happen
<jD91mZM2> Good! Nothing more annoying than being unable to access something like csstricks, hackernews, or maybe even DuckDuckGo
<samueldr> :/ cloudflare?
<jD91mZM2> For csstricks, maybe. Hacker news have their own system, and so does DuckDuckGo (which are just temporary bans for an hour or so)
<jD91mZM2> Oh, especially Minecraft. Which just fails like "invalid password" because their error handling sucks. And some random redditor said they emailed the support and got back "we block ips for security reasons"
<samueldr> ugh, it's a situation where ipv4 makes it hard to do it right :(
<samueldr> do you have a privately allocated IP address or a shared one? I'll assume a shared one for what follows
<jD91mZM2> Makes what hard to do? Block IPs? Yeah that's quite the impossible scenario. Can't be both anonymous and still identify users
<jD91mZM2> Shared, yep. Like the anonymity
<samueldr> the issue is how if $skiddie used *that one* IP address to do $stuff, how can you know user is $skiddie or $goodie?
<samueldr> and when $skiddies use $service to do $stuff, it makes it a hard gamble :(
<maurer> I'd recommend SSLing your connection too if it's not already
<jD91mZM2> "Can you hack a computer using HTML blockchain? [y/n]"
<maurer> Frequently people will give less weight to the chance that an SSL'd connection is a botnet attack because it's more of a pain/more resources
<samueldr> (the current irc attacks are all plaintext on my server)
<jD91mZM2> maurer: I don't actually know if I use SSL, heh. I've seen some errors with SASL or something when connecting but I'm too lazy to bother checking it out
<jD91mZM2> I know I at least *tried* to identify using SASL and SSL
<samueldr> I've just been too lazy to check up on the other users if they are all SSL users, and then disable plaintext lol
<jD91mZM2> (Didn't mean I identify using SSL, that came out wrong, I promise I'm not a skiddie don't ban me)
pie___ has quit [Quit: Leaving]
Drakonis has joined #nixos-chat
Drakonis has quit [Remote host closed the connection]
aszlig has quit [Quit: Kerneling down for reboot NOW.]
<samueldr> keeping the whole API response inside the sqlite db was a great idea, I was missing a field in the cached fields, but was able to get it without doing the whole dump :)
aszlig has joined #nixos-chat
jD91mZM2 has quit [Quit: WeeChat 2.0]
__monty__ has joined #nixos-chat
lopsided98 has joined #nixos-chat
Drakonis has joined #nixos-chat
Drakonis has quit [Read error: error:1408F10B:SSL routines:ssl3_get_record:wrong version number]
Drakonis has joined #nixos-chat
kisik21 has joined #nixos-chat
kisik21 has left #nixos-chat [#nixos-chat]
__monty__ has quit [Quit: leaving]
* samueldr wonders if the numbers sound right
<samueldr> (possibly rebased means there are commits from PRs that are identical, but do not share the sams SHAs)
Drakonis has quit [Remote host closed the connection]
Drakonis has joined #nixos-chat