Search logs:

channel logs for 2004 - 2010 are archived at ·· 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

Thursday, 5 January 2023

00:00:00 <epony> Android will be less trashy when it becomes fully open and a real OS
00:14:00 <ghostbuster> are there any channels on libera where asking questions about chromebook / chromeos is on topic
00:19:00 <epony> maybe, I'd check the community support resources on the official home pages of those
00:20:00 <epony> in the meantime, we can replace these with a free and open system like that but with better design and implementation
01:37:00 <kaichiuchi> hi
05:00:00 <zid> Finally googled my chrome bug to see if anyone had a fix
05:00:00 <zid> it's just been outstanding since 2019
07:31:00 <mats2> is there a pragmatic reason why at&t syntax is popular
07:31:00 <mats2> or at least, beloved by its adherents in e.g. foss, when intel syntax is important because of the intel manual
08:43:00 <epony> The Latin Roman Catholic X masse II in old style for the funeral of Pope Emeritus Benedictus XVI proceeding at the moment on a television near you..
09:07:00 <Mutabah> mats2: becuase GNU as uses it, due to historical reasons
09:07:00 <Mutabah> and people like using a single set of tooling, so stick with gas's default
09:56:00 <HeTo> I imagine it’s a lot simpler to write generators for than Intel syntax if you’re writing something that generates textual assembly
09:56:00 <HeTo> you don’t have to worry about someone naming a global variable rax
09:59:00 <moon-child> it is exactly as easy to write generators for if you're writing something that generates textual assembly
10:04:00 <HeTo> moon-child: is it? well let's talk about 32-bit x86 since I'm more familiar with the addressing modes that offers. let's say you have a global variable named eax and you want to add its value to the value in register ebx. I'm (ironically for this) more familiar with Intel syntax, so I don't know if this is correct, but I think in AT&T syntax this would be addl (eax), %ebx. how do you write it in Intel syntax?
10:04:00 <HeTo> add ebx, [eax] would add the value at whatever address register eax happens to point to
10:05:00 <moon-child> intel is more fragmented. You'd need some kind of escape
10:06:00 <moon-child> I my assembler, I use backticks. This also allows encoding symbol names which are empty or have punctuation, spaces, etc., which you also can't encode with at&t (without an escape)
10:06:00 <\Test_User> simply don't name a variable eax? :P
10:07:00 <moon-child> 64-bit addressing modes are basically the same. You get rip-relative addressing and lose a couple of segment registers. And there are a couple of edge cases you mostly don't have to worry about (and which might also apply to 32-bit, don't remember)
10:07:00 <HeTo> \Test_User: well, it's a valid identifier for a global variable in C, for example
10:08:00 <\Test_User> sure, don't name it eax in the C parts of your code either
10:09:00 <\Test_User> and if you really want, #define eax <real variable name>
10:09:00 <HeTo> \Test_User: you don't get to make that decision for your users if you are writing a C compiler. it's a valid identifier and so if someone has a variable with that name and your compiler can't compile that code or worse, miscompiles it, your compiler is broken
10:10:00 <\Test_User> ahhh right I see... inline asm with intel syntax... yeah true
10:11:00 <\Test_User> actually no, that shouldn't... even inlune asm is stuck in a string
10:11:00 <moon-child> HeTo: this is an abi problem, not a language problem. You could mangle, for instance. I maintain that the proper solution is to have an escape, though
10:11:00 <\Test_User> compiler shouldn't barf over it
10:12:00 <HeTo> not even inline assembly, just a C compiler that targets Intel syntax assembly language for x86
10:13:00 <\Test_User> you mean generating assembly straight from C? iirc gcc has a switch to output intel syntax, could dump that and see what it makes
10:13:00 <moon-child> iirc it generates garbage
10:14:00 <pog> it generates garbage for specific instructions sometimes
10:14:00 <pog> i can't recall which
10:17:00 <\Test_User> mov eax, DWORD PTR eax@GOTOFF[eax]
10:19:00 <\Test_User> not entirely sure but that seems to be an attempt to move the variable eax to the register eax...
10:19:00 <\Test_User> does have an `eax:` as well as a `.globl eax`, so variable is named properly from the outside
10:24:00 <\Test_User> ...assuming your assembler actually accepts that
10:25:00 <HeTo> I don't think I quite understand that syntax (and maybe it's garbage), but GOTOFF sounds like it might be PIC or PIE?
10:25:00 <\Test_User> ah right yes
10:25:00 <\Test_User> mov eax, DWORD PTR eax
10:26:00 <\Test_User> probably garbage output from gcc at this point
10:29:00 <\Test_User> looks like gcc barfs over its own assembly output trying to assemble it even
13:01:00 <phr3ak> what is the difference between PIC and PIE?
13:22:00 <Mutabah> I think they're interchangable mostly...
13:22:00 <Mutabah> but afaik, PIC is about the code, PIE is about the infrastucture in the executable format that allows PIC to work fully
13:25:00 <phr3ak> far as I remember gcc generates different code with -fPIC and -fPIE
13:42:00 <pog> pog
13:50:00 <sham1> gop
13:50:00 <pog> Gog Output Protocol
13:50:00 <Ermine> pgo
13:51:00 <Ermine> Profile Gogged Optimization
14:00:00 <HeTo> AFAIK PIC is position-independent code that can be used in shared libraries, PIE is a light form of position-independent code that's only usable for the main executable (for ASLR purposes) and doesn't allow including the code in a shared library
14:24:00 <kof123> surely code is data and data is code, and these are "REALLY" just forms of PID </strokes white cat in a villian like manner>
14:39:00 <pog> code is code and data is data. saying otherwise is woke madness
14:40:00 <kaichiuchi> amazing…
14:40:00 <kaichiuchi> my dual monitor stand has failed
14:41:00 <pog> oops
14:42:00 <GeDaMo> Hopefully the monitors were not damaged
14:44:00 <kaichiuchi> they weren’t
14:44:00 <kaichiuchi> but… i woke up to that.
16:21:00 <sbalmos> but code identifies as data. and isn't user-entered data code?
16:23:00 <kof123> all i know is there is a magical salamander lambda on the SICP cover and i will follow whatever it decides
17:02:00 * pog beats redis with a bat
17:02:00 <pog> REMOVE MY CACHE KEYS
17:02:00 <CosmicBitch> oh god i have to work with redis next month
17:03:00 <CosmicBitch> i can still quit before that
17:03:00 <pog> i finally got it running locally because a thing i did didn't work and i did not understand why
17:03:00 <CosmicBitch> im still in my probation period
17:03:00 <pog> i do understand why it didn't work
17:03:00 <CosmicBitch> 2 weeks notice an dim gone
17:03:00 <pog> now i don't understand why it continues to not work lol
17:03:00 <CosmicBitch> F
17:03:00 <pog> baby steps toward a solution
17:07:00 <zid> disregard work, acquire kittens
17:08:00 <pog> mew
17:08:00 <Ermine> pog: may I pet you
17:08:00 <pog> yes
17:09:00 * Ermine pets pog
17:11:00 <pog> prr
17:11:00 <pog> brb
19:17:00 <kaichiuchi> for fun i've been playing with autotootls
19:17:00 <kaichiuchi> autotools
19:17:00 <kaichiuchi> i never want to do that again
19:17:00 <zid> 'fun'
19:38:00 <gog> hi
19:43:00 <kaichiuchi> zid: fun
19:44:00 <kaichiuchi> i can only conclude that people are insane
19:46:00 <gog> yes
19:47:00 <heat> kaichiuchi, where's the fun
19:49:00 <heat> "for fun I've been playing with autotools" has the same spirit as "for fun in 1923 I aided the beer hall putsch"
19:54:00 <wxwisiasdf> Hello kerneldev laissez-faire chalantly succintly portmanteau people :D
19:54:00 <wxwisiasdf> Today is a good 3:54 AM
19:59:00 <gog> hi
19:59:00 <wxwisiasdf> hi gog
20:36:00 <kaichiuchi> i wish things would work for me.
20:36:00 <kaichiuchi> vim doesn't like me pasting stuff even with :set paste
20:38:00 <kaichiuchi> probably not an alacritty issue because I can paste stuff into there just fine
20:43:00 <kaichiuchi> it... might be an alacritty issue
20:43:00 <kaichiuchi> nice
20:49:00 <Ermine> You mean internal clipboard or system clipboard ("+)?
20:50:00 <kaichiuchi>
20:51:00 <Ermine> You forget to enter insert mode
20:51:00 <kaichiuchi> it doesn’t matter
20:51:00 <Ermine> Forgot
20:51:00 <kaichiuchi> i tried that too
20:52:00 <kaichiuchi> as in, yes, i was in insert mode
20:52:00 <Ermine> Does "+p work?
20:52:00 <kaichiuchi> wtf does +p mean
20:52:00 <kaichiuchi> let me see
20:52:00 <kaichiuchi> no
20:53:00 <Ermine> Enter " too
20:53:00 <kaichiuchi> i did
20:54:00 <heat> mjg, fellow gnu nano user found
20:54:00 <heat> \o/
20:54:00 <Ermine> I used to use nano
20:55:00 <kaichiuchi> i only installed nano to demonstrate that vim in particular is acting wacky with alacritty
20:55:00 <kaichiuchi> because xterm works
20:55:00 <kaichiuchi> .
20:56:00 <epony> these are applications of screen addressing libraries
20:57:00 <epony> the screen addressing libraries use the terminal emulator
20:57:00 <Ermine> Konsole works too
20:57:00 <kaichiuchi> the year of the linux desktop where pasting completely shits the bed, something microsoft solved before I was born
20:57:00 <epony> vttest might be used to demonstrate these too (it's a tool from the xterm validation accessories)
20:58:00 <epony> but at what cost is it solved ;-)
20:58:00 <Ermine> kaichiuchi: it works everywhere except alacritty+vim
20:58:00 <kaichiuchi> oh you were able to reproduce it on alacritty?
20:58:00 <Ermine> No
20:58:00 <epony> if you think browsers and cryptolocker worms do not share your clipboard and use it to steal your wallets etc, and if that is not the dirtiest of many dirty tricks..
20:58:00 <Ermine> I use foot
20:59:00 <kaichiuchi> wtf is foot
20:59:00 <kaichiuchi> what kind of terminal is named foot
20:59:00 <kaichiuchi> ah
20:59:00 <kaichiuchi> i see
20:59:00 <Ermine>
20:59:00 <bslsk05> ​ dnkl/foot: A fast, lightweight and minimalistic Wayland terminal emulator - foot -
20:59:00 <Ermine> Not that I'm happy with it
20:59:00 <kaichiuchi> sorry, i'm... a little cranky
20:59:00 <epony> just check out what OLE and RPC is in the Windows land and what grief it has brought to their useds
21:00:00 <Ermine> Why all these terms provide their own color schemes instead of default linux one...
21:00:00 <epony> ranging from single address space / privilege model to "reuse of shared libraries" functions between applications and hijacking shared resources, at all levels
21:01:00 <kaichiuchi> also I'm actually trying to learn how to use vim
21:01:00 <Ermine> Use vimtutor
21:01:00 <kaichiuchi> people who master vim are wizards
21:01:00 <kaichiuchi> ah didn't know about this
21:01:00 <epony> Windows is the continuation of DOS in that regard, not much isolation and privilege until much abuse of that has resulted in decade long suffering of solving it without a solution in place ever in the meantime
21:02:00 <epony> but you have a nice copy paste drag and drop that sometimes crashes your OS too
21:02:00 <epony> you see an application fault, and close it, but then your system misbehaves slightly here and there ;-)
21:03:00 <epony> remember that bed lining..
21:03:00 <epony> nostalgia is good but short memory, not that much
21:03:00 <Ermine> kaichiuchi: I'm not happy with how copy/paste works with terminal on windows tbh.
21:04:00 <kaichiuchi> yeah I will admit for a terminal it's kludgy on windows
21:04:00 <kaichiuchi> *BUT*
21:04:00 <kaichiuchi> it doesn't just outright fail or garble shit up
21:04:00 <epony> until a malware takes that to the next level
21:04:00 <kaichiuchi> currently someone on #vim is astounded and is trying to reproduce this with a freshly built alacritty
21:04:00 <kaichiuchi> so we're about to see if somehow something is fucked on my end or not
21:04:00 <kaichiuchi> i hate everything
21:05:00 <epony> "WIN/DOS" is so fast, until you add on the anti-virual tooling
21:05:00 <epony> can't compensate for the missing isolation and privilege separation model in the system and applications, but it will weigh in on your data processing and.. be disabled for speed reclaimmation
21:06:00 <epony> yay for copy-pasting, you have more than one machine because you have to isolate your work contexts now, how do you copy paste between them, oh right, the networking sucks too
21:07:00 <epony> and gradually WIN/NT started adding it
21:08:00 <epony> but it does not work in the line of solid and reliable isolation and security model, due to legacy and shared libraries artefacts, and same execution level in the context of the user
21:08:00 <epony> that's rougly where Linux desktops are too
21:09:00 <epony> lacking that refined model of cross application privilege / control on the shared bus (message passing objects)
21:10:00 <epony> with slightly less "coherent" application level support for the desktop services but forced requirements and common shared libraries give them that "system (desktop / library space) wide capability improvements"
21:11:00 <epony> Windows is better integration.. for the applications that come from the operating system authoring group ;-) and that has a lot of legacy and weight too
21:12:00 <epony> so huge complexity and no options to choose from, no other desktop, and kernel integration.. what can possibly go wrong.. other than Linux adopting same practices ;-)
21:14:00 <epony> people confortable with the GUI shells do not realise it's the "small" part of the system, rather than the entire system, and only that is exposed with no alternatives, same effects in MacOS
21:15:00 <epony> Google tries to "advance this forward" but is in the files and data formats and "internal transport of data between its own applications in their services" model
21:16:00 <epony> these all are available in Unix-like systems too, only not that uniform until you fall into the desktop overlay areas
21:18:00 <epony> so KDE applications technically can do it between each other, if they are.. following through that functionality, same for Gnome etc, and even between them if they shared message bus and remote procedure calls / object sharing similar services
21:19:00 <epony> it their such services are compatible
21:19:00 <epony> now, how is that going to happen between Linux desktop Windows desktop and Google desktop computers ;-)
21:20:00 <epony> oups, we've reached the different contexts of work / tasks sets per computer again
21:21:00 <epony> so you enter naively the incompatible services networks externalised to your computer though middle depots you call the "cloud" or more appropriately called the "could" if they paid
21:21:00 <epony> through intermediate services is your functionality achieved "somewhat" at a great cost and risk and dependence at the same time
21:22:00 <epony> that's the greatest achievement of malware and cryptolockers, pushing people into the cloud, now think about that next time your ponder who was releaseing the malware and defects in software all these 40 something years
21:24:00 <epony> some convenience at a great centralisation of data and computing server farms, which routinely do other work, except yours and against others small peers like you, to push them to participate
21:25:00 <epony> and you thougth batch processing was a thing of the past, submitting your deck of cards to the central compute department
21:25:00 <epony> ;-)
21:26:00 <kaichiuchi> oh my god
21:26:00 <kaichiuchi> I think the vim package is busted on arch
21:27:00 <kaichiuchi> maybe?
21:27:00 <epony> for quick life saver edits nvi2 is a text variant vi-like with wide character support
21:32:00 <kaichiuchi> installing gvim gave me significantly more progress
21:33:00 <epony> supposedly that leaves the terminal emulator and screen addressing library artefacts and replaces them with the desktop graphical toolkit widgets
21:35:00 <epony> the object linking and embedding and remote procedure calls and message and object passing might be missing and file and directory (and network mount) monitoring parts will come at a slight overhead cost ;-)
21:36:00 <epony> how about remote file editing..?
21:36:00 <epony> does it go over SSH and other transports to edit files on other machines yet..
21:52:00 <heat> i don't see why the vim package would be busted on arch
21:52:00 <ddevault> good code
21:56:00 <kaichiuchi> heat: here's what I know: the vim package is compiled without X or clipboard according to vim --version
21:56:00 <kaichiuchi> this still shouldn't cause a problem
21:56:00 <kaichiuchi> all I know is that I swapped it out for the gvim package and now only ctrl+shift+v is busted
21:57:00 <heat>
21:57:00 <bslsk05> ​ svntogit-packages/PKGBUILD at packages/vim · archlinux/svntogit-packages · GitHub
21:58:00 <kaichiuchi> yes
22:00:00 <kaichiuchi> look man all I know is that it's busted
22:00:00 <kaichiuchi> and no one in true unix fashion knows why.
22:00:00 <kaichiuchi> and all I did, the *only* thing I did
22:01:00 <kaichiuchi> was pacman -S vim
22:02:00 <heat> i would be willing to bet that specific terminal is busted
22:02:00 <kaichiuchi> at least I didn't get the UNIX-HATERS classic "it's your fault" this time
22:03:00 <heat> ITS YOUR FAULT
22:03:00 <kaichiuchi> well don't worry, I'm currently in #alacritty bitching
22:03:00 <kaichiuchi> :(
22:05:00 <epony> XTerm
22:05:00 <epony> and vttest
22:05:00 <epony> people don't just fix their partial terminal emulator implementation like that ;-)
22:05:00 <epony> it has to be breaking THEIR use case
22:06:00 <zid> ddevault: I like 58-59
22:07:00 <zid> I'd say that probably needs an enum
22:07:00 <zid> or an 0b100
22:10:00 <ddevault> it needs to be masked at least
22:10:00 <ddevault> and then probably an enum
22:39:00 <zid> if(age == 7) { // Make sure age is 128 }
22:39:00 <zid> I get it, but I hate it
22:39:00 <zid> I'd maybe even do useless constnat math in there to make it more understandable..
22:40:00 <zid> if 1<<age == 128
22:40:00 <zid> let the compiler turn it back into age == 7
22:42:00 <kaichiuchi> Ermine:
22:42:00 <bslsk05> ​ Pasting no longer works correctly on foot terminal · Issue #11766 · vim/vim · GitHub
22:43:00 <heat> what kind of terminal is called foot
22:43:00 <heat> cmon
22:43:00 <heat> foot?
22:43:00 <kaichiuchi> really?
22:44:00 <zid> The only reason I'd use a terminal called foot
22:44:00 <kaichiuchi> you're asking a unix person why they'd name their terminal foot?
22:44:00 <zid> is if when I opened two of them it renamed it to feet
22:44:00 <heat> absolutely
22:44:00 <heat> are unix people foot weirdos?
22:44:00 <kaichiuchi> the answer is fairly obvious
22:44:00 <zid> I don't get it either
22:44:00 <kaichiuchi> probably a foot fetishist
22:44:00 <zid> it's 45% as good as a different terminal emulator called meter?
22:45:00 <zid> guess it's staying an obscure secret
22:46:00 <Ermine> kaichiuchi: happens
22:46:00 <heat> i'll call mine appendix
22:46:00 <heat> because it's useless and full of shit
22:46:00 <Ermine> Lol
22:47:00 <kaichiuchi> well
22:47:00 <kaichiuchi> at one point, the appendix served a purpose
22:47:00 <kaichiuchi> i found that out when I was 12 and googled why we get wisdom teeth
22:47:00 <kaichiuchi> if they're just destined to be removed
22:47:00 <kaichiuchi> .
22:51:00 <zid> cool story
22:52:00 <kaichiuchi> sounds like you wanted to know why we have one
22:52:00 <heat> kaichiuchi do you want more feet gifs
22:52:00 <kaichiuchi> please stop this madness
22:52:00 <heat> or more mum gifs
22:52:00 <kaichiuchi> there are some current theories that the appendix serves an immune system function nowadays
22:53:00 <zid> heat: Did you find out the secret?
22:53:00 <zid> I'm kind of interested now?
22:54:00 <heat> what secret
22:54:00 <zid> foot is supposed to be some unix pun?
22:54:00 <heat> i dont fucking know
22:54:00 <heat> here:
22:54:00 <\Test_User> maybe foo's overly obscure terminal :P
22:54:00 <bslsk05> ​ The Secret (Byrne book) - Wikipedia
22:54:00 <zid> "no" would have done babe
22:55:00 <wxwisiasdf> So I am making an OS in java but the JVM i wrote is in C
22:55:00 <wxwisiasdf> this feels like cheating
22:55:00 <wxwisiasdf> It's not fullfilling - i must find a way to make a pure java kernel
22:55:00 <\Test_User> make a CPU that executes java bytecode or you won't be able to do it in pure java?
22:55:00 <heat> wxwisiasdf, stop
22:56:00 <heat> also JAZELLE
22:56:00 <wxwisiasdf> \Test_User: or use GCC java frontend for doing native things, however i would have to rewrite it in c
22:56:00 <zid> \Test_User: why make when you can buy?
22:56:00 <\Test_User> they already exist? buy then yes
22:56:00 <\Test_User> well, ig I shouldn't be too surprised about them existing
22:56:00 <wxwisiasdf> heat: this java os is for sh4, not arm
22:56:00 * CompanionCube pokes Singularity with a stick
22:57:00 <CompanionCube> dunno how 'pure' that was
22:57:00 <heat> wxwisiasdf, stop picking weird thigns
22:57:00 <wxwisiasdf> heat: why
22:57:00 <heat> because it's weird
22:57:00 <kaichiuchi> you're weird
22:57:00 <CompanionCube> anyway, the obvious trick is to write Java that's expressible as C or sh4 assembly :p
22:58:00 <wxwisiasdf> am I a weird gal? :(
22:59:00 <ZombieChicken> sh4?
22:59:00 <wxwisiasdf> sh4 is dreamcast cpu
22:59:00 <wxwisiasdf> but i hate dreamcast
22:59:00 <wxwisiasdf> i love virtio tho
23:00:00 <ZombieChicken> custom made CPU?
23:00:00 <wxwisiasdf> no :>
23:00:00 <wxwisiasdf> I don't have budget for that
23:01:00 <ZombieChicken> ok
23:02:00 <CompanionCube> (optionally also rewrite your JVM in this java-expressible-as-C, this is how the Squeak Smalltalk VM works)
23:03:00 <wxwisiasdf> that might work...
23:03:00 <wxwisiasdf> but the problem is finding a java toolchain that would generate java bytecode to assembly.... oh wait
23:03:00 <wxwisiasdf> maybe i could write my own, but i want to know if there are existing alternative before diving deep onto it
23:05:00 <CompanionCube> does gcj do sh4?
23:05:00 <wxwisiasdf> No :D
23:05:00 <wxwisiasdf> well yes, but GCJ is broken beyond repair on anywhere non-x86_64
23:06:00 <CompanionCube> ah
23:06:00 <wxwisiasdf> I might be able to acquire a debian VM to compile my sh4 inside it since there might be a gcj for sh4 on debain repos, however gcj require specific glibc and will break when it's introduced to a modern system
23:11:00 <gog> kaichiuchi: iirc it's a reservoir for the gut flora
23:11:00 <kaichiuchi> something like that, yes
23:12:00 <gog> and that there's studies about bowel disease and appendectomies
23:13:00 <gog> with a positive correlation between them
23:17:00 <mats2> gags