Search logs:

channel logs for 2004 - 2010 are archived at http://tunes.org/~nef/logs/old/ ·· can't be searched

#osdev2 = #osdev @ Libera from 23may2021 to present

#osdev @ OPN/FreeNode from 3apr2001 to 23may2021

all other channels are on OPN/FreeNode from 2004 to present


http://bespin.org/~qz/search/?view=1&c=osdev2&y=24&m=7&d=2

Tuesday, 2 July 2024

00:00:00 <Ermine> in this message you sound like a maintainer
00:01:00 <Ermine> seems like CSM slowly becomes a thing of past
00:02:00 <nikolapdp> not reall
00:02:00 <nikolapdp> qemu just supports bios boot natively
00:02:00 <nikolapdp> no need for csm
00:02:00 <heat> csm is a thing of the past in real hw
00:02:00 <nikolapdp> well my brand new motherboard has it
00:02:00 <nikolapdp> so not really
00:03:00 <Ermine> my pc has csm, but it's from 2012
00:03:00 <nikolapdp> and my laptop has it and it's from a couple of years ago
00:03:00 <nikolapdp> csm is not going anywhere
00:03:00 <nikolapdp> at least not quickly
00:03:00 <Ermine> my laptop doesn't have csm
00:04:00 <nikolapdp> > at least not quickly
00:04:00 <geist> heat_: you got bumped?
00:05:00 <klys_> and it does work fine, in fact.
00:05:00 <geist> hmm, whats the most recent machine i've looked at? last i checked they all stil have CSM
00:05:00 <geist> i assume it's just a basic package that comes with AWARD or whatnot bios
00:05:00 <geist> the vendor just checks the box and builds it, puts it behind a checkbox in the bios page
00:06:00 <nikolapdp> as i said not going anywhere yet
00:07:00 <heat_> geist, bumped?
00:08:00 <geist> oh you left as heat and came back as heat_
00:08:00 <heat_> hi, different heat surely
00:09:00 <heat_> no i have not been bumped by a lack of CSM, but the message coming from intel (and amd I believe, to a lesser extent, mostly because they're less open) is that CSM is gone from intel sillicon packages
00:09:00 <heat_> it might be AMI or insyde or whatever maintaining their separate CSM awfulness
00:10:00 <Ermine> why all people having audio issues on alpine appear at nights?..
00:12:00 <heat> survivorship bias
00:13:00 <nikolapdp> le
00:13:00 <nikolapdp> lel
00:13:00 <heat> people having audio issues on alpine during the day had the energy to switch to onyx instead
00:13:00 <nikolapdp> doubt that
00:21:00 <Ermine> no doubt
00:21:00 <Ermine> no audio - no issues
00:21:00 <heat> amen
00:33:00 <klys_> heat pulled me out of the lurch and i'm still flipping like a fish: http://show.ing.me/paste/csm-errata/grub4dos-0001.png
00:37:00 <klys_> (image was wrong for a few seconds, sorry if you clicked too soon)
00:38:00 <heat> hah what the heck
00:40:00 <heat> "CSM is incredibly complicated and effectively undebuggable. I had had
00:40:00 <heat> some serious struggles with it, years ago, back when KVM's emulation for
00:40:00 <heat> real mode was rougher around the edges. Those experiences scarred me
00:40:00 <heat> enough that I upfront told everyone on my team that I would never ever
00:40:00 <heat> consider supporting CSM in any RHEL build of OVMF."
00:40:00 <heat> maybe this dissuades you from ovmf CSM :P
00:40:00 <nikolapdp> works fine for me
00:41:00 <klys_> grub4dos though...
00:42:00 <klys_> ...appears to flake out right after sti http://show.ing.me/paste/csm-errata/grub4dos-0002.png
00:52:00 <klys_> is there another way to load multiboot binaries from dos?
04:32:00 <kof673> http://projectsweb.cs.washington.edu/research/projects/unisw/DynComp/www/Internal/Discussion/spin-comp-archive Date: Wed, 24 Feb 1999 Subject: Announcing C-Mix 2.0 Version 2.0 of C-Mix has been released quote: <<<Comparison with older C-Mixen>>>
05:08:00 <geistpdp> got irc from the pdp11 working!
05:09:00 <zid> you have to battle nikolar to the death now
05:09:00 <geistpdp> hopefully this will deal with ping pongs and whatnot
05:09:00 <geistpdp> i win by default because this is a real PDP
05:10:00 <zid> Especially if you threw it at him
05:11:00 <geist> https://usercontent.irccloud-cdn.com/file/Kp4SjVDi/ircpdp.png
05:16:00 <Jari--> geistpdp congrats
05:17:00 <Jari--> geist any 32-bit OS projects at osdev.org / projects, that have a 32-bit ELF loader?
05:17:00 <Jari--> in C
05:17:00 <Jari--> no one could ever answer this question
05:17:00 <geist> probably quite a few
05:17:00 <geist> sortix, heats OS, i wrote one forever ago that's probably linked there
05:20:00 <geist> pushed a bugfix up to the repo
05:23:00 <Jari--> geist yup found the repo https://gitlab.com/sortix/sortix/
05:23:00 <bslsk05> ​gitlab.com: sortix / Sortix · GitLab
05:23:00 <Jari--> but it does not say where the ld is
05:23:00 <Jari--> runtime linker
05:23:00 <geist> well, i'm sure you'll h ave to find it
05:23:00 <Mutabah> My old OS, Acess2 has one too
05:23:00 <geist> though sortie may have ported it from glibc or so?
05:23:00 <Mutabah> https://github.com/thepowersgang/acess2/blob/master/Usermode/Libraries/ld-acess.so_src/elf32.h
05:23:00 <bslsk05> ​github.com: acess2/Usermode/Libraries/ld-acess.so_src/elf32.h at master · thepowersgang/acess2 · GitHub
05:23:00 <geist> yeah, i have a super simple one in LK even
05:24:00 <geist> https://github.com/littlekernel/lk/blob/master/lib/elf/elf.c#L170 is the guts of it
05:24:00 <bslsk05> ​github.com: lk/lib/elf/elf.c at master · littlekernel/lk · GitHub
05:24:00 <geist> only really handles statically linked things, etc
05:24:00 <Mutabah> Mine handles dynamic linking, and supports both 32 and 64-bit ELF
05:24:00 <geist> indeed! i had a good one back in newos, but it's so old i dont really wanna link it :)
05:24:00 <geist> also hi Mutabah how ya doin?
05:25:00 <Mutabah> Keeping myself suitably insane :)
05:25:00 <Jari--> does https://github.com/littlekernel/lk/blob/master/lib/elf/elf.c#L170 use hashtables?
05:26:00 <geist> look at mutabahs, the one i linked is very simple i fyou want the hash
05:26:00 <Jari--> geist no rather as simple as possible
05:26:00 <geist> it does not do hash tables
05:26:00 <Jari--> great!
05:27:00 <Mutabah> The file you want in mine is `elf_impl.c` - which is #include-d with the ELF type set
05:27:00 <geist> https://github.com/travisg/newos/blob/master/kernel/elf.c i wrote like 25 years ago seems to do some of it
05:27:00 <bslsk05> ​github.com: newos/kernel/elf.c at master · travisg/newos · GitHub
05:28:00 <geist> it's the in kernel linker, loads kernel modules, but also deals with symbol reoslution
05:29:00 <geist> https://github.com/travisg/newos/tree/master/apps/rld the user space loader also does full loading + dynamic linking
05:29:00 <bslsk05> ​github.com: newos/apps/rld at master · travisg/newos · GitHub
05:31:00 <Jari--> Mutabah geist lots of fun with dependencies :) error error!
05:32:00 <Jari--> if you could automate it somehow
05:32:00 <Jari--> is the code gcc-12 compatible?
05:32:00 <Jari--> or do I need gcc-9
05:32:00 <geist> who what?
05:34:00 <Jari--> gcc-9 appears more stable than gcc-2.95 I used originally
05:34:00 <geist> what are you talking about?
05:34:00 <Jari--> JTMOS my os
05:36:00 <Mutabah> Jari--: Which code are you building?
05:36:00 <Mutabah> Also - the acess2 code is from about 10 years ago? so probably gcc5 era?
05:37:00 <geist> yah the newos code is from the gcc 3 era
12:20:00 <dostoyevsky2> how much of fuchsia is written in Rust these days?
14:09:00 <nikolapdp> geist congrats :)
14:09:00 <nikolapdp> glad to see it working
14:09:00 <nikolapdp> though i win by default because i ported it :P
14:15:00 <zid> You won't be laughing when you're crushed to death by a real pdp-11
14:15:00 <Reinhilde> :D
14:15:00 <nikolapdp> zid yeah because i'll be dead
14:15:00 <zid> winner but dead
14:15:00 <nikolapdp> indeed
14:15:00 <nikolapdp> worth it, no?
14:22:00 <zid> I finished my crappy pizza
14:22:00 <zid> 5/10 not recommend
14:22:00 <nikolapdp> what
14:23:00 <nikolapdp> did you have it hours ago
14:23:00 <zid> I ate half of it cus it wasn't that interesting
14:23:00 <zid> then fell asleep
14:23:00 <nikolapdp> lol
14:23:00 <zid> then had the other half for breakfast with garlic and chive dip
14:24:00 <nikolapdp> and it still sucked
14:24:00 <zid> correct
14:24:00 <zid> most of it was the weird base, don't get chibatta base
14:25:00 <nikolapdp> i'll keep that in mind
15:10:00 <nikolapdp> where there ever multiprocessor/multicore m68k systems
15:11:00 <GeDaMo> Yes
15:14:00 <nikolapdp> which systems though
15:14:00 <GeDaMo> Sorry, one question to a customer :P
15:14:00 <nikolapdp> lol
15:15:00 <GeDaMo> I seem to remember Alexia Masselin's Synthesis OS ran on a home built dual core 68K system
15:15:00 <nikolapdp> interesting
15:15:00 <GeDaMo> But possibly Sun or SGI had something
15:16:00 <nikolapdp> yeah maybe
15:22:00 <GeDaMo> https://en.wikipedia.org/wiki/Aesthedes "The first version was equipped with ten Motorola 68000 microprocessors"
15:25:00 <nikolapdp> oh 10
15:25:00 <nikolapdp> fancy
15:29:00 <GeDaMo> Looks like I misremembered about Synthesis
15:30:00 <GeDaMo> But one of the systems it ran on "The Sony NEWS 1860 is a workstation with two 68030 processors"
15:31:00 <GeDaMo> https://en.wikipedia.org/wiki/Sony_NEWS#Hardware
15:31:00 <GeDaMo> "The Sony NEWS originally came equipped with a dual 680x0 (68020 or 68030) processor configuration running at 16-25 MHz."
15:31:00 <nikolapdp> ah only two :P
15:32:00 <Ermine> I accidentaly my ssd with fedora and windows
15:32:00 <nikolapdp> you accidently your ssd
15:32:00 <nikolapdp> oh no
15:33:00 * zid guesses the verb was 'ate'
15:33:00 <heat> don't you hate it when you ssd
15:33:00 <Ermine> dd'd an iso to /dev/sdc, which happened to be that ssd instead of usb flash
15:33:00 <heat> oh lord
15:34:00 <nikolapdp> now you have a bootable ssd
15:34:00 <nikolapdp> congrats
15:34:00 <zid> hope nothing good was in the first few gb
15:34:00 <heat> it might be salvageable
15:34:00 <nikolapdp> doesn't ext4 store all metadata at the start
15:34:00 <heat> i don't know if data recovery tools can get you there
15:35:00 <heat> ext4 has superblock and block group backups across the disk
15:35:00 <heat> and the gpt has a backup at the end of the disk
15:35:00 <Ermine> ntfs should be safe
15:36:00 <nikolapdp> ah didn't know about the superblock copies
15:36:00 <nikolapdp> what about the inode tables or whatever they are called
15:36:00 <Ermine> But idk if there are tools that can recover it under linux
15:36:00 <heat> EXT4 ROBUST SO ROBUST YES SIR LETS GO
15:36:00 <heat> ZFWHO
15:36:00 <heat> no dice for the inode tables
15:37:00 <nikolapdp> zfs has all metadata in multiple copies btw
15:37:00 <nikolapdp> by default, you can disable or change the number of copies of course
15:37:00 <Ermine> I'd say F to ext4 partition, but it would save me a lot of time if I manage to recover ntfs
15:37:00 <Ermine> and restore windows boot manager
15:37:00 <heat> if ntfs is further along the disk then ggez
15:38:00 <Ermine> it's somewhere in the second half, while first 1.5G are overwritten
15:38:00 <zid> if you wrote over the raw drive, you probably just lost the original gpt header and the start of the first partition
15:38:00 <heat> oh you're set then
15:38:00 <zid> if that one wasn't the ntfs
15:38:00 <nikolar> you should be able to just read the backup gpt
15:38:00 <nikolapdp> you'r efine
15:38:00 <zid> it's probably completely untouched
15:38:00 <zid> and you can use the backup gpt yea
15:39:00 <mjg> https://www.youtube.com/watch?v=vMaSR2B06xM
15:39:00 <bslsk05> ​'Sun Ray Thin Clients Pt.3: Using Windows' by clabretro (00:31:15)
15:39:00 <mjg> watch out with the channel
15:39:00 <Ermine> noice
15:39:00 <nikolapdp> that's a fun channel
15:39:00 <nikolapdp> discoverd it myself like a couple of days ago
15:41:00 <mjg> ye
15:41:00 <mjg> it suddenly started getting promoted
15:42:00 <mjg> that basement is a legit reason to own a ahouse
15:42:00 <mjg> :d
15:42:00 <nikolapdp> kek
15:42:00 <nikolapdp> just stuff your servers there and problem solved
15:43:00 <Ermine> Good that I didn't remove that arch linux from hdd
15:43:00 <nikolapdp> are you switching to fedora or something
15:44:00 <Ermine> i used fedora on my ssd, but I didn't remove old arch linux which i was using before bying an ssd
15:44:00 <heat> ARCH LINUX
15:45:00 <heat> which you use(d), btw
15:45:00 <nikolapdp> you mean which you use
15:45:00 <heat> no.
15:45:00 <heat> i use, btw
15:45:00 <heat> ermine used, btw
15:45:00 <zid> what
15:45:00 <heat> and is now using, btw
15:45:00 <nikolapdp> zid it's an arch thing, you wouldn't get it
15:45:00 <mjg> what do you say when you don't use
15:45:00 <zid> k
15:46:00 <heat> i use debian 🤓
15:46:00 <heat> although if you're a nixos user you already told everyone you use nixos
15:46:00 <nikolapdp> or you're about to now that you've mentioned it
15:46:00 <mjg> i know one nixos user and indeed i know it's nixos because i was told
15:46:00 <mjg> i don't know about the otehrs tho
15:47:00 <mjg> is that like being a vegan
15:47:00 <heat> yes
15:47:00 <heat> you know, having a backup root inode sounds like a solid idea
15:48:00 <nikolapdp> does ext4 have a backup root inode
15:48:00 <heat> no
15:48:00 <heat> let me write that down mon
15:49:00 <mjg> iscalling someone 'mon' friendly
15:49:00 <heat> mon is whatever you want it to be
15:49:00 <heat> it's that good
15:49:00 <mjg> noice mon
15:49:00 <heat> it's like buddy
15:49:00 <Ermine> there should be difference between 'mon' and 'mofo'
15:50:00 <mjg> my headcannon is mon is more formal
15:51:00 <mjg> you know, instead of saying "good day sir" you can "sup mon"
15:51:00 <mjg> great on funerals 'n shit
15:51:00 <Ermine> and is "sup mon" more formal?
15:52:00 <nikolapdp> lol
15:52:00 <mjg> per my explanation above it's an equivalent of "good day sir"
15:52:00 <heat> where does mofer fit in
15:52:00 <mjg> mofer is just a differnet way of saying mofo
15:52:00 <mjg> perhaps a dimunitive form?
15:53:00 <nikolapdp> doesn't sound diminutive
15:53:00 <mjg> well now that i wrote ite
15:53:00 <mjg> Ermine is a mofo and heat is mofer
15:53:00 <mjg> there is something here innit
15:53:00 <heat> yessir
15:54:00 <Ermine> mon
15:54:00 <mjg> mon? yes, that's me
15:54:00 <nikolapdp> yesmon
15:54:00 <mjg> dawg
16:03:00 <heat> mjg, mofer great lockref writeup
16:03:00 <heat> here's an idea:
16:04:00 <heat> what if instead of blindly spinning for the lock, at some random point in the retry loop (half? 3/4?) you either try to grab the lock too, or queue yourself into the qspinlock
16:06:00 <mjg> that does not work
16:06:00 <mjg> per my explanation doing even one spin already reduces perf at high enough core count
16:06:00 <mjg> and more importantly when lockref code decides to start taking locks
16:07:00 <mjg> you may land in a spot where unrelated acquires are gone
16:07:00 <mjg> and it's only lockref get/put which see the lock is taken and keep taking it after some spins
16:07:00 <mjg> which defeats the point of the patch
16:07:00 <mjg> the good news is that lockref as a facility looks trivially avoidable to begin with
16:07:00 <heat> yeah but wouldn't this smooth out the sharp decline if retry is high enough but not enough to grab the ref?
16:08:00 <mjg> read the email again mofo, shit goes haywire real fast
16:08:00 <mjg> text search for '700' to get one example
16:08:00 <mjg> the thing to do is to not land in the problematic scenario to begin with, which *can* be done
16:09:00 <mjg> what happens is the dentry lock is taken for tons of ref-unrelated stuff
16:09:00 <mjg> and with lockref is synchronized with ref by design
16:09:00 <mjg> this can be decoupled with minor hackery, the entire problem scenario is avoided and perf goes up as one can lock xadd to unlock
16:09:00 <mjg> instead of cmpxchg in a loop
16:10:00 <mjg> that and of course full-scale rcu lookup in the fast path, including for terminal entry
16:10:00 <heat> i know it goes haywire mon
16:10:00 <heat> i read it
16:10:00 <mjg> which avoids ref changes tobegin with (not applicable for open though)
16:11:00 <mjg> the point i'm making there is that whatever fuckspin policy you implement, you are the mercy of threads taking the spinlock
16:11:00 <heat> i'm just askin if switching halfway to "take ref or get the lock, whatever" is an approach you can switch to
16:11:00 <heat> like halfway there
16:11:00 <mjg> if your policy gave up at any point, the entire time was *lost*
16:11:00 <mjg> as in perf went down
16:11:00 <mjg> if you spin long enough(tm) to see a free lock you get a win
16:12:00 <mjg> except there is a corner case where the lock can be continouosly taken
16:12:00 <mjg> anything past the initial lock access is a perf loss if the lock is always taken
16:13:00 <mjg> or if it is taken long enough for your policy to give up
16:13:00 <mjg> so even if you massage it enough to win in some ubench, there will be another ubench where it's not enough
16:13:00 <mjg> and the entire thing just fundamentally suffers the problem of having to deal with an always acquired lock
16:14:00 <mjg> which as i explained can be turned into a non-issue by decoupling the refcount from the lock
16:14:00 <mjg> reasonably easily doable thanks to rcu, the transition to 0 part is even already done
16:15:00 <mjg> i am going to hack it up after i'm done with some dayjob
16:17:00 <mjg> the only difficulty here may be a social one as the linux folk seem to like lockref
16:17:00 <mjg> it was created specifically for dentries
16:19:00 <mjg> btw, speaking of real workloads i supposedly never looked at, there is a funny minor perf problem when doing -j 104 package building
16:19:00 <mjg> i spotted the sucker on freebsd but linux has an equivalent problem
16:19:00 <mjg> all that stuff loves to '> /dev/null'
16:20:00 <nikolar> is /dev/null the bottlneck??
16:20:00 <mjg> opening it is
16:20:00 <nikolapdp> huh
16:20:00 <mjg> and not a bottleneck, merely something which does show up on a profile
16:20:00 <mjg> there are bigger things there
16:20:00 <mjg> but you get small periods where you have 70-80 threads all deciding to > /dev/null
16:20:00 <mjg> at the same time
16:21:00 <mjg> opening the same file for writing at the same time from multiple threads was never considered a real thing from perf standpoint
16:21:00 <heat> /dev/null is funny
16:21:00 <nikolapdp> well how often does it happen
16:21:00 <nikolapdp> unless it's /dev/null
16:21:00 <mjg> and in the entirety of the build process this is the sole problem
16:22:00 <mjg> s/problem/case of the above/
16:22:00 <mjg> i think some one lul build system had a shared log or something, but that was much smaller scale
16:22:00 <mjg> point tho, who would have guessed opening /dev/null would be a problem
16:22:00 <nikolapdp> i wouldn't
16:23:00 <mjg> it is further lulled on linux since they have a GLOBAL FUCKING LOCK guarding all device opens
16:23:00 <mjg> spin_lock(&cdev_lock);
16:23:00 <mjg> :d
16:24:00 <mjg> again not something you normally see
16:24:00 <mjg> it takes rather adversarial behavior from userspace to show up
16:24:00 <mjg> and building 30k+ packages, most of which have "lul why would this be a problem, only happens once" slowdowns
16:25:00 <mjg> note once /dev/null's pop up they tend to be appended to every compiler/whatever teh fuck invocation
16:25:00 <heat> are you playing around with your 2 sockets system again
16:25:00 <mjg> so you get a constant stream of these fucks
16:25:00 <mjg> i have systems ranging from 40 to 104 threads which are freebsd only
16:25:00 <mjg> i'm not a dick so i don't linux on them
16:26:00 <heat> use the bhyve
16:26:00 <mjg> i do linux at a system at dayjob, but that one is limited
16:26:00 <heat> say you're testing it :P
16:26:00 <mjg> i said i'm not a dig
16:26:00 <mjg> dick even
16:26:00 <mjg> these are good guys hosting the stuff, i'm not going to add power consumption to do linux
16:26:00 <mjg> for big linux i'm pestering an ec2 affiliate
16:27:00 <mjg> i get for example that 192-way amd sucker
16:27:00 <mjg> or whatever else they offer
16:28:00 <mjg> this is why i love linux:
16:28:00 <mjg> chrdev_open
16:28:00 <mjg> cd_forget
16:28:00 <mjg> cdev_purge
16:28:00 <mjg> at least they consistently suffix on this one
16:30:00 <heat> mjg, https://portal.cfarm.net/
16:30:00 <bslsk05> ​portal.cfarm.net: The cfarm compile farm project
16:30:00 <heat> ask for access
16:30:00 <mjg> what for
16:30:00 <heat> your linux work
16:30:00 <heat> they have a bunch of big ass machines
16:30:00 <mjg> dude
16:30:00 <mjg> i'm confident this is not suitable for benchmarking
16:30:00 <mjg> i get bare metal instances on ec2
16:31:00 <mjg> specifically so that they are not fucked with by other people
16:31:00 <heat> better than nothing
16:31:00 <heat> you could try out your code in a 24 core 192 thread ppc machine
16:31:00 <mjg> i already have better than nothing and more importantly have repeatble results
16:31:00 <nikolapdp> what is that exactly
16:31:00 <nikolapdp> can you just request access and that's it?
16:31:00 <mjg> not "welp someone else was buildin'"
16:32:00 <zid> If you are working on a piece of free software (GCC or any other GPL, BSD, MIT, ...) and need ssh access to the farm for compilation, debug and test on various architectures you may apply for a cfarm compile farm account.
16:32:00 <heat> nikolapdp, if you're going to use it for FOSS and you already have a track record yeah
16:32:00 <zid> I can't use it
16:32:00 <nikolapdp> huh net
16:32:00 <nikolapdp> neat
16:33:00 <nikolapdp> and you can use them as build machines or something?
16:33:00 <heat> "compilation, debug and test on various architectures"
16:34:00 <nikolapdp> it just sounds bit too good to be true
16:34:00 <mjg> heh The R740 is a donation from de.NBI Cloud Bielefeld, while the T8-1 is a permanent loan from Oracle Corporation.
16:34:00 <mjg> nikolapdp: i don't see why
16:34:00 <zid> you have to apply, and they can ban you after
16:34:00 <heat> OH THEY HAVE A SOLARIS HOST WOOOOOOOOO
16:35:00 <zid> idk why that's too good to be true
16:35:00 <zid> godbolt also free and they don't even have a vetted signup
16:35:00 <nikolapdp> yeah how does godbolt pay their servers
16:35:00 <zid> it's ran off something else
16:36:00 <zid> I forget what
16:36:00 <zid> they also have patreon
16:36:00 <heat> they also have aix hosts
16:36:00 <mjg> lol
16:36:00 <mjg> ye just found it
16:36:00 <mjg> ngl i would request an account just to mess with it
16:36:00 <zid> btw the godbolt guy worked on croc for psx, great game
16:36:00 <zid> I didn't even know it had a PC port until I looked him up and he was the guy that did it
16:37:00 <heat> 128 core solaris machine
16:37:00 <zid> He's now a hedge fund manager :P
16:37:00 <Ermine> gdisk doesn't find backup gpt
16:37:00 <zid> it's just the last sector isn't it
16:37:00 <zid> or two
16:37:00 <nikolapdp> heat not just solaris, sparc
16:37:00 <mjg> https://portal.cfarm.net/munin/gccfarm/cfarm216/index.html
16:37:00 <bslsk05> ​portal.cfarm.net: 404 Not Found
16:37:00 <mjg> does not open
16:37:00 <mjg> :d
16:37:00 <Ermine> should be
16:38:00 <mjg> i don't know fam it may not be operational
16:38:00 <Ermine> fdisk claims it isn't in the end
16:38:00 <heat> mjg, i think they're just lacking the monitoring software
16:39:00 <heat> also doesn't work for AIX and a bunch of other hosts
16:39:00 <zid> I'd just look with hexdump :P
16:39:00 <heat> works for openbdsm though
16:39:00 <zid> what's the recovery tool everyone uses
16:40:00 <zid> I always forget the damn name
16:40:00 <mjg> ngl i am tempted to get an account just to bench that solaris on 128
16:40:00 <mjg> :d
16:40:00 <nikolapdp> lol please do
16:40:00 <mjg> however, i recall sun used to have a license which prohitibted publishing bench resutls by 3rd parties
16:41:00 <zid> testdfisk
16:41:00 <zid> testdisk*
16:41:00 <mjg> it is plausible they would get in trouble for facilitating this
16:42:00 <nikolapdp> D
16:42:00 <nikolapdp> lol the "our stuff is so crap you can't tell anyone# license
16:42:00 <nikolapdp> classic
16:42:00 <mjg> that's not strictly true
16:42:00 <nikolapdp> i am joking mostly
16:42:00 <mjg> most benchmarks are phoronix quality
16:42:00 <mjg> so i would not want random ass twat on the intwerbz "benchmarking" my stuff
16:43:00 <mjg> phoronix outdid themselves on the recent post about bsds vs linux btw
16:43:00 <nikolapdp> what did they do
16:44:00 <mjg> stress-ng which has ifdefs in test cases
16:44:00 <mjg> which whack parts of the bench
16:44:00 <mjg> then bsd having less to do beats linux
16:44:00 <mjg> also stress-ng even states they are not a benchmark
16:44:00 <mjg> so...
16:49:00 <heat> stress-ng is kind of a benchmark
16:49:00 <heat> given an equal system
16:53:00 <heat> mjg, hmm do you have flamies of stress-ng tests?
16:53:00 <heat> it might be a lot more interesting than will-it-scale fuckme2-processes
16:57:00 <mjg> they do stupid shit
16:58:00 <mjg> it's an intentional "lol fuck with the system" test
16:58:00 <mjg> not a representation of a workload
16:58:00 <mjg> it's probably ok for stressing, not for benchmarking
17:09:00 <Ermine> Actually, I had to create new gpt in gdisk, so now it detects backup gpt correctly
17:09:00 <Ermine> testdisk is also a nice one, thank you zid!
17:10:00 <nikolapdp> so it's fine now?
17:10:00 <nikolapdp> are you going to try to recover the ext4
17:10:00 <heat> i think ermie just wants the ntfs one
17:11:00 <Ermine> if ext4 has some backup structures I can try running fsck on it
17:11:00 <heat> i don't think fsck will work too well, the root directory is roasted
17:12:00 <heat> most of the other dirs will be fine however, due to the way root directory directory allocation works
17:12:00 <heat> /home and stuff
17:13:00 <Ermine> if /home is okay I'd consider myself super lucky today
17:13:00 <heat> home is most definitely okay, probably
17:14:00 <nikolapdp> most definitely, probably
17:14:00 <heat> i can't know for sure. but the way root dir dir allocation works, it tries to spread out the / subdirs around the disk
17:15:00 <heat> it is somewhat likely that /home is far away from the 1-2GB of bad data
17:15:00 <Ermine> bellisimo
17:16:00 <heat> my strategy would be to debugfs that shit (might work?), see if i could find some random /home or /home/ermine dir entry, then fetch the inode
17:16:00 <heat> boom, you found the home dir.
17:26:00 <Ermine> well, 'filesystem not open'
18:42:00 <Ermine> Geez, I found home dir!
18:42:00 <heat> nice, what did you use?
18:42:00 <Ermine> debugfs
18:42:00 <heat> haha great
18:43:00 <Ermine> I guess I can now use rdump and get my stuff safe
18:43:00 <heat> yep
18:43:00 <heat> i hope you appreciate how cool debugfs is
18:43:00 <heat> absolutely essential for fs debugging
18:44:00 <Ermine> It's amazing
18:44:00 <Ermine> I owe you a drink
18:46:00 <heat> :)
18:47:00 <zid> I mean, testdisk would have done this instantly
18:53:00 * geist yawns
18:53:00 <geist> good morning folks
18:54:00 <heat> hi geist
18:54:00 <nikolapdp> hey geist
18:54:00 <Ermine> hello geist
18:54:00 <nikolapdp> saw you ran the thing on an actual pdp
18:54:00 <geist> howdy
18:55:00 <geist> yeah, seems to have disconnected over the evening i guess
18:55:00 <geist> i left it running to see if it wouol still
18:55:00 <nikolapdp> for me it doesn't disconnect
18:55:00 <nikolapdp> until there's an actual issue iwth the network
18:55:00 <nikolapdp> it doesn't reconnect automatically though
18:56:00 <klys_> hello~
18:56:00 <geist> yah does it handle ping/pongs from the server?
18:56:00 <geist> maybe it eventually timed out
18:56:00 <nikolapdp> it should
18:56:00 <nikolapdp> i am running this instance for days
18:57:00 <heat> maybe sic thinks irc pings are BLOATED
18:57:00 <nikolapdp> weeks
18:57:00 <geist> also i had to fix a bug to get it to compile, i put up a pull request
18:57:00 <nikolapdp> ah ok
18:57:00 <nikolapdp> i don't check github that often heh
18:57:00 <nikolapdp> i prefer email
18:57:00 <geist> had a leftover static variable that cc didn't understand
18:57:00 <heat> oldest genz ever
18:57:00 <geist> and anyway it was unused
18:57:00 <nikolapdp> huh interesting
18:57:00 <heat> ok here's a great thing i just found out about: vim can open and parse tarballs
18:58:00 <nikolapdp> considering i run older cc
18:58:00 <nikolapdp> heat yeah it can open compressed tarballs too
18:58:00 <nikolapdp> and can remotely edit files with scp
18:58:00 <heat> yep
18:58:00 <heat> (and neovim can't)
18:58:00 <nikolapdp> vim wins yet again :P
18:58:00 <nikolapdp> geist you say it's unused?
19:00:00 <geist> https://github.com/Minnerlas/sic/pull/1
19:00:00 <bslsk05> ​github.com: Fix build on 2.11 by travisg · Pull Request #1 · Minnerlas/sic · GitHub
19:00:00 <nikolapdp> yup i've checked
19:00:00 <zid> gcc 1.27 when nikolar
19:00:00 <geist> must have just been something you accidentally left in, since apparently static variables are not supported by cc
19:00:00 <nikolapdp> does gcc 1.27 run on the pdp
19:00:00 <geist> unless you were using a different toolchain
19:00:00 <nikolapdp> huh
19:01:00 <nikolapdp> no definitely cc
19:01:00 <zid> no idea, it's the first version with x86 support apparently though, some guy is asking #gcc for help building it
19:01:00 <nikolapdp> let me check the code i am running
19:01:00 <zid> and we're all like "this is from before I was born"
19:01:00 <nikolapdp> yeah i've seen some of the discussion heh
19:01:00 <zid> me and gcc 1.27 are the same age
19:01:00 <nikolar> kek
19:02:00 <geist> oh i found the word to describe being nostalgic for stuff you never experiened: anemoia
19:02:00 <nikolar> interesting
19:02:00 <nikolar> btw the pdp just locked up when i was about to open the file
19:02:00 <nikolar> so that's nice
19:02:00 <nikolar> i really should run a newer patch
19:03:00 <geist> also FWIW seems that even if you edit config.h and set the default host, i still have to pass -h to set the host
19:03:00 <geist> will debug
19:03:00 <zid> and the word for being nostalgic for iron is anemia
19:04:00 <geist> always kinda fun to debug something on an actual 9600 baud terminal, etc
19:04:00 <geist> nikolar: oh did you ever get swap working? I noticed that practically sitting still 2.11 dives fairly deep into swap
19:04:00 <geist> though i only have 2.5MB, it still uses it fairly aggressively
19:04:00 <nikolapdp> yeah i am not 100% sure
19:05:00 <geist> https://usercontent.irccloud-cdn.com/file/PuJZUEFm/image.png
19:06:00 <nikolapdp> oh top
19:06:00 <nikolapdp> fancy
19:06:00 <geist> patch 481!
19:06:00 <heat> i really need top
19:06:00 <heat> it's an integral part of a unix system
19:06:00 <geist> yeah it was basically the first thing i wrote for newos
19:07:00 <nikolapdp> i checked
19:07:00 <nikolapdp> i have static
19:07:00 <nikolapdp> in the code
19:07:00 <Ermine> heat: debugfs may be the case when specifying man section is useful, since there's another debugfs
19:07:00 <heat> my problem is that writing a procfs is kind of tricky but probably the best course of action
19:15:00 <geist> nikolapdp: huh weird. yeah mine throws up with not understood. but i have a slightly later version of the compiler (because of patches)
19:15:00 <geist> so maybe they made it a little stricter
19:16:00 <nikolapdp> yeah possibly
19:16:00 <nikolapdp> merged :)
19:21:00 <nortti> honestly a bit surprised to hear the compiler's getting worked on. I guess the changes are much smaller than that, but I'd've expected the first improvement to be support for ANSI function declarations
19:21:00 <geist> well i remember when i was applying some of the patches there were a few compiler fixes here and there
19:23:00 <nikolapdp> i have no clue how to check for swap though
19:23:00 <nikolapdp> ps is supposed to put the process command into parens if it's swapped
19:23:00 <nikolapdp> but i just get empty parens so seems like corruption of some kind
19:28:00 <geist> time to start applying patches!
19:28:00 <nikolapdp> heh
19:29:00 <nikolapdp> i have no clue if i have set up the swap correctly at all
19:30:00 <heat> use a lot of memory and see what happens
19:30:00 <zid> grab a top binary?
19:30:00 <nikolapdp> i doubt it would work
19:30:00 <heat> for i in `seq 1 50`; do sleep 10 &; done
19:30:00 <nikolapdp> but maybe
19:30:00 <geist> i can send it to you if you want
19:31:00 <GeDaMo> Is there some equivalent of 'free'?
19:31:00 <geist> here lemme get it somewhere
19:31:00 <zid> steal geist's, figure out why it doesn't work, sounds like a fun project tbh
19:31:00 <nikolapdp> heh
19:31:00 <nikolapdp> the closest to free i know of is vmstat
19:31:00 <zid> brbcat
19:31:00 <nikolapdp> but it's not particularly useful
19:32:00 <nikolapdp> geist do you have an ftp server :)
19:32:00 <geist> i usually just ftp into and out of it, on my local network
19:32:00 <nikolapdp> heh that would work too
19:32:00 <nikolapdp> would be funnier if i could ftp directly from you though :P
19:33:00 <zid> hot pdp on pdp action in your area
19:33:00 <nikolapdp> kek
19:33:00 <geist> heh, uucb or gtfo
19:34:00 <geist> uucp even
19:34:00 <nikolapdp> yeah no clue how to set that one up lol
19:34:00 <nikolapdp> heard it was a nightmare
19:37:00 <geist> https://newos.org/stuff/bsd11-top
19:37:00 <geist> 296973442d200dced595cd3029ad5097 top
19:37:00 <bslsk05> ​newos.org <no title>
19:38:00 <nikolapdp> thanks
19:38:00 <geist> though as you say it probably wont work. i suspect that gets compiled with known offsets of the kernel
19:38:00 <nikolapdp> yeah i assume same
19:39:00 <heat> symbol-wise i know they actually look it up
19:39:00 <geist> https://github.com/AaronJackson/2.11BSD/tree/main/ucb/top
19:39:00 <bslsk05> ​github.com: 2.11BSD/ucb/top at main · AaronJackson/2.11BSD · GitHub
19:40:00 <geist> i suppose you could just try to build that directly, may be it doesn't rely on anything in the previous patch sets
19:40:00 <geist> it was just part of one of the patches
19:41:00 <nikolapdp> heh Segmentation fault (core dumped)
19:41:00 <geist> ah first few lines of top.c talk a bit about it
19:41:00 <geist> /var/run/psdatabase is the trick
19:42:00 <nikolapdp> yeah still
19:42:00 <nikolapdp> probably requires a rebuild at least
19:42:00 <zid> debug it
19:42:00 <zid> use your pdp properly
19:43:00 <nikolapdp> i barely found information about adb last time
19:43:00 <geist> well if you dont have /var/run/psdatabase it probably isn't going to work
19:43:00 <geist> that may be the part of the patch sets you need
19:43:00 <nikolapdp> it's in etc for me :P
19:45:00 <nikolapdp> top.c: 38: Can't find include file unistd.h
19:49:00 <nikolapdp> yeah no worky
19:54:00 <geist> FWIW you're using something much closer to the 'real' 2BSD i guess, because it doesn't have 'modern' patches on top of it
19:55:00 <geist> https://www.retro11.de/data/211bsd/patches/ and https://www.tuhs.org/Archive/Distributions/UCB/2.11BSD/Patches/ for those following along
19:55:00 <bslsk05> ​www.retro11.de: Index of /data/211bsd/patches
19:55:00 <bslsk05> ​www.tuhs.org: Index of /Archive/Distributions/UCB/2.11BSD/Patches
19:55:00 <geist> each of them has a little text describing how to apply them to /usr/src and whatnot and rebuild, kinda fun to just walk through them manually
19:55:00 <geist> but it'd of course take forever
19:56:00 <geist> https://www.tuhs.org/Archive/Distributions/UCB/2.11BSD/Patches/465 seems to be the one with top in it
19:56:00 <bslsk05> ​www.tuhs.org <no title>
19:57:00 <geist> oh actually that patch seems to do something about static variables in the compiler too
19:57:00 <nikolapdp> well just the manual steps will take a while
19:57:00 <nikolapdp> ignoring the compilation
19:57:00 <nikolapdp> and there are hundreds of them
19:57:00 <nikolapdp> heh
19:57:00 <nikolapdp> on an unrelated note, has anyone here used distcc
19:58:00 <geist> a long time ago
19:58:00 <nikolapdp> my understanding is that i can use whatever host i want, as long as the target triplet is the same
19:58:00 <geist> was pretty neat, but you had to be careful to have the exact ssame vrsion of stuff
19:58:00 <nikolapdp> yeah that's not an issue
19:58:00 <geist> triplet and really the compiler version too, but i think it doesn't depend on anything but the compiler (ie, no local headers)
19:58:00 <nikolapdp> just the host arch is what i am interested
19:59:00 <nikolapdp> from what i understood, the machine that's initiaing the compilation is expanding all the preprosessor stuff locally and sending pure c to other machiens
19:59:00 <nikolapdp> so headers shouldn't be a factor no?
19:59:00 <geistpdp> C
20:00:00 <geistpdp> hmm, thinks it's already here
20:00:00 <heat> you've just sent a little bit of garbage
20:00:00 <nikolapdp> oi
20:00:00 <geistpdp> oh i guess i hadn't really disconnected
20:00:00 <nikolapdp> no there's two of them
20:00:00 <nikolapdp> s/no/now
20:00:00 <nikolapdp> what happened then
20:00:00 <geistpdp> actually the most annoying problem is it doesn't screen wrap on this terminal
20:00:00 <geistpdp> so it cuts off the right size of the text
20:01:00 <nikolapdp> oh that sucks
20:01:00 <nikolapdp> i didn't encouter that
20:01:00 <nikolapdp> that would need patching i guess
20:01:00 <heat> uh i think the terminal you had can enable line wrapping
20:01:00 <geistpdp> dunno why, it ust actually turn wrap off somehow, i didn't know terminals could be put in no wrap mode
20:01:00 <heat> yeah they can, even xterm can
20:01:00 <nikolapdp> another reason i am not encountering that is that i am piping it into tail
20:01:00 <nikolapdp> erm tee
20:02:00 <nikolapdp> so maybe that helps?
20:02:00 <heat> the actual terminal is the problem
20:02:00 <heat> not 2.11
20:02:00 <nikolapdp> well i am saying what i am doing
20:02:00 <geist> yah i had it in 132 column mode last night, but it turned off the term and now it's back in 80
20:02:00 <geist> but yeah probably need to tweak the sic code to not somehow get it in nowrap mode
20:03:00 <geist> i'm guessing it does some termios stuff to disable all cooking or something
20:03:00 <nikolapdp> you could just try piping it through cat
20:03:00 <nikolapdp> i ak curious if that would work
20:03:00 <heat> sic doesn't do anything
20:03:00 <geist> well, i assumed that wrap mode was on by default, and it somehow turned it off
20:04:00 <heat> i think the DEC reset sequence puts it in 80 column nowrap
20:04:00 <nikolapdp> possibly
20:04:00 <geist> i guess eash enough to figure out just cat something with a long ass line and see what it does
20:04:00 <geist> you're probalby right
20:05:00 <heat> the reason why i know these things are even a thing is that vttest actually tests for these old ass obscure features
20:05:00 <heat> you know there's a DEC private sequence that fills your screen with E's?
20:05:00 <geist> i also need to figure out how to mabually switch the term into 132. i dont like to leave it on all the time, but when power cycle it loses the state, etc
20:05:00 <nikolapdp> why with Es
20:05:00 <heat> it was a test sequence
20:06:00 <nikolapdp> testing what exactly
20:06:00 <heat> the terminal?
20:06:00 <nikolapdp> you couldn't just dump text, you needed special sequence?
20:06:00 <geist> hex 45, decimal 69
20:06:00 <geist> hehe ehehehe e 69
20:06:00 <zid> cat program_terminal.txt
20:06:00 <heat> whoever designed it is probably dead anyway
20:06:00 <heat> so we'll never know
20:06:00 <nikolapdp> maybe not
20:06:00 <zid> fill it with sexy ansi escapes for any software settings you want
20:06:00 <nikolapdp> hehe funny number
20:07:00 <geist> i do remember figuring out one way on a whiteboard at work that there are particular bytes that help a uart resynchronize at n81
20:07:00 <geist> if you have characters back to back and it gets out of whack it may take a while to re-discover the start bit
20:07:00 <geist> but there are particular characters that cannot be interpreted any other way
20:07:00 <geist> and i fyou spam a few of those it'll make sure the receiver resyncs
20:09:00 <geist> though really 0xff ought to do it
20:09:00 <zid> I wonder if I can just send ansi vt stuff over irc to nic's basic bitch irc client and get it to do silly things
20:09:00 <geist> since that'll just drop the line for 9 bit times i think
20:09:00 <nikolar> You could
20:09:00 <geist> oh no 0xff doesn't work if the chars are back to back
20:09:00 <nikolar> Especially because the emulator isn't interpreting most of the sequences
20:09:00 <geist> yo need something like 0xfe so that it at least rises at the end
20:10:00 <nikolar> Interesting
20:10:00 <zid> oh right you're not emulating a real terminal
20:10:00 <zid> just have a virtual one
20:10:00 <nikolar> Basically it's passing through most sequences to my terminal emulator from what I can tell
20:10:00 <nikolar> Which is tmux
20:15:00 <heat> of course
20:15:00 <heat> those old unices do not have a virtual terminal or anything of sorts
20:19:00 <nikolar> Yeah but the emulator might
20:24:00 <geist> heat: well, they do have ptys of some sort, which has to emulate some amount of it
20:24:00 <geist> at least 2.11BSD. i dunno when ptys came into existance in unix timeline
20:24:00 <geist> may have been a BSD thing
20:25:00 <geist> though i guess the pty is mosty just doing buffering and ctrl-c and whatnot
20:25:00 <heat> ptys do not interpret sequences
20:25:00 <nikolar> And backspace
20:26:00 <geist> more like smackblace amirite?
20:26:00 <heat> a tty is just a magic pipe, a pty is a magic pipe to some other fd you control
20:26:00 <heat> *until you have to deal with tabs and backspace oh god oh god what the fuck is this
20:26:00 <Ermine> btw maybe I should install arch instead of fedora given the opportunity
20:27:00 <geist> it's a magic pipe full of some good shit
20:27:00 <geist> blaze up!
20:27:00 <heat> no geist, ttys are definitely not full of good shit
20:27:00 <nikolar> Yeah backspace is the annoying one
20:27:00 <heat> no one knows how to delete a tab properly
20:27:00 <geist> though i haven't done it in a while i guess if you're utf8 compliant you havve to backspace over multi byte words?
20:28:00 <heat> utf-8 is not the problem
20:28:00 <geist> sure, but wouldn't you need to do that anyway?
20:28:00 <heat> do what?
20:28:00 <geist> like how is it defined to deal with utf-8 in the reverse direction?
20:28:00 <heat> it deletes whole codepoints
20:29:00 <geist> well, if you are 8 bytes in, and the last char was a two byte sequence, and you backspace, seems like you'd remove back a whole 2 bytes
20:29:00 <heat> yes
20:29:00 <geist> point being that most code doesn't need to deal with utf-8 explicit, but that's a case where actually you do need to know about it
20:30:00 <Ermine> I guess you need a function which could tell you how many bytes you need to remove under given encoding
20:32:00 <geist> https://www.quantamagazine.org/amateur-mathematicians-find-fifth-busy-beaver-turing-machine-20240702/ looks like a cute article, still reading it
20:32:00 <bslsk05> ​www.quantamagazine.org: Quanta Magazine
20:32:00 <heat> assuming a tty erases bytes by doing "\b \b"
20:32:00 <heat> how many "\b \b" do you need to echo when erasing a tab
20:34:00 <geist> oh i was mostly thinking about a pty, as it's caching up a line
20:34:00 <geist> and it's just a sequence of bytes at that point, hasn't been rendered yet
20:37:00 <heat> basically what i'm trying to get at is that the tty layer is an awful translation layer thingy that does not have all the information it would need to do its job
20:38:00 <mjg> geist: ey geister, have you seen this channel https://www.youtube.com/watch?v=vMaSR2B06xM
20:38:00 <bslsk05> ​'Sun Ray Thin Clients Pt.3: Using Windows' by clabretro (00:31:15)
20:38:00 <mjg> geist: no joke recommendation
20:38:00 <mjg> i'm bingin'
20:38:00 <geist> yep. i watch his stuff sometimes
20:38:00 <heat> and it also can't do stuff like VT escape esquences because it has no idea if the thing connected to the other end is a vt
20:38:00 <mjg> i only recently found out about the guy
20:38:00 <geist> i've seen probably 20 or so of his vids. pretty good, though he bumbles around a lot
20:38:00 <mjg> i never seen him linked here either
20:38:00 <geist> like, i'm yelling at the screen no yo ujust need to do that
20:39:00 <geist> but he plays with a lot of cisco gear which is interesting if nothing else
20:39:00 <mjg> i die a little everytime someone boots a linux on a sun box
20:39:00 <mjg> have some decency
20:40:00 <geist> i do remember drinking that thin client koolaid back in the 90s. we had a bunch of X terms at school and they were generally more powerful than the corresponding win95 boxes, because ifnothing else there was a beefy server box behind it
20:40:00 <nikolar> Did you get that access
20:40:00 <geist> i think those days are clearly gone, since you need a supercomputer to run a web browser nowadyas, and need the horsepower local
20:40:00 <geist> but the notion of a thin little fanless box that could run on the beefy box was pretty neat
20:40:00 <mjg> even then the portable devices are too good now
20:41:00 <mjg> if they insisneted they could make a phone-sized thin client box
20:41:00 <mjg> you come over somewhere and bam
20:41:00 <mjg> with all compute locally
20:41:00 <mjg> kind of like a lighter laptop
20:41:00 <mjg> except i don't know who would want that and forego a laptop
20:42:00 <heat> dave miller gets off on people booting linux on sun boxes
20:42:00 <nikolar> Yeah touchscreens are probably the worst input devices ever
20:43:00 <mjg> don't touch screen
20:43:00 <mjg> i am saying you would use the phone-sized thing instead of the card
20:43:00 <mjg> you would get a full blown monitor, keyboard 'n shit
20:43:00 <mjg> like a docking station, except with a phone-like device
20:43:00 <heat> that's already a thing
20:44:00 <heat> https://www.samsung.com/us/apps/dex/
20:44:00 <bslsk05> ​www.samsung.com: Samsung DeX | Apps & Services | Samsung US
20:44:00 <heat> https://en.wikipedia.org/wiki/Samsung_DeX#/media/File:Samsung_DeX_dock_with_S8,_plugged_into_monitor.jpg fucking desktop on your phone
20:45:00 <Ermine> microsoft had the same thing for windows 10 mobile for like 2 years before dex, but it didn't help win10 mobile to take off
20:45:00 <nikolar> win10 mobile was crap regardless of how you use it
20:46:00 <Ermine> It was somewhat cool
20:46:00 <nikolar> Sure
20:46:00 <nikolar> But crap overall
20:46:00 <Ermine> no
20:46:00 <mjg> heat: im gonna claim i thought about it first
20:46:00 <mjg> how is that doing anyway
20:47:00 <heat> you used to be able to run linux on dex apparently
20:47:00 <heat> but then they realized their users kiss women
20:47:00 <mjg> so it's solaris now?
20:48:00 <nikolar> Run Linux on dex?
20:48:00 <nikolar> What do you mean
20:48:00 <heat> "Samsung also announced "Linux on Galaxy" (since renamed to "Linux on DeX") which allows use of a compatible Linux distribution rather than the default Android OS giving full personal computer capabilities"
20:48:00 <mjg> huh
20:49:00 <mjg> this reminded me of people hacking playstation to boot linux
20:49:00 <heat> it wasn't a hack
20:49:00 <Ermine> linux on playstation was official
20:49:00 <mjg> there was totally a hack
20:49:00 <mjg> there was ps3 or 4 when it was not
20:49:00 <heat> ps2 and ps3 were official sony things
20:49:00 <nikolar> On PS2
20:49:00 <nikolar> It was officel
20:50:00 <mjg> it was defo banned
20:50:00 <heat> ps4 was running FREEBSD!!!!!!
20:50:00 <heat> see, freebsd users!
20:50:00 <mjg> i don't remember which one
20:50:00 <mjg> heat: did you know freebsd pushes 1/3rd of the internet traffic
20:50:00 <mjg> trust me, i'm a fanboy
20:50:00 <Ermine> netflix! whatsapp!
20:50:00 <heat> mjg: did you know freebsd pushes 4/5ths of the internet traffic
20:51:00 <nikolar> Is this 1/3rd of the internet traffic in the room with us now
20:51:00 <mjg> Ermine: whatsapp is on linux now
20:51:00 <Ermine> oof
20:51:00 <mjg> Ermine: since fb bayout
20:51:00 <mjg> buyout
20:51:00 <mjg> nikolar: it already left to the next hop
20:51:00 <heat> whatsapp should also be able to enjoy buggy zswap
20:51:00 <nikolar> Lel
20:52:00 <Ermine> that buyout happened a long before I've read about whatsapp in fbsd docs
20:52:00 <mjg> there were freebsd users which did nto undersatnd why netflix client does not work there
20:52:00 <nikolar> drm stuff?
20:52:00 <mjg> i don't know why specifically either, i am just sayin there is no symmetry here
20:52:00 <mjg> one can't be expected
20:53:00 <nikolar> True
20:53:00 <mjg> fuckin Shitnite gamesevers are probably all linux
20:53:00 <mjg> does the game work on anything but windows
20:53:00 <mjg> wait i was supposed to be more positive
20:53:00 <nikolar> Macos maybe?
20:53:00 <Ermine> same goes for mihoyo games
20:53:00 <nikolar> And android even
20:54:00 <mjg> i don't know if phoens count in this context
20:54:00 <mjg> besides phone gaming not real gaming cmv
20:54:00 <nikolar> I agree
20:54:00 <nikolar> But you asked where it ran
20:54:00 <heat> fortnite has a phone version i think
20:54:00 <heat> pubg had one
20:54:00 <mjg> oy let me complain mon
20:55:00 <nikolar> Why had?
20:55:00 <nikolar> Pretty sure they still have
20:55:00 <mjg> genuine question: do any of you overwatch?
20:55:00 <nikolar> No
20:55:00 <mjg> is the game dead now? (even 2)
20:55:00 <nikolar> No clue
20:55:00 <Ermine> pubg has a phone version
20:55:00 <Ermine> fortnite doesn't
20:56:00 <heat> i used to csgo
20:56:00 <nikolar> Is there an iOS version ermine?
20:56:00 <heat> but now i can't run it :(
20:56:00 <Ermine> nikolar: why are you asking me?
20:57:00 <mjg> heat: arch btw?
20:57:00 <heat> arch what
20:57:00 <Ermine> I believe that heat has windows
20:57:00 <heat> i dual boot
20:58:00 <mjg> so what happened
20:58:00 <mjg> actually why tf do you dual boot anyway
20:58:00 <mjg> for osdev?
20:58:00 <heat> games and Important Stuff
20:58:00 <heat> like videocalls
20:59:00 <mjg> i mean why not stick to windows as base
20:59:00 <mjg> and linux in a vm
20:59:00 <heat> lol
20:59:00 <mjg> what
20:59:00 <Ermine> `kek
20:59:00 <mjg> if i was gamin' and shit and needed windows, that's what i would be doing
20:59:00 <mjg> lol @ dual boot
20:59:00 <Ermine> kek @ vm
21:00:00 <Ermine> linux graphics don't work very good in vms
21:01:00 <Ermine> except probably vmware workstation
21:01:00 <heat> yeah vms have a miserable desktop experience generally
21:01:00 <mjg> you sure mofos
21:01:00 <heat> unless you, idk, gpu passthrough
21:01:00 <mjg> have you tried virtualbox guest additions?
21:01:00 <heat> yes
21:01:00 <Ermine> ofc
21:01:00 <mjg> i have not tried that with linux, but with windows it was great
21:01:00 <Ermine> just in case, I maintain those in Alpine
21:01:00 <mjg> went on a fuckin' limb here and assumed it woudl carry over
21:01:00 <mjg> bummer
21:02:00 <heat> i mean with windows too
21:02:00 <heat> it is complete ass
21:02:00 <mjg> weird
21:02:00 <heat> latency-ridden experience
21:02:00 <Ermine> windows is quite useable actually
21:02:00 <mjg> so why not wsl or whatever the fuck
21:02:00 <heat> i switched over before wsl
21:02:00 <mjg> you like arch on bare metal?
21:02:00 <Ermine> wsl is basically a vm
21:02:00 <heat> yes i do actually
21:02:00 <mjg> he could terminal 'n shit in wsl
21:02:00 <mjg> have the browser on windows
21:03:00 <mjg> but you do you
21:03:00 <mjg> just sayin dual booting is a misreable experience
21:03:00 <heat> i prefer to do most of my things on linux
21:03:00 <geist> to be precise, WSL2 is a VM
21:03:00 <Ermine> I even can play games on winXP in vmware
21:03:00 <geist> WSL1 was a syscall emulation of linux. different set of expectations
21:03:00 <geist> WSL2 is quite solid
21:03:00 <heat> mjg, why miserable?
21:03:00 <heat> i have 0 dual booting issues
21:03:00 <geist> OTOH i dual boot just fine. it's great
21:03:00 <heat> i've dual booted for like 9 years now
21:03:00 <mjg> rly?
21:03:00 <geist> yeah been dual booting for.... i dunno 25 years?
21:03:00 <nikolar> Yeah I had 0 dual booting issues while I was going that too
21:03:00 <Ermine> what's miserable about dual booting?
21:04:00 <mjg> i come over to my workstation, plop, unsuspends... and it's all set
21:04:00 <nikolar> *doing
21:04:00 <mjg> i am talking convenience
21:04:00 <geist> my main gaming/workstation machine i've always dual booted since like college
21:04:00 <heat> the only difference is that i have a grub menu when i turn my machine on
21:04:00 <geist> well sometimes convenience is just not a big deal
21:04:00 <mjg> got all my terminals, browsers, vpn etc.
21:04:00 <mjg> well you do you mate
21:04:00 <geist> like, i dont have a barista that makes me coffee at home, but i dont really care that much
21:04:00 <Ermine> And then you suffer in vm
21:04:00 <nikolar> Yeah screw windblows
21:05:00 <heat> ughh i hate microcrapper winfuck
21:05:00 <mjg> you ok heat
21:05:00 <heat> yes
21:05:00 <Ermine> MICROSHILL WINCRAP
21:05:00 <mjg> i used to hate on microsoft in high school
21:05:00 <geist> but, honestly the convenience went up a lot when i can just run chrome in either environment, so i basically switch to the other boot every few days because of some thing i want to do
21:05:00 <mjg> admittedly it was great
21:05:00 <geist> but both windows and linux remember my windows layout and whatnot
21:05:00 <geist> so it's mostly just a mode switch between playing games and hackin codez
21:05:00 <Ermine> In high school I was MS lover
21:05:00 <geist> and all told the switch is like a 2 minutes
21:05:00 <Ermine> So I even got Lumia
21:06:00 <heat> geist, i think firefox is extra saucey when it comes to tab sync
21:06:00 * mjg is embarassed for Ermine
21:06:00 <heat> hey
21:06:00 <heat> i'm still a MS lover for money
21:06:00 <heat> pay me $$ and i'll start speaking PVOID mon
21:06:00 <mjg> whore
21:06:00 <mjg> if you watches sopranos i would call you a whoooa
21:06:00 <Ermine> I've got 1TB of onedrive storage back then
21:06:00 <mjg> go watch that show mon
21:06:00 <geist> and the rest of the time i'm on mac. like i am right now, so it's a mode switch all the time for me, not a prob since like 75% of my time is typing into basically the same web browser
21:07:00 <Ermine> and even made an attempt to switch to IE from Chrome
21:07:00 <levitating> heat were you that person running microsoft accounting software in dosbox
21:07:00 <levitating> or was that someone else
21:07:00 <heat> not me
21:07:00 <mjg> geist: sounds like you have grown used to multiple setups
21:07:00 <geist> indeed
21:07:00 <mjg> geist: i have grown used to one
21:08:00 <geist> that being said by far the biggest one that's different is mac, but for the workloads i do on it, which is mostly run chrome, it's fine
21:08:00 <heat> i agree with geist
21:08:00 <heat> like, chrome is chrome
21:08:00 <heat> the keyboard works the same, the mouse works the same
21:08:00 <heat> then the tasks i do in windows are completely different from linux
21:08:00 <geist> oh yah and chromebooks, i use those too for work and i have a derpy one on the coffee table
21:08:00 <geist> same thing, just chrome no biggie
21:09:00 <geist> right, that's the key, if you boot into the OS to do different tasks, it's already kind a context switch anyway
21:09:00 <nikolar> heat that's where you're wrong
21:09:00 <Ermine> Yay, homedir is saved
21:09:00 <nikolar> The keyboard doesn't work the same on a mac
21:09:00 <mjg> i code on windows and game on linux
21:09:00 <mjg> great stuff
21:09:00 <heat> i know that's why i had a miserable experience with mac
21:09:00 <nikolar> Maybe because I'm on a non us keyboard
21:09:00 <nikolar> But still
21:10:00 <geist> well that's where i enjoy mac better, it has a much more logical key structure
21:10:00 <heat> geist, did you ever run fuchsia on your (i assume) pixelbook?
21:10:00 <geist> notably with the addition on the command key
21:10:00 <geist> heat: yep.
21:10:00 <heat> heh nice
21:10:00 <geist> we had the armadillo thing and it actually ran pretty nicely
21:10:00 <netbsduser> it's a shame the applers don't write books
21:10:00 <nikolar> I didn't find much logic in the mac key bindings
21:10:00 <geist> that's why i have a pixelbook, its googles, technically
21:10:00 <Ermine> Now I wonder if I can salvage my lxc containers
21:10:00 <netbsduser> i would like to read an XNU book
21:10:00 <heat> geist, still dogfooding?
21:10:00 <geist> no
21:10:00 <heat> :(
21:10:00 <geist> i have chromeos on it now
21:11:00 <geist> and use it for work as a lightweight laptop to carry around
21:11:00 <Ermine> how much lightweight?
21:11:00 <nikolar> I got a pinebook
21:11:00 <nikolar> Waiting for it to arrive
21:11:00 <geist> oh i dunno. it's a uh.
21:11:00 <Ermine> nikolar: nice
21:11:00 <heat> Ermine, you can salvage anything that's not in the first block groups
21:12:00 <geist> amazon says 2.45 lbs, so like uh 1.5kg?
21:12:00 <heat> note that this doesn't exactly mean your files are 100% intact, but it's a lot likelier they are (unless you had disk space trouble)
21:12:00 <geist> er wait, 2.2, just a smidge over 1kg
21:12:00 <Ermine> ah, not so lightweight
21:13:00 <geist> well, vs the 15" macbook pro i am typing on here, which i dont particularly like to carry around
21:13:00 <geist> looks like that weighs about 2.45kb
21:13:00 <Ermine> heat: I think it's the manageable amount of damage
21:13:00 <geist> kg even
21:14:00 <Ermine> I didn't expect to recover that much anyway
21:14:00 <nikolar> I am going to run some softwarez on it
21:14:00 <heat> Ermine, how did you find your /home?
21:14:00 <heat> did you craft a dir entry then find over the partition?
21:14:00 <geist> but re: dual booting, one last thing i'd like to say is i spend about 80% of the time in linux. i basically reboot to play games, and then leave it there until the next time i want to hack on something seriously
21:14:00 <Ermine> I looked for dir inodes belonging to me
21:14:00 <geist> then i switch back to linux and leave it there
21:15:00 <heat> oh that's a PITA no?
21:15:00 <geist> FSes with fixed location inodes FTW
21:16:00 <geist> that's the biggest advantage, each to recover a pretty corrupted dir structure
21:16:00 <mjg> huh
21:16:00 <heat> my idea was like: say you have file abcdef (something unique-ish), find the dir entry over the partition, go offset -> block -> inode, then go back up or down as needed to find your ~
21:16:00 <mjg> the true answer is to make backups, sorry
21:17:00 <mjg> (which btw zfs makes very easy)
21:17:00 <nikolar> I game on Linux
21:18:00 <heat> Ermine, btw if you're savvy enough you can pipe some commands down debugfs's throat and get a damage report on your ~ files
21:18:00 <geist> for a while i did too, but honestly like the context switch. just enough of a barrier to rebooting to keep me from getting distracted when a compile is taking too long or i hit a hard programming problem
21:18:00 <geist> so i kinda have a no-gaming-on-linux rule
21:18:00 <mjg> :D
21:18:00 <mjg> i have to confess something
21:19:00 <mjg> 10 years ago i dual booted my laptop to windows to play some quek
21:19:00 <mjg> at some point i could not be fucked to boot back to linux to work
21:19:00 <mjg> so i kept playing
21:19:00 <mjg> :d
21:19:00 <geist> it's a gateway drug, games
21:19:00 <mjg> was MIA for 2 days as far as my boss knew
21:19:00 <geist> rots your brain, etc
21:19:00 <mjg> 's what you love about them innit
21:20:00 <mjg> my best "experience" here was playing some quek on freebsd, maybe 20 years ago
21:20:00 <Ermine> heat: no, I don't think I will
21:20:00 <mjg> i was running wmii
21:20:00 <mjg> middle of the summer
21:20:00 <heat> i find osdev to be more addicting than games
21:20:00 <mjg> i look at the clockm maybe 4 pm
21:20:00 <mjg> i play some games
21:20:00 <mjg> i look at the clock, 4 pm
21:20:00 <mjg> i play some more games
21:21:00 <mjg> turns out the statusbar broke and i played till like 8 pm
21:21:00 <mjg> :d
21:21:00 <Ermine> Things are looking good
21:22:00 <nikolar> I mean I don't play much
21:22:00 <nikolar> Mostly on my deck
21:22:00 <nikolar> Basically one game :P
21:22:00 <Ermine> So far I don't know better ways to detect dirs other than statting each inode
21:26:00 <geist> oh i tend to work on very long epic rpgs or story driven games., working on one at a time like watching some new shot
21:26:00 <geist> show. *still* working on the last FF7 remake
21:26:00 <geist> i'm like 60 hours in dunno where the end is
21:27:00 <mjg> ooh mon
21:27:00 <geist> then i'll probalby finish up horizon zero dawn 2 and then back to zelda from last year
21:27:00 <mjg> i randomly ran into a guy playing fallout 2
21:27:00 <mjg> replaying with random builds and whatnot
21:27:00 <mjg> i am so happy i did not pick that up
21:27:00 <geist> yah i stay away from builder games like factorio or whatnot too. i can dump way too much time into that
21:27:00 <mjg> you can mess with the game on repeat, you can easily lose a month
21:28:00 <geist> i like to experience a story, sort of like reading a great book, or a good movie
21:28:00 <geist> and then be done with it so i can move on
21:28:00 <mjg> :)
21:28:00 <mjg> call me lame all you want, i don't play games anymore but do sometimes watch a playrhtough
21:28:00 <mjg> no commentary
21:28:00 <geist> exploration games too
21:29:00 <mjg> i really dont' want to actively put effort int oa fuckin game
21:29:00 <geist> oh 100% i've been watching Arcas speed run NES games of my youth a lot too
21:29:00 <geist> just sort of on in the background
21:29:00 <mjg> ye, people podcast 'n stuff, i watch a video game
21:29:00 <mjg> story-driven
21:29:00 <mjg> (assuming i don't podcast myself >)
21:29:00 <geist> yah. i'vefound watching someone play a final fantasy or whatnot game is about as good as doing it yourself
21:30:00 <geist> i dont quite get that kick with exploratino games like zelda or whatnot
21:30:00 <mjg> that sounds like blasphemy tbh
21:30:00 <mjg> make sure to not mention it to actual gamers
21:30:00 <geist> but for something that's story driven it's not *too* different
21:31:00 <geist> OTOH i long since figured out that i cannot multitask. of if i do i am really not that productive
21:31:00 <geist> like on the surface level of productivity, only useful for things with a lot of waiting
21:31:00 <geist> but no ability to deeply think if i'm even remotely multitasking
21:32:00 <mjg> stuff in the background is great if you bisect or do some other luller
21:32:00 <geist> right
21:32:00 <mjg> save the brainpower to problems which need invesstigating
21:32:00 <geist> i can still listen to music but i have to turn off all chats, notifications and whatnot to deeply think about anything
21:32:00 <mjg> i don't music in the background
21:33:00 <mjg> it's a habit which adds nothing imo and should not be hard to break
21:33:00 <mjg> and i am saying this is a person who was walking everyone with a mp3 player for years
21:33:00 <mjg> one day it broke and bam, turns out i don't give af
21:33:00 * mjg recommends trying out
21:37:00 <geist> i h onestly dont like walking around listening to music, but i've found that you at least need to have headphones on if you're walking around the city streets
21:37:00 <geist> or you get panhandled
21:37:00 <geist> headphones send the sign that you're not interested
21:37:00 <geist> otherwise i dont particularly like to reduce my hearing, if nothing else for safety purposes
21:38:00 <mjg> rarely happens to me, maybe il ook poor
21:40:00 <heat> i exclusively go out listening to music
21:45:00 <zid> geist showing off his executive function, smh
21:47:00 <geist> wat
21:49:00 <zid> which bit
21:50:00 <klys_> 0x00000000
21:50:00 <zid> That's none bits!
21:51:00 <klys_> perror( "memory" );
21:54:00 <Ermine> so... how can I translate offset to a block
21:55:00 <klys_> offset / sizeof( struct block )
21:55:00 <nikolar> Kek
21:57:00 <zid> I've been playing kingdom hearts, does that count as having executive function do you think nikolar
21:57:00 <nikolar> Are you executing some functions
21:57:00 <zid> no?
21:57:00 <nikolar> Then no
21:58:00 <zid> I'm not sure that's what that means
21:59:00 <klys_> if executing functions means I have to make a sandwich
21:59:00 <nikolar> ¯⁠\⁠_⁠(⁠ツ⁠)⁠_⁠/⁠¯
21:59:00 <zid> I'd execute loads of functions if it completed my chores
21:59:00 <zid> and appeared sandwiches
22:01:00 <klys_> of course sliced ham is p.expensive compared to polish sausages