<bslsk05>
www.ssllabs.com: SSL Server Test: irc.sortix.org (Powered by Qualys SSL Labs)
<sortie>
I should probably thank OpenBSD for all the TLS stuff I stole from them :)
<heat_>
>I should probably thank OpenBSD
<heat_>
/votekick sortie
<sortie>
heat_: I believe what you meant to say was “wow sortie that's cool“
<heat_>
wow sortie that's cool
<heat_>
i wish you were using openssl though :(
<sortie>
Thank you heat, it does mean a lot coming from you :)
<sortie>
I never find myself wishing for openssl
<sortie>
acme-client wasn't too hard to port. I just had to splice in a bit of BSDism replacement goo here and there. Same old same old. There's somebody that made a portable dist of it too, but they GPL'd it for some reason, and figured it was super easy to just whip up a custom port myself like I did with other openbsd stuff
<heat_>
>they GPL'd it for some reason
<heat_>
FUCKING BASED
MiningMarsh has joined #osdev
<sortie>
I tried certbot too, since I got python, but somehow despite it being written in python, it somehow transitively depended on rust
<sortie>
heat_: GPL-2.0-only too
<heat_>
BASED^2
<sortie>
You just know some people have particular tastes in licensing when they take an ISC licensed program, add a couple of glue files, and then relicense it to GPL-2.0-only
<heat_>
*shrug*
<heat_>
personally i wouldnt do it but it is what it is
saulosilva has quit [Quit: Client closed]
vinleod has quit [Quit: My Unrecognized Mac has gone to sleep. ZZZzzz…]
<heat_>
note that it's not really super srs bzns so it's not really a real wm/display server/compositor, doesn't speak X nor wayland
<heat_>
i think sortie has plans for possible wayland support In The Future
saulosilva has joined #osdev
pog has joined #osdev
housemate has joined #osdev
Lucretia has quit [Remote host closed the connection]
saulosilva has quit [Quit: Client closed]
goliath has quit [Quit: SIGSEGV]
housemate has quit [Remote host closed the connection]
housemate has joined #osdev
housemate has quit [Ping timeout: 252 seconds]
housemate has joined #osdev
housemate has quit [Read error: Connection reset by peer]
housemate_ has joined #osdev
edr has quit [Quit: Leaving]
housemate_ has quit [Quit: Nothing to see here. I wasn't there. I take IRC seriously. I do not work for any body DIRECTLY although I do represent BOT NET.]
<geist>
most stressful thing ever: watching someone speed run Battletoads
Arthuria has quit [Ping timeout: 260 seconds]
netbsduser has joined #osdev
housemate has quit [Quit: Nothing to see here. I wasn't there. I take IRC seriously. I do not work for any body DIRECTLY although I do represent BOT NET.]
cloudowind has quit [Ping timeout: 252 seconds]
cloudowind has joined #osdev
dysthesis has quit [Remote host closed the connection]
Fingel has quit [Remote host closed the connection]
netbsduser has quit [Ping timeout: 265 seconds]
Fingel has joined #osdev
j00ru has quit [Ping timeout: 260 seconds]
Fingel has quit [Ping timeout: 252 seconds]
ring0_starr has quit [Quit: Leaving]
ring0_starr has joined #osdev
x64S has quit [Quit: Leaving]
vdamewood has joined #osdev
jjuran has quit [Ping timeout: 276 seconds]
jjuran has joined #osdev
SophiaNya has quit [Remote host closed the connection]
ptrc has quit [Remote host closed the connection]
SophiaNya has joined #osdev
ptrc has joined #osdev
j00ru has joined #osdev
ring0_starr has quit [Ping timeout: 248 seconds]
zijjgfs has joined #osdev
<the_oz>
acme.sh is pretty neat
zijjgfs is now known as ring0_starr
ThinkT510 has quit [Quit: WeeChat 4.5.1]
ThinkT510 has joined #osdev
housemate has joined #osdev
housemate has quit [Max SendQ exceeded]
housemate has joined #osdev
mobivme has joined #osdev
GeDaMo has joined #osdev
housemate has quit [Read error: Connection reset by peer]
housemate has joined #osdev
housemate has quit [Remote host closed the connection]
mobivme has quit [Remote host closed the connection]
mobivme has joined #osdev
mobivme has quit [Remote host closed the connection]
osdev199 has joined #osdev
Lucretia has joined #osdev
mobivme has joined #osdev
goliath has joined #osdev
mobivme has quit [Remote host closed the connection]
mobivme has joined #osdev
hwpplayer1 has joined #osdev
bauen1 has quit [Ping timeout: 265 seconds]
hwpplayer1 has quit [Remote host closed the connection]
hwpplayer1 has joined #osdev
mobivme has quit [Remote host closed the connection]
housemate has joined #osdev
<sskras>
hi. Maybe someone would know. Is it possible to capture frame buffer using modern VGA chips (in an OS independent way) ?
housemate has quit [Read error: Connection reset by peer]
housemate has joined #osdev
housemate has quit [Read error: Connection reset by peer]
housemate has joined #osdev
mobivme has joined #osdev
housemate has quit [Client Quit]
osdev199 has quit [Ping timeout: 276 seconds]
<Mutabah>
sskras: Could you explain more about what you're trying to do?
<Mutabah>
Do you just want to see what is being displayed (i.e. read from the framebuffer)?
<Mutabah>
And by os-independent, do you mean without an OS running? Or something that works when any OS is running
mobivme has quit [Remote host closed the connection]
<sskras>
(1) yes, I want to grab the picture on a regular basis. Several times per second. And then store it somewhere. Lost frames or low framerate is fine.
<sortie>
Heyyo Mutabah
<sskras>
(2) both ways. Imagine running that code from an OptionROM.
craigo has joined #osdev
<Mutabah>
sortie: o/
<sortie>
Mutabah: What's your take on gccrs?
<sortie>
Been looking at the whole rust bootstrap problem
<Mutabah>
sortie: It's interesting watching their progress
<sortie>
How's their progress compared to mrustc? I'm getting the impression they can't bootstrap any versions of rust?
<Mutabah>
There was a suggestion before it started for mrustc to be adapted in, but it'd require a lot of refactoring to get rid of RAII and exception use
<Mutabah>
They can't build libcore yet - but they're going the more formal/correct route.
<Mutabah>
While I just YOLO'd it
<sortie>
Haha I appreciate that
<sortie>
Personally I have the opinion that any serious systems language should have a quick and dirty implementation in another established language everyone has that can bootstrap the real implementation
<Mutabah>
sskras: To do that would require hardware-specific code, i.e. you could maybe make it work on just a given nvidia card series with one piece of code
<Mutabah>
sskras: Modern cards are very different to the old VGA "standard"
<sortie>
Really impressive and really appreciate all this work :)
<sortie>
Since rust is so heavy and the requirement that version X is needed to build X+1 and the quick release cycle, I basically would have to do a two phase build where I first compile mrustc, and then bootstrap the highest supported rustc
<sortie>
Shipping a two year old version is probably impressive and useful enough :)
<Mutabah>
That's what ?guix does
<sortie>
Thanks for all your answers :)
<sortie>
This definitely shapes my plan for what I'll do when I port rust, maybe for 1.2
<sortie>
Mutabah: I got Let's Encrypt working natively last night (via acme-client) and got a real certificate I could put in production :O I overhauled my sortix.org website in preparation for the upcoming release
mobivme has joined #osdev
<Mutabah>
ooh, fanceh
<sskras>
> Modern cards are very different to the old VGA "standard"
<sskras>
Mutabah: I was wondering how different they are amongst themselves. Eg. maybe there are some modern, but universal I/O registers and memory maps that allow reading the framebuffer.
jedesa has joined #osdev
<Mutabah>
To my knowledge, there are families of mostly-compatible cards (e.g. nvidia has something like 6 different drivers to cover their different cards)
<Mutabah>
It's unlikely that there's a common subset, so you'd have to write custom code for each card family
<sskras>
Fair. Thanks for the insight!
duderonomy has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<heat_>
freebsd devs commonly do freebsd dev on their macs
<heat_>
but i suspect thru ssh only
<heat_>
Mutabah, sortie: i'm pretty sure rust does not do dynamic linking at all? in general
<heat_>
except against glibc because it's glibc
MiningMarsh has joined #osdev
<jjuran>
I osdev on Macs
<nur>
jjuran, what's your toolset like
<nur>
do you use homebrew
<heat_>
i mean like, whether this is doable at all depends on what you're building and what tools you use
<Mutabah>
heat_: rustc uses dynamic linking for the codegen backends, and maybe also for proc_macros?
<heat_>
dlopen?
<Mutabah>
yeah
<Mutabah>
that's sortie's problem now :)
* Mutabah
vanishes into sleep
<heat_>
huh that's funny. that's really problematic if they try to static link shit
<sortie>
There's degrees of dlopen
<sortie>
Like whether it's truly needed to dynamically load arbitrary stuff later on
<sortie>
Or on the other end of the scale, it's a static think linking to a static thing, once
<sortie>
For a number of ports, I was able to basically static link all the stuff together, and then replace dlopen with glue that just gets a known symbol from each module
<jjuran>
... but I try to work with whatever dev tools normally shipped with the host OS
<jjuran>
The OSes I dev are MacRelix and Advanced Mac Substitute. They're both guest-only — neither runs on the metal.
<heat_>
sortie, i will note you'll need to manually patch all those intermediate rust versions (compiler + versioned crates in separate repos)
<heat_>
and the rust build system is one of a kind
<sortie>
Yeah I'm not going to port N rust versions
<sortie>
I'm going to have O(1) build phases, so mrustc + the highest rust it supports.
<heat_>
are you just doing the bootstrap in linux then?
<heat_>
that might be the more cromulent option
xenos1984 has quit [Read error: Connection reset by peer]
<sortie>
Honestly I will need to bootstrap it on both Linux and Sortix
<heat_>
thats a cute idea but im not sure if it works
<sortie>
Since who knows if the source linux has the right rust toolchain
<heat_>
even debian ships really recent rustc's because it needs to
<sortie>
This is not unusual btw. For a bunch of my ports, I actually build the exact same version locally, and then use it to build the port. It's needed for some ports that don't cross well.
<sortie>
Are all newer rust versions able to build somewhat older rust versions?
<nur>
jjuran, what _does_ ship with OS? Do you install the mac dev tools, what's it called, xcode?
<jjuran>
nur: Most versions of OS X / macOS have a Command Line Tools package that it will offer to install if you try to run one of the missing commands. I expect that or Xcode to be present.
<heat_>
sortie, maybe? hopefully?
<sortie>
But no way I'm building N rust versions. Especially since it's that heavy. Is it really a serious stable language if the compiler can't be written to a language that's a couple years old, so even compiling it is easy.
<heat_>
you'll love the build speed btw
<nur>
jjuran, like git or something
<heat_>
it takes like an hour on 8 threas here
<jjuran>
nur: That's one of them.
<sortie>
heat_: Honestly I give it 80% probability that building rust on Sortix turns out to be so massive in terms of CPU requirements, RAM requirements, and disk requirements, that I just scrap it and say this thing is its whole own operating system and just much too heavy (big shame)
<sortie>
But I truly don't know, just based on what I'm hearing
<sortie>
It is worth noting I know nothing about rust
<bslsk05>
forums.gentoo.org: Gentoo Forums :: View topic - Why does rust require so much disk space???[SOLVED]
<zid>
I should check what it's up to now
<jjuran>
"sortie: so massive in terms of CPU requirements, RAM requirements, and disk requirements" <— That sure is surprising, given Rust's origins as a Mozilla project
<sortie>
jjuran: Note I do not have any information. I am 100% guesswork based on a what people are saying.,
<sortie>
rust may require a llvm port
sidcha has joined #osdev
xenos1984 has joined #osdev
hwpplayer1 has quit [Read error: Connection reset by peer]
<kof673>
> static link all the stuff together, and then replace dlopen # i don't recall the name, but there was an ancient probably gnu project that had a fallback like that, so it would support the same interface whether the platform supported dynamic linking at run-time or not :D
muffin has joined #osdev
muffin has quit [Client Quit]
muffin has joined #osdev
jjuran has quit [Quit: Killing Colloquy first, before it kills me…]
basil has quit [Quit: .]
jjuran has joined #osdev
<heat_>
sortie, they support cranelift but yeah for all intents and purposes it's llvm you want
<sortie>
How does cranelift compare?
<sortie>
Asking because llvm is definitely a whole undertaking in its own right
<heat_>
llvm is not hard to port
<sortie>
Mostly in size, I suppose
<heat_>
it's a big build but that's it, it's 99.9% portable C++
<sortie>
Yeah
<sortie>
It's like I said earlier, pure compilers are easy ports, they just need input output and that's it. Runtimes are a whole other story
<heat_>
omg sortie you're going to die as soon as i say this
<sortie>
plz no death
<heat_>
>Cranelift itself is written in Rust.
<sortie>
Yeah I knew that
<sortie>
That's ok as long as mrustc can handle it
<heat_>
>edition = "2021"
<heat_>
it might?
<heat_>
sortie, note that if you want the llvm sanitizers it's a way harder port. like exponentially harder
<sortie>
Yeah I imagine
<heat_>
because it requires you to actually patch the sanitizer runtime with all your own functions and some internals stuff and yeah... it's kind of a mess
<heat_>
like for every libc symbol you want to "intercept" (sanitize) you have to explicitly opt-in in some form
<heat_>
but uhhh the rest is pretty nice, patching clang with your own target is literally just writing a SortixToolchain class that derives from Toolchain, in pure C++, no spec file awfulness required
Dead_Bush_Sanpai has quit [Quit: Dead_Bush_Sanpai]
edr has joined #osdev
mobivme has quit [Remote host closed the connection]
basil has joined #osdev
hwpplayer1 has joined #osdev
fedaykin has quit [Quit: Lost terminal]
fedaykin has joined #osdev
the_oz has quit [Remote host closed the connection]
the_oz has joined #osdev
mobivme has joined #osdev
netbsduser has joined #osdev
muffin has quit [Quit: leaving]
hwpplayer1 has quit [Quit: I'll be back later]
heat_ has quit [Ping timeout: 260 seconds]
heat has joined #osdev
mobivme has quit [Remote host closed the connection]
randm has quit [Remote host closed the connection]
randm has joined #osdev
netbsduser has quit [Ping timeout: 246 seconds]
guideX has quit [Read error: Connection reset by peer]
netbsduser has joined #osdev
chiselfuse has quit [Remote host closed the connection]
chiselfuse has joined #osdev
GeDaMo has quit [Quit: 0wt 0f v0w3ls.]
duderonomy has joined #osdev
muffin has joined #osdev
netbsduser has quit [Ping timeout: 252 seconds]
Arthuria has joined #osdev
guideX has joined #osdev
Lucretia has quit [Remote host closed the connection]
Turn_Left has quit [Read error: Connection reset by peer]