this post was submitted on 22 Feb 2024
71 points (81.4% liked)

Linux

47356 readers
1372 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

I really enjoy Linux but I find myself having to keep Windows partitions around for software that specifically requires Windows.

Proton makes everything easier by automatically running game files through a translation layer, and it "just works" quite well most of the time.

Also VanillaOS can apparently auto-spin a container when you try to open a .deb or AUR package (this is my rudimentary understanding).

Setting up WINE/Bottles, etc. is above my pay grade.

Is it not possible to create an OS that just does the same thing as Steam but for the entire OS?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 10 points 7 months ago (5 children)

Sure, when linux loads are process it follows a standard procedure to see how to run the file. If the file has ELF markers it runs the process via the ELF loader. If the file has #! as the first then it uses a different process to run that script. (I doubt a.out executable format is supported anymore, but that at least used to be an option). There is no reason you cannot hack this process to detect windows executable and then use wine to load/run the application. I'm not sure why nobody has done this, but the basic things have been supported in linux for decades.

[–] [email protected] 16 points 7 months ago

You don't need to hack anything, you can use Binfmt_misc to tell the kernel how to load windows binaries

[–] [email protected] 5 points 7 months ago (1 children)

I doubt a.out executable format is supported anymore, but that at least used to be an option

is that why when i compile c programs the default name is a.out?

[–] [email protected] 4 points 7 months ago

Sorta, the file might not be in the a.out format anymore but the name has stuck around.

[–] [email protected] 3 points 7 months ago* (last edited 7 months ago) (1 children)

No shit, DOS box works well enough on Linux it was ported to Windows for older programs, just do the same with power shell.

[–] [email protected] 2 points 7 months ago

You can use the magic bytes to detect it. Pretty sure windows executables have MZ as their magic bytes

https://en.m.wikipedia.org/wiki/List_of_file_signatures

[–] [email protected] 1 points 6 months ago (1 children)

Are you un-ironically suggesting that this person should write a kernel plugin to support pe formated binaries? Especially considering that wine-binfmt is a thing?

[–] [email protected] 1 points 6 months ago

i last looked into this about 20 years ago. I concluded I could make it work but I don't use wine enough to bother.