IRC channel logs
2022-06-02.log
back to list of logs
<tinybronca[m]><stikonas[m]> "But it might not be igpu but..." <- Right well the question stands for any iGPU but yes we were talking about Intel I guess.... but the claim is Iris Xe Max (DG1) are dedicated but I think mobile only so I don't know if they are a different chip on the motherboard or what, I don't really understand what makes them dedicated because they are not expansion cards <oriansj>unmatched-paren: I'd use RISC-V if it provided me more Freedom (in the GNU sense); heck I am still using a librebooted x200 as my main computer. (I can be productive with 256MB of RAM) <tinybronca[m]>haha what is this "productive with 8MB of RAM"? Sounds slightly better than Bill Gates <oriansj>tinybronca[m]: it is the least amount of RAM you can get emacs to run in these days <tinybronca[m]>They reportedly require an Intel platform with specific BIOS support compatibility, so they may have effectively killed DG1 off for DIY users before it even hit retail. Sigh. <oriansj>tinybronca[m]: well there are older GPUs with free firmware (thanks to reverse engineering) so the question ultimately becomes what are your expectations? (even GPUs in FGPAs might even work) <drakonis>the ones coming out now dont have this limitation <drakonis>it seems like an extremely minor concern to me right now <tinybronca[m]><drakonis> "ah does it now?" <- I read internet rando claim, did not do decent research <tinybronca[m]>drakonis: apparently you are the majority, as people buy AMD and nvidia cards in droves <tinybronca[m]>but I'd prefer to purge my system from as much proprietary BS as possible <oriansj>tinybronca[m]: did you look at the iCE40 FPGA systems yet? <drakonis>i would pick intel if it was available and the performance was a known quantity <drakonis>as well as finding out whether intel has a gpu that can measure up to a ryzen <tinybronca[m]>oriansj: These are Lattice, right? I read severl years ago there was good progress on libre toolchain and documented bitstream formats which made me want to buy <oriansj>tinybronca[m]: yes they are supported by icestorm and other libre toolchains <drakonis>surely not implying that i'm a mindless consumer because i'm not too concerned about the possibility of intel requiring firmware <tinybronca[m]>drakonis: I did not say you were mindless consumer, but you do not care about running only libre code which majority of people clearly do not <drakonis>while it is a laudable goal, it is never so simple <oriansj>and why we are building progress towards that and more here <tinybronca[m]>drakonis: it is simple to not give money to companies who do this <oriansj>tinybronca[m]: not everyone gets to choose the hardware they run <oriansj>but everyone here wants progress in the more freedom direction <oriansj>we just all have different requirements for our needs to be met <drakonis>acquiring this kind of hardware isnt always feasible and it is almost always quite expensive <oriansj>perfection isn't a requirement to be here, only the desire to make things better. <drakonis>i have specific requirements that need a gpu <tinybronca[m]>drakonis: No there are definitely cheap options, sure the chips are proprietary but you can get cheap blob-free hardware <oriansj>tinybronca[m], drakonis: I think you are both talking past each other. <drakonis>i'm not sure why you're proselytizing to me about it <drakonis>the whole point of having a gpu is to accelerate graphical operations and there isnt cheap blob-free hardware that's fast <tinybronca[m]>drakonis: I'm not really proselytizing I am doing research on hardware that seems reasonable for my purposes and it appears you have different priorities that match the majority of people and I was just noting that *tinybronca[m] is not sure what was assumed <oriansj>or a bunch of software pre-rendering with a bunch of RAM <drakonis>tinybronca[m]: your wrong assumption is generalizing that because someone wants or needs a gpu means that their priorities match the majority <drakonis>and that's not something that is inherently bad <drakonis>oriansj: i'm confused now, doom's wad is actually 6 or so mb <tinybronca[m]>I mean it matches the majority who don't care about proprietary blobs, I have no idea what you use GPUs for <tinybronca[m]>it's not an assumption it is pretty obvious most people don't care <oriansj>drakonis: I think that depends on the version used but I could be quite wrong <drakonis>ah yes the binary for running doom is taking up some of that <oriansj>tinybronca[m]: or the belief that we will solve that problem in the future <oriansj>yes things can be bad and we might be able so solve everything now <tinybronca[m]>drakonis: Is someone else buying this hardware and forcing you to use it? <oriansj>and not everyone is able to reverse engineer firmware/hardware; so in time it will be addressed but right now work still has to be done and there are technical requirements for that. <tinybronca[m]>well I don't think we can solve everything now haha the ice40 does not seem big enough for a modern enough soft core to run a modern OS <oriansj>tinybronca[m]: I was suggesting iCE40 is good enough to run as a minimal GPU and you can pair it with a different CPU to get a free operational system <oriansj>not everyone is able to build one of those (due to freetime/comfort/or other reasons) <drakonis>tinybronca[m]: no, however there is no reasonably competitive free option <oriansj>and the second something like that becomes available, I'll probably buy one <drakonis>i'm not sure what are you trying to get to with this conversation <drakonis>if only there was a fourth gpu manufacturer... <oriansj>tinybronca[m]: there might be forks with enhancement but I haven't looked that deeply <tinybronca[m]>Well I did not even bring up the topic of proprietary blobs to get GPUs working <tinybronca[m]>Panfrost driver does what I need quite well, decently modern OpenGL support can even run some games if I want, nothing major obviously <tinybronca[m]>But yeah if you have specical GPGPU requirements or want AAA games then I dunno <oriansj>tinybronca[m]: also, not everyone has taken the time to know all options in the space. So sharing useful info is generally a good idea <tinybronca[m]>Also anything pre-Arc is obviously blob-free on Intel side I guess this is i915 driver that is very common <tinybronca[m]>oriansj I guess you use i915 in your Thinkpad and you have Libreboot which is great <drakonis>yes, except it is a dwindling number of machines that can do that <tinybronca[m]>yeah I don't know stikonas said there is burned-in firmware on Intel GPUs and I asked how to tell how big it was or how to access it at all to verify it is there and no one knows <drakonis>the lack of blobs does not cripple the gpu <drakonis>it works without loading the firmware but it'll be worse due to using the unpatched firmware on the chip itself <tinybronca[m]>Obviously Intel CPUs have microcode but that is unrelated to the GPU <oriansj>tinybronca[m]: any ASIC with more than 10M transistors has firmware <drakonis>let me find the firmware branch in the linux kernel tree <tinybronca[m]>Well it depends on how you define "firmware" as often it means software running on auxiliary processors not the CPU but the microcode is definitely both stored and executed in the CPU. It depends on your definition. <drakonis>as well as newer intel cpus to have access to the full feature set <oriansj>firmware is a natural result of complexity and chasing performance metrics with short development cycles <drakonis>"Starting at Broxton (a Skylake-based micro-architecture) Intel CPUs require binary blobs for additional low-power idle states (DMC), graphics workload scheduling on the various graphics parallel engines (GuC), and offloading some media functions from the CPU to GPU (HuC).[1]" <drakonis>dg2 is here, so arc alchemist needs blobs <tinybronca[m]>haha well there goes to show how much I pay attention to recent Intel hardware <tinybronca[m]>Right I never had i915 hardware requiring blobs only with proprietary UEFI that I had to liberate <drakonis>actually, i'm far more confused that you're going through so much trouble to avoid acquiring recent hardware <oriansj>drakonis: people have different preferences <drakonis>you still need a gpu for non AAA games though <oriansj>and more power to those to build more freedome for others. <tinybronca[m]>Yes I know and I can get quite good OpenGL 3.x support and HD output and modern compositing window manager and can play many emulators/scummvm and some 3D games with Panfrost <oriansj>warzone2100 is under the GPL and is good fun for those that like rebuilding the world from ashes <oriansj>I'm hoping someone makes a guix package for it <tinybronca[m]>Those really bizarre creatures with random appendages having trouble moving were fun tho <drakonis>doom and quake are pretty great but some quake maps tank my performance on my laptop <tinybronca[m]>oriansj Thrive is in C# that possibly makes Guix packaging hard? <drakonis>it needs godot which requires dotnet not mono <drakonis>however it has bindings for programming using multiple languages <tinybronca[m]>Oh well I am not clued into C# world but doesn't Thrive's engine also need to work specifically on mono not just Godot <tinybronca[m]>All code is licensed under the GNU General Public Licence, while assets (like music and art) are covered by CC-BY-SA. This means we encourage anyone to copy and modify our code and assets, but all adaptations must be shared under the same conditions (non-commercial, available for others to modify) and attribute the original source as Revolutionary Games. <tinybronca[m]>Copyleft licenses, then says "non-commercial" that is confusing <tinybronca[m]>src: The core of the game written in C# as well as Godot scenes. <drakonis>the non-commercial clause is there to prevent people from selling the game whole cloth <tinybronca[m]>But the licenses they chose do not have non-commercial clauses <tinybronca[m]>and if they did it would not be free/libre culture and not packagable in distros that cared <drakonis>i'm looking into the license in assets and it is cc-by-sa 3.0 <drakonis>not seeing any non commercial clauses anywhere <drakonis>i guess it must've been a mistake in the wiki page <drakonis>i figure this is the one that was assumed to be the one when that got written <tinybronca[m]>PureTryOut (matrix.org) Guix is written in Guile Scheme so check the GNU Guile manual or Scheme standards like r5rs or r6rs or SRFIs <PureTryOut[m]>Yeah ok I get that it applies that lambda on every argument passed to the map, the input/arguments being "BUILD.gn" and "BUILD.generated.gni". But I suppose I mainly don't understand what the copy is doing there. Is it basically copying `boringssl-gen/BUILD.gn` to `BUILD.gn` and the same for the other file? <PureTryOut[m]>Well it's part of me bootstrapping Dart, otherwise I'm not actually interested in Guix 🙈 <PureTryOut[m]>That was my only guix related question though, don't worry haha <unmatched-paren>ah, i see. nice to know that it's being used for that purpose even by people who are otherwise completely disinterested... <PureTryOut[m]>That's the eventual goal yes. But Dart is hard enough by itself so far lol <PureTryOut[m]>Too bad the author of the Dart bootstrapping to GNU Guix I linked never continued their work. I don't think it was ever merged was it? <unmatched-paren>building flutter requires android studio and a gazillion binary blobs <PureTryOut[m]>That gn build system is so annoying. I basically replicated what the GNU Guix bootstrapping was doing and still it errors out on things that should at best be warnings... <unmatched-paren>i wish you luck, but i'm somewhat pessimistic about your chances. android studio is the embodiment of non-bootstrappability :P <unmatched-paren>yes, that would be nice for regular (sane) apps written in Dart which there might be some of? idk <fossy>stikonas[m]: i did briefly test --repo mode and nothing looked wrong. perhaps put it in draft mode if there are known issues/issues to be tested? nothing really stood out to me <fossy>you can push straight to master if there's any small fixes that need to be done to that, but it looked mostly fine to me <unmatched-paren>PureTryOut: i think android studio also includes blobs itself, plus the gradle system it has downloads stuff <fossy>that sounds nasty, PureTryOut[m] <unmatched-paren>I'm going to coin "open sores" as a name for such a project that is technically free-source software but goes out of its way to stop you building it from scratch. <PureTryOut[m]>Also calling it open-source but just throwing a bunch of code over the wall every once and while, such as Android. It's insane trying to get any patch in that project <unmatched-paren>PureTryOut[m]: yeah, i was surprised they were still pushing that lie, even with the mountains of proprietary stuff in Android nowadays <unmatched-paren>they admit it lol "AOSP can't be used from pure source code only and requires additional hardware-related proprietary libraries to run, such as for hardware graphics acceleration. See the sections below for download links and Device binaries for additional resources." <PureTryOut[m]>Tbf most proprietary stuff comes from vendors, stuff like proprietary userland drivers. The only proprietary stuff Google has in Android is Google Play Libraries really which you can just not install. But yeah, it's a shitty situation <PureTryOut[m]>We're trying to get rid of that system hard over in postmarketOS 😄 <unmatched-paren>what i was noting though is that it's plausible that Studio would also require similar proprietary blobs <unmatched-paren>also "It's insane trying to get any patch in that project" <- s/project/product/ :( <muurkha>unmatched-paren: people have been using the term "open sores" as a pejorative for open-source software since the term "open source" was invented <dzho>I've seen that credited as the first use of the term "open sores" and went so far as to dig out a microfilm copy of that issue at the library where I was teaching at the time to confirm. <muurkha>wow, his middle name is (Philipp) Melanc(h)t(h)on <muurkha>that's some deep fucking nerdery right there <stikonas[m]>fossy: yes return failed after I put it to separate function <PureTryOut[m]>Well I got dart 2.0.0-dev.8.0 bootstrapped 🎉 Onto the rest! <plasma41>PureTryOut[m]: Excellent! Bonus points if you can get it into Debian main <PureTryOut[m]>Sorry, I do not care much about Debian 😅 Doing this for Alpine Linux <plasma41><aside> The fact that Canonical is jumping on the Flutter bandwagon for a lot of their new applications when Dart, the language, isn't even packaged in Debian is baffling to me. </aside> <unmatched-paren>plasma41: oh noes it just occured to me that this means that canonical is moving even further away from free software... flutter does not appear to be particularly geared towards free software, considering the number of blobs required to compile it plus the android studio requirement. sad... <unmatched-paren>well, i guess it should be fairly obvious to most people that canonical doesn't really care, given that Ubuntu Software actively promotes various nonfree apps <PureTryOut[m]>plasma41: Canonical probably just uses the binaries directly from Google, they don't seem to care much 🤷 <unmatched-paren>still quite a shame, especially if those apps might be useful to other distros <plasma41>unmatched-paren: Yes, between relying on unbootstrapped SDKs and promoting Snaps, I'm glad I got off the Ubuntu train about six years ago. Still have a soft spot for the Xubuntu community though. <unmatched-paren>PureTryOut[m]: i am pretty certain that compiling it requires AS for the runtime <unmatched-paren>Similarly for the Android SDK, it's downloaded by the gclient sync step below. <PureTryOut[m]>that sounds weird. According to some other people I talk too it's not required 😛 We'll see when I get to it lol <PureTryOut[m]>but again, we'll see when I get to it. First I need to get to the newest Dart <unmatched-paren>seems like it may be possible to build without android support, but that's probably the target that flutter users want the most, right? <plasma41>PureTryOut[m]: Is your wip available to download somewhere? <PureTryOut[m]>plasma41: it's in the form of an Alpine package and it's unmerged so no, but I can link you the APKBUILD (which is just a shell script anyway) <unmatched-paren>PureTryOut[m]: i'm certain it does require the Android SDK (which I think is part of android studio?) <PureTryOut[m]>I use the Android SDK perfectly fine without Android Studio anywhere on my system <oriansj>PureTryOut[m]: sounds like a good hard problem to solve and you'll probably do a good bit of ground breaking work clearing out the downloads from the build process. I appreciate the hard work, keep it up ^_^ <unmatched-paren>well, seems like it'll need gradle, which is itself non-bootstrapped <tinybronca[m]><PureTryOut[m]> "devs maybe, not if you just care..." <- hmmmm what are examples of apps written in Dart? I never come across any <oriansj>unmatched-paren: my bet is something isn't bootstrapped because it is either work that people don't want to do or because no one in the community valued it enough to do yet. Which is probably the second now and it'll shift more towards the first over time. <PureTryOut[m]>But that requires Flutter too, which'll be a beast in itself <PureTryOut[m]>yeah Dart with Flutter is extremely popular to make Android and iOS apps <PureTryOut[m]>ok I got dart 2.0.0.dev.20.0 now, having the first one done this was easy lol <tinybronca[m]>most surprising thing so far is 75 USD / hour for web designer <unmatched-paren>tinybronca[m]: maintaining bloated web frameworks requires skill, y'know :P <tinybronca[m]>"With total smartwatch sales expected to reach a quarter of a billion units in the next five years" <unmatched-paren>tinybronca[m]: people like their wearable tracking devices, it seems :) <PureTryOut[m]>I use a smartwatch and it 100% doesn't track me. It helps that it runs regular Android and there is no UI to connect it to wifi lol <PureTryOut[m]>Also at postmarketOS we have someone mainlining a smartwatch, which so far seems to be the first. Then it can run regular Linux (in our case postmarketOS) without hacks and a bunch of proprietary blobs like Halium/libhybris <tinybronca[m]><unmatched-paren> "tinybronca: apparently https://..." <- thanks for link [oriansj](https://matrix.to/#/%40oriansj%3Alibera.chat) I can understand why it is nicer to use one language to target Android and iOS instead of dealing with Kotlin and Swift or whatever, but I am quite apathetic about those OSes (despite their popularity) so I am more interested in bootstrapping Dart on GNU+Linux..... for example does FluffyChat build <tinybronca[m]>with AOT Dart compiler alone, or does it need this entire Flutter framework as well? Or what other Dart apps even *are* there for GNU+Linux besides FluffyChat? <PureTryOut[m]>But Flutter works just fine on regular Linux, FluffyChat is available as a Flatpak for example <plasma41>s#Qt or GTK are to C/C++#GTK or Qt are to C/C++# *plasma41 tends to be pedantic <stikonas>oriansj: you broke untar for live-bootstrap :( <stikonas>though maybe I can workaround that with command line options <stikonas>ok, non-strict seems to work, so I think we are fine <oriansj>stikonas: sorry about breaking your workflow but atleast we now have alerts if files/directories in the tar are not being created. <stikonas>oriansj: no, problem, you did warn me about command line changes <stikonas>I was aware of --file but not of this one <stikonas>there are some symlinks in mes tarball which we were "fixing" with cp command <oriansj>and we did clear out a good few segfault bugs in untar and ungz, so things should be more stable going forward (even with bad input) <oriansj>or we could add support for symlinks to m2libc and remove the work around <oriansj>stikonas: but that kernel will be *AFTER* builder-hex0 <oriansj>but yeah, the less hacks we need to do, the better in the long term <stikonas>ok, stage0-posix updated in live-bootstrap <stikonas>so should be easier to solve those pre-gen file issues that we found <stikonas>fossy: feel free to double check my commits, I just pushed them now