qyliss changed the topic of #spectrum to: A compartmentalized operating system | https://spectrum-os.org/ | Logs: https://logs.spectrum-os.org/spectrum/
siraben has quit [Ping timeout: 245 seconds]
siraben has joined #spectrum
TimF has quit [Ping timeout: 252 seconds]
mcint has quit [Ping timeout: 246 seconds]
mcint has joined #spectrum
exarkun has quit [Ping timeout: 245 seconds]
exarkun_ has joined #spectrum
Caius has quit [Ping timeout: 245 seconds]
Caius has joined #spectrum
Caius is now known as Guest16363
Guest16363 has quit [Excess Flood]
Ca1us has joined #spectrum
Ca1us has joined #spectrum
Ca1us has quit [Changing host]
mcint has quit [Quit: just do it!!!]
mcint has joined #spectrum
<MichaelRaskin> Hm, Ulubis (Common Lisp Wayland composer) needs only libwayland, at least not wl_roots.
<Scrblue[m]> I'm kinda invested in Smithay, but I'm just a Rust person
<Scrblue[m]> A functional compositor sounds rad, though; as long as it was performant
<MichaelRaskin> Oh, Smithay also uses libwayland
<MichaelRaskin> Meh
<MichaelRaskin> Common Lisp is not really about any single approach anyway
<Scrblue[m]> Oh really?
<Scrblue[m]> I'm not too familiar with it
<MichaelRaskin> Here I would expect multiple-argument method dispatch (together with runtime ability to load more methods) to be more of a threat to performance. But I guess the hot path is simply inside libwayland anyway
<MichaelRaskin> Not sure, though, there is OpenGL code, too, of course…
<Scrblue[m]> ¯\_(ツ)_/¯
<Scrblue[m]> I am all but entirely unfamiliar with anything this low level
<Scrblue[m]> But learning is fun
<Scrblue[m]> I'm sorta student still, so I don't know much beyond programming and basic CS
<MichaelRaskin> Wayland is a bit like HTML5, complicated standard with expectation of dumping all the complexity into a single thing, with annoying security implications, constant version churn, and people just targeting a single implementation in the end.
<Scrblue[m]> Yeah, I can see that. I read up on the Wayland spec not too long ago cause I wanted to write a compositor for my phone
<Scrblue[m]> But is there any spec that isn't worse?
<MichaelRaskin> X11 protocol has lower churn, recommends at least some separation of concerns, and could be used in a way where most clients see themselves as the only client.
<MichaelRaskin> Sure it has layers upon layers of history, but Wayland is not a cleanup but throwing away all the good properties in favour of a single usecase story
<JJJollyjim> what is that single usecase in your view?
<MichaelRaskin> Running unmodified Gnome
<JJJollyjim> hm
<MichaelRaskin> In the sense that windows are managed as they are managed in Gnome, and decorated as they are decorated in Gnome, and workflows are whatever Gnome developers expect
cole-h has quit [Ping timeout: 252 seconds]
Ca1us is now known as Caius
<qyliss> that's not true at all, even if you look at where the money comes from
<qyliss> lots of the investment in Wayland at the moment is coming from automotive
<MichaelRaskin> Which is why Gnome looks tablet-like even in a desktop configuration?
<qyliss> I can assure you they're not running GNOME
<qyliss> often they're using the Qt Wayland Compositor (which exists)
<MichaelRaskin> Hm. Do they need any interesting protocol functionality, or are they just about driver support?
<qyliss> mostly what they need is performance from low-power ARM GPUs that they apparently can't get from X11
<qyliss> actually, some interesting protocol functionality which might have come from this side of things is dma-buf, but it's difficult to say for sure
<MichaelRaskin> Hm. Actually not sure whether GLX fits into their description of X11.
<MichaelRaskin> Of course _either_ approach needs driver work, and it looks like Wayland is the side where investing in driver works looks more promising
lukegb has quit [Ping timeout: 252 seconds]
lukegb has joined #spectrum
<Scrblue[m]> So I was wondering, with the VM setup there is now, is it possible to also run a conventional VM with its own display server, running multiple applications, etc?
<Scrblue[m]> Freelancing is dystopian and they take screenshot of my desktop at random intervals
<qyliss> jesus wtf
<qyliss> so the answerr is, with the setup in Spectrum at the moment, that would be possible in a couple of ways
<qyliss> most of my testing so far of graphical stuff has actually been with that setup, with wayfire running in a VM running applications
<qyliss> but I doubt whatever spyware they're making you use knows how to interact with wlroots to get screenshots
<Scrblue[m]> It does not :(
<Scrblue[m]> I'm using X right now
<MichaelRaskin> Well, you could just run a normal X setup inside Qemu, I guess
<qyliss> so if you have to run an X server, you'd want to use Xephyr, and you could forward that as a normal window using XWayland (although I haven't tested XWayland)
<puck> hrmm. i want to write a tool that fakes X screen captures at some point
<qyliss> but yeah, for now most typical virtualisation solutions should meet your needs here, QEMU for example
<MichaelRaskin> If you want CrosVM, I guess Xvnc could help you
<qyliss> not much point using crosvm if you're not using virtio wayland
<qyliss> or GPU stuff
<MichaelRaskin> Its limited device support could be considered a safety feature, I guess
<MichaelRaskin> Sure, you could also use firecracker
<qyliss> cloud-hypervisor is my go to at this point
<Scrblue[m]> Lots to look into, but I assume that'd all still be easier than finding a less cyberpunk job
<qyliss> (at least if I want to do something properly -- mostly I still use QEMU because it's easy, supports everything, and I know how it works)
<qyliss> Scrblue[m]: something to be aware of is that if they can run code on your computer, it will be very difficult to hide that you're using a VM
<qyliss> so you need to take into consideration how likely they are to check, and how likely they are to care if they find out
<Scrblue[m]> Maybe I should just work as an artisan penmaker instead; sounds easier than programming without a degree
<qyliss> what you're describing is not normal for programming jobs, degree or not
<qyliss> _especially_ not for freelancing
<Scrblue[m]> ¯\_(ツ)_/¯
<Scrblue[m]> I'll probably just deal with the insecurity until I can finish school
<lejonet> Scrblue[m]: I guess you're freelancing for american company atm? I have a hard time imagining any other company doing something so draconic :/
<Scrblue[m]> Yes, I'm American
exarkun_ is now known as exarkun
<V> what the hell
<Scrblue[m]> They things I'll do for money
cole-h has joined #spectrum
mcint has quit [Quit: just do it!!!]
mcint has joined #spectrum
<chipb> wtf++
<Scrblue[m]> :(
<samueldr> oh, hi, stumbled upon that KVM thing for android again: https://www.youtube.com/watch?v=edqJSzsDRxk
<samueldr> >> [2020] Virtualization for the Masses: Exposing KVM on Android by Will Deacon
<samueldr> lwn article related https://lwn.net/Articles/836693/
<samueldr> >> The protected KVM project is adapting the Chrome OS VMM (crosvm) for its VMM
<samueldr> I guess I'll have to actually listen to the talk (I often can't stand watching talks)
<Scrblue[m]> Does seem interesting, but you're still using Android :/
<samueldr> foundational technologies will get better with this, but really the reason I share is because of previous discussions, and actually unrelated to Android
<samueldr> it's because it means Android-based devices may get actual KVM support!
<pie_> ooh shiny
<Scrblue[m]> Right
<samueldr> so for non-Android-Linux on those phones, it's a boon that they are doing this kind of work
<Scrblue[m]> I have a Linux phone, but I've never even tried virtualization on it
<Scrblue[m]> It's slow enough as is
<samueldr> unless it's a pinephone or a librem5, it's highly unlikely you can do hardware accelerated virtualization
<Scrblue[m]> It is a PinePhone
<samueldr> then you can! but as you said, it's not a speed demon :)
<samueldr> but the hit from KVM is not that bad, so it's still useful in situations where e.g. you'd want more isolation
<Scrblue[m]> Oh boy
<Scrblue[m]> Time to see if I can Whonix from my phone
<hypokeimenon[m]> <samueldr "unless it's a pinephone or a lib"> Wasn't the Cosmo Communicator in possession of a decent SoC too? I don't know what virtualisation was like on there though .
<samueldr> according to MichaelRaskin, vendor kernel's default configuration does not enable KVM
<MichaelRaskin> Cosmo is MediaTek
<samueldr> and it's likely it's not available to configure
<MichaelRaskin> Hmm
<samueldr> hmm... I don't know how USB forwarding to a VM works, but it'd be interesting to see the modem being forwarded to a VM on the pinephone, since it's connected through USB
<hypokeimenon[m]> <MichaelRaskin "Hmm"> Ew...
<MichaelRaskin> I think one thing Planet never has time for is locking down things, so most probably you could build an alternative boot image with enough masochism
<Scrblue[m]> How minimal could you get each individual VM on a mobile environment?
<MichaelRaskin> samueldr: OK, I got around to booting Debian
<MichaelRaskin> It has /dev/kvm
<samueldr> hm
<samueldr> interesting
<samueldr> can you dump the config.gz?
<samueldr> well, uncompressed, and /proc/config[.gz] obviously
<samueldr> I'll try looking at it with the other mediatek harware
<samueldr> maybe it was a planet computer user that tipped me to /dev/kvm being present
<samueldr> in qualcomm's case, it's their non-customizable-by-OEMs part of the bootloader chain that blocks KVM access
<samueldr> Scrblue[m]: I don't know, I'm not even sure the question "really" makes sense
<samueldr> a VM is a tool, you can use it to do many things :)
<Scrblue[m]> I'm just thinking for something as low-level as running just the modem like you said
<MichaelRaskin> Now I just need a pastebin
<samueldr> AFAIK a VM can run "nothing" efficiently
<samueldr> so it'd be something like the minimum kernel to boot in the VM, without any bells or wistles, plus the USB drivers for the modem, and what's needed for IPC in/out of the VM
<samueldr> if you wanted to forward the modem directly
<MichaelRaskin> It should be able to run pure-computation efficiently, the rest has overhead…
<samueldr> but maybe you don't want to provide any "modem-ness" out of it, and just provide a network interface somehow
<samueldr> I really don't know :)
<Scrblue[m]> There's too much for me to learn X_X
<samueldr> don't worry, there's lots to learn all around
<MichaelRaskin> samueldr:
<samueldr> thank you!
<MichaelRaskin> Anything else you want me to run under Debian kernel before booting back to normal rooted Android?
<samueldr> MichaelRaskin: nothing really, thanks for the offer
<samueldr> the kernel config is generally the interesting bits
<samueldr> so let me try that against the two mediatek devices I have
<MichaelRaskin> That;s true
<samueldr> no guarantees the kernel will build, or the feature will work, but knowing it's not outright impossible is half the battle
<MichaelRaskin> Ahaha. So Debian fades the screen by timeout… and then lights it up again; unlocking shows the dialog «authentication required to allow suspending»
<MichaelRaskin> Not sure how to configure Debian power management properly for chat apps, so I guess back to Android and Debian chroot in Termux
<pie_> downside: now you will need kvm escapes to root your phone :P
<MichaelRaskin> Dunno, with Cosmo I need to follow a ten-step guide on the manufacturer site to root the phone
<samueldr> and ten steps is probably because it's spelled-out in details
<MichaelRaskin> Maybe seven, but more than five and fewer than too many
<MichaelRaskin> There is a factory wipe via repartitioning involved! Performed via a pretty friendly menu in the bootloader
<Scrblue[m]> I'm feeling grateful for my Linux phone then
<MichaelRaskin> I guess it actually has power management suitable for having an IM or email client running in the background.
<MichaelRaskin> (Although I have never tried to check how much battery idling but non-suspended Debian on Cosmo would consume)
<samueldr> hm, so it built a boot image with [some of] the options [available] enabled
<pie_> hm so given that this https://source.android.com/setup/create/cuttlefish exists
<pie_> android really needs that hardware attestation for vendor lockin
<pie_> and preventing spam
<pie_> or something?
<samueldr> DRM?
<pie_> like, how do they stop people from doing things they dont like
<pie_> mind youd an adroid emulator that i can run junk on without it complaining about not bein in a real env would be superb
<Scrblue[m]> I know what you mean, but I forget the name
<samueldr> so... no kvm on that device I guess, or I need to enable something else https://stuff.samueldr.com/screenshots/2021/04/20210421161437_52utyui856azpn9gz8c.png
<Scrblue[m]> How
<samueldr> # CONFIG_MTK_GIC_V3_EXT is not set
* samueldr *suspicious face*
<Scrblue[m]> How could I check the distro I'm running on my PP supports KVM?
<samueldr> AFAIK if /dev/kvm is there, it's there
<samueldr> tautology much :)
<Scrblue[m]> It's is in fact not there :(
<samueldr> though the good news is that on allwinner a64 it should be available (IIRC)
<samueldr> I seem to remember checking that on another allwinner a64 board
<Scrblue[m]> Don't know if that's something I could change or if I have to swap distros
<samueldr> depends on how easily your distro allows you to customize the kernel
<samueldr> it's 99% likely to be kernel configuration
<Scrblue[m]> I'll have a look soon
<Scrblue[m]> I'm running PostmarketOS right now
<samueldr> btw if it wasn't obvious, I'm not looking at a pinephone
<Scrblue[m]> I'm aware :)
<samueldr> oh, I guess it won't be possible... but it would be great if *however* the mediatek modem is attached you could forward it to a VM
<samueldr> then you could use a halium VM maybe
<Scrblue[m]> The one your are trying things on is also aarch64?
<samueldr> yes
<samueldr> aww, obviously the vendor broke the modules build :)
<samueldr> >> multiple definition of `mt_irq_dump_status';
<samueldr> not looking into it right now, but entirely possible it's fixable
<qyliss> surprised nobody posted this yet
<qyliss> if I understand it correctly, they're using GPU virtualisation to have a VM render windows, copy those to the host over RDP, and then have the host send those renders back to the GPU when it draws the windows
<samueldr> I don't know the details, but ain't that the second E of EEE?
<qyliss> samueldr: difficult to say tbh, they do seem to be going to great efforts to use the standards
<samueldr> hopefully
<qyliss> but in the bigger picture sense MS are certainly extending the Linux desktop with Windows features, if you look at it from that direction
<JJJollyjim> omg, they decided it was easier to port mesa to windows with a DirectX backend than to work with shitty silicon vendors to make OpenGL drivers work on arm?
<JJJollyjim> incredible
<qyliss> yep
<MichaelRaskin> Making silicon vendors make _one_ driver work is close to a miracle
<MichaelRaskin> Making them provide _two_ working drivers is beyond abilities of MS and Tesla together
<pie_> going to space is easier
<MichaelRaskin> Notice how SpaceX talks about being happy to buy whatever from external vendors, then ends up bending steel sheets on their own. Could there be a reason for that.
<MichaelRaskin> Might it be that they are literally better at going to space than at making vendors do things properly…
<JJJollyjim> yeah the drivers for steel sheets never get upstreamed so i’m stuck on an old kernel :(
<qyliss> so from a Linux PoV, this d3d12 thing really only means that some Windows games will work now, right?
<qyliss> JJJollyjim: are you still interested in bumping chromiumOSPackages btw? It's getting close to the top of my todo list.
<JJJollyjim> qyliss: i understand the d3d12 thing to be the other way around
<JJJollyjim> it translates mesa calls to a directx backend
<samueldr> I have faint memories of the previous d3d12 discussions being that, mesa calls end up going to directx
<JJJollyjim> could be misunderstanding though
<pie_> i hope there are some immensely cursed fun things you can do with that
<samueldr> but I really don't _know_
<JJJollyjim> i am still interested but have been super busy
<JJJollyjim> nothing going on at work right now, will double check how the IP policy relates to open source then have a go today
<qyliss> JJJollyjim: amazing, thank you :)
<samueldr> the more recent MTK device *does* have KVM though when enabling the options
<samueldr> neat!
<samueldr> thanks MichaelRaskin
<samueldr> xiaomi-begonia, for the record, don't buy one as it's not a safe device to mess around with
<samueldr> trivial to brick
<samueldr> though maybe the recent bootrom exploits mitigate the issues if it allows going back to a working state
<MichaelRaskin> I was of better opinion of Xiaomi
<samueldr> it's mostly specific to this device, the ARB (anti roll-back protection) is broken
<samueldr> and instead of putting the phone in an unverified state where you can recover it with e.g. fastboot
<samueldr> it fails to boot entirely
<samueldr> leaving it to be fixed only with the mediatek flash tool, which in turn uses "VIP" programming, which needs a valid xiaomi account for a token
<MichaelRaskin> Which takes 72 hours to register?
<samueldr> nope, unrelated to the unlock process
<samueldr> it's about authorized repair centers
<MichaelRaskin> Ouch
<samueldr> yes :)
<samueldr> in this instance it's _actually_ pretty much bricked, not "bricked but trivially recoverable"
<qyliss> I reworked networking today to make IP assignment a little less complicated, but amn't going to post it for now, because I want to try using IPv6 instead, so might end up just posting a patch to convert it to v6 instead if that goes well.
<qyliss> samueldr: thanks for linking those slides
<samueldr> the actual talk might be good too, haven't looked for it
<pie_> ok one more, https://invidious.site/watch?v=yrrxFZfyEsw&autoplay=0 "rootkits. lots of rootkits.