anyone here know how to use "linux"

ok so I got this old core 2 duo machine, you know, a modern x64 intel computer. the Fedora 43 live usb doesn't boot on it, grub says something has a bad sector. but the same live usb works just fine on another computer, and i reimaged the usb drive just in case and it's still misbehaving. I don't think I'm gonna get this working, but I would be interested to know if Fedora dropped backwards compat with non-uefi systems or something like that

EDIT: fedora 43 supports x86_64_v1

what I really want to do is to boot it to a linux new enough to build mollytime so I can then run mollytime and go "ok yes, this is good" or "oh god". I need sdl3 and something in the ballpark of clang 20
I'm also fantasizing about making my own live USB distro for mollytime, so if anyone knows anything about how to make a custom live linux distro, 🤙
currently my best plan to get mollytime working on that machine is to port mollytime to haiku. I think my meds are starting to wear off for the night
ok it turns out the ancient version of ubuntu studio that's running on my old core 2 duo desktop only recently fell out of support because i had the good sense to install an LTS version, so upgrading to the latest LTS might be fairly straight forward. current plan is to do that and if the machine is still operable afterward, see if the clang version is new enough to build mollytime and otherwise install distrobox or something if it is not
also, i had this great / horrible realization that on a long enough time scale, gentoo is probably the best option for continuing to run linux on hardware that is old enough for normal linux distros to tell you to throw it in the garbage
alright, round one of upgrading old LTS ubuntu studio to slightly less old LTS ubuntu studio complete, and the computer is still operable! now for round two 😎
this is the computer i'm trying to revive btw
the piano was probably new in 2000. i built the now-repurposed computer in 2011. it's funny how differently these things age

alright, I've successfully managed to bring the Compiano Forte up to the latest Ubuntu Studio 24 Point Whatever and sound still works even, and I am completely stuffed with ï½¢thanksgivingï½£ just positively filled to the brim

I got clang 20 installed on this machine, which is important to building mollytime, but, uh huuuuuh, Ubuntu Studio 24 Point Whatever doesn't seem to have SDL3 available

semi-related, I've decided that my collection of mostly functioning old computers that I've been holding on to just in case is now to be hereby known as my "Beowulf Clutter"
i've got three versions of clang on this computer and meson refuses to use the good one
ok I got it using the good clang, but it's not using the good clang's standard library somehow, I think it's using GCC's?
read 'em and weep ladies, mollytime runs just fine on a Core 2 Duo

glxinfo -B reports this machine has hardware accelerated 3D graphics supporting a maximum GL core version of 0.0 (and compat version of 2.1) so I guess for all intensive porpoises this machine does not in fact have hardware accelerated 3D graphics anymore

I didn't check, but I'm guessing SDL picked the software rendering pipeline, because the UI was a bit sluggish. however! all of the patches I tried played just fine, so the Core 2 Duo can handle the synth pipeline which is the important part

my main takeaways from this exercise so far are 1) I'm a long ways off from ever needing to optimize the audio thread performance; none of my patches are complex enough yet for it to be problematic that I'm still just chaining a few dozen lambdas together passing around doubles through a long chain of shared pointers at 48000khz 2) until polyphony makes me eat my words, the benefit of doing so will mostly be in improving battery life on my laptop, and 3) the UI perf has room for improvement
and that last point might really just be a case for getting a GPU for that machine
oh holy smokes, /proc/cpuinfo says this is a 3.2 ghz cpu. i assumed this machine was somewhere closer to 1 ghz
ah, it's an Intel Pentium E5800 "wolfdale" processor, so either I am mistaken about it being a Core 2 Duo or it is one and the branding is just confusing, but either way wikipedia dates this somewhere between 2008 and 2012. I would have purchased this either late 2011 or 2012 because I remember buying it to celebrate getting a job at Creative Commons
@aeva Pretty sure in this era they applied the Pentium or Celeron branding to the low-cost parts, and the Core 2 Duo branding to the high-cost parts
@swiftcoder I just found a chart on wikipedia that confirms this: E7xxx and E8xxx would have been Core 2 Duo, higher would have been Xeon, and lower was pentium and celeron. so this would not have been sold as a core 2 duo
@aeva even the retro vibe machines are fast now
@halcy I remember back in high school twenty years ago a friend I were drooling over a video of someone overclocking a pentium 4 to something crazy like 4 or 5 ghz (with an elaborate liquid nitrogen cooling system)
@aeva now I have a laptop in front of me that turbos up to 4 ghz just as a regular thing. and it has like 16 cores that can all do that. it doesn't even really get very hot. also the instruction set is of course way better. it's a bit silly.
@halcy CPUs haven't been slow for a very long time and now they're crazy fast. you really have to go out of your way to get a dog shit CPU now
@aeva I have a CPU on the dashboard of my car like just as a fidget toy and it's like a 2ghz dual core. I considered selling it on ebay when I took the computer it was in apart but it literally would be more in postage to do so than the thing is worth, if someone even wants it
@halcy hehe I used to have a pair of ram sticks hanging from the rear mirror like a pair of fuzzy dice
@aeva great bottle openers too

@halcy there's basically no good reason for this machine to be obsolete, except that infosec researchers are keeping the trash gyre alive with shit like this

bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit mmio_unknown

@aeva @halcy crank that `mitigations=off` in the linux cmdline idgaf
@artemis @halcy hell yeah. what are the hackers gonna do steal mollytime? haw it's already free
@aeva this fucking rules so hard. Being able to follow along as you post about making music, and writing music software and making mollytime and all the synths... it's so cool. Thank you for posting about all this. I look forward to whenever you do.
@aud aw ♡♡♡♡♡ ty ^___^
@aeva ukraine colors yuss
@aeva oh, I know this… that's the Lament Configuration
@aeva i thought it had an option to specify a clang executable...?
@JamesWidman when I punch in clang++-20 it just uses clang++ which gets it 18
@JamesWidman oh wait I think I successfully tricked it
@aeva *me, a piece of posix software* this is my emotional support clang
@mcc @aeva one thing we definitely don't miss of conventional Linux distros vs nixos, your cursed package can't even see the other compiler existing
@aeva I assure you, the piano was not new in 2000. I am personally aware of piano compositions as early as 1997
@rygorous @aeva Well sure but they were limited to a maximum of 255 keys.
@TomF @rygorous @aeva mine is so old it's not even using the full 7-bit range of keys
@TomF @aeva nah you could do key changes
@rygorous @aeva this made me laugh a little too hard 🤣 Thank you 😊

@rygorous @aeva may I offer you somalian electronic music from 1994?

https://ostinatorecords.bandcamp.com/album/808-xamar-exiled-digital-somali-sounds-from-1990s-saudi-arabia-bandcamp-exclusive

They mention synth and drum machine, not sure if keyboard were involved

808 Xamar: Exiled Digital Somali Sounds from 1990s Saudi Arabia (Bandcamp Exclusive), by Khadija Jiijo Jeesto

6 track album

Ostinato Records
@aeva wow, you got one of those keyboards without any letters on the keys... fancy...
@The_T @aeva its amazing what you can do with only A through G keys!
@c0dec0dec0de @The_T @aeva You can spell BACH for a start :-)
@TomF @c0dec0dec0de @The_T well, BAC, at least
@aeva @c0dec0dec0de @The_T It's the one musical notation joke I know:
https://en.wikipedia.org/wiki/BACH_motif
BACH motif - Wikipedia

@c0dec0dec0de That's only 7/12 keys, though. I hear you can also write C#, for instance.

/ @The_T @aeva

@aeva That's what I do! Compile binpkgs on a modern (from 2013) PC and then install them on 20-year-old x86 hardware. Works great for me, though lack of SSE2 requires me to patch some softwares on my own, Gentoo didn't do it for me.

(But I can't help you with Mollytime because I've no idea what that is and it's not in the Gentoo repositories, sorry)

@vaporeon_ mollytime is a visual programming language for audio synthesis that I have been developing since this summer. I would be surprised if there were a package for it yet since I haven't announced a stable release yet. Off the top of my head, the software dependencies are a compiler that can build C++ 23, meson, ninja, python, pybind11, and SDL3.

@vaporeon_ I'm not using any special cpu intrinsics, so but the code assumes a 64 bit CPU. I don't know of any reason why a x64v1 CPU would not be able to use it.

If the 64bit constraint were worked around, the great reliance on 64 bit floating point math probably limits how far this can scale down.

@vaporeon_ this is the current tail of my devlog thread if you are interested, btw https://mastodon.gamedev.place/@aeva/115620169762742174

@aeva In principle, I ran Gentoo on an Intel Core 2 Duo Mac Mini until that computer broke, so for a Core 2 Duo, you don't even need a second modern computer for compiling (though that would be faster), you can just install and use Gentoo.

I can confirm that Gentoo works on BIOS systems no problem, I've personally installed it on multiple systems that only have BIOS.
It has Clang 20 and libsdl3.

Although, if you don't actually want Gentoo, you just want your stuff to work: did you test yet whether the latest Debian boots from that USB stick? I remember installing it successfully on BIOS-only hardware a few years ago, but the latest version (Debian 13, which is the only one that has SDL3).

Unfortunately can't test it for you because they dropped 32-bit x86 support in that latest version  )

@vaporeon_ I tried the latest debian testing, but I wasn't able to get the live ISO to boot either from a bluray or a usb on this machine
@vaporeon_ I don't mind the idea of potentially running gentoo on this machine though

@aeva Good luck! (Let me know if you want any advice, I like talking about Gentoo, I don't know whether you've installed Gentoo before or not and I don't want to be condescending by explaining things that you already know)

In case it helps, I followed this article to set up building binary packages on the faster machine and installing them on the slower machine: https://wiki.gentoo.org/wiki/Gentoo_Binary_Host_Quickstart

Problem is that that requires an existing Gentoo machine, though... Or doing some stuff with Docker on a machine that runs some other distro, I guess

But compiling on a Core 2 Duo itself is 100% possible if you're OK with letting big compiles (like Clang and GCC) run overnight

Gentoo Binary Host Quickstart - Gentoo wiki

@vaporeon_ I used to main gentoo, but that was probably around 2005 give or take. The main thing I remember is foss project maintainers tend to get really annoyed when you report bugs that were caused by building with -O3 😅

I don't mind having multi day long compilation jobs to install or update packages, I know to plan accordingly. I wouldn't mind pointers on how to get the most out of modern gentoo though.

@aeva Coincidentally, I recently installed Gentoo from 2007 on an old computer for retrocomputing purposes; the main difference I noticed was that some of the paths are different (and the ebuild format also is incompatible with newer ebuilds), but otherwise I could use it just like I use modern Gentoo
So I don't have useful advice here, but I think you'll be fine...

The latest revisions of the Gentoo Handbook apparently suggest XFS as the default filesystem now and I genuinely don't know why (they didn't do it in 2021, this is a very recent change), but ext4 is still completely fine, I use ext4 on all computers except for the "storage server" (actually a normal PC with two giant hard drives in it) with ZFS

My CFLAGS are just -O2 -pipe -march=native -fpermissive because I'm boring (and also because I'm not sure how to measure whether higher optimisations actually made the program run better or whether they just increased code size for nothing), plus I used app-portage/cpuid2cpuflag to set CPU_FLAGS_X86 in /etc/portage/make.conf to all the CPU flags that the processor supports (it'll run without that, but some programs like ffmpeg can enable more optimisations if they know which CPU flags are available)

@aeva similar conclusion here 🥲 Gentoo or a DIY distro
@nina_kali_nina I should probably bite the bullet and switch this machine over to gentoo sooner rather than later.