147

By now it is probably no longer news to many: GNOME Shell moved from GJS’ own custom imports system to standard JavaScript modules (ESM).

Extensions that target older GNOME versions will not work in GNOME 45. Likewise, extensions that are adapted to work with GNOME 45 will not work in older versions.

You can still support more than one GNOME version, but you will have to upload different versions to extensions.gnome.org for pre- and post-45 support.

Please file bugs with your favorite extensions or have a friendly conversation with your extension writers so that we can help minimize the impact of this change. Ideally, you could help with the port and provide a pull or merge request to help maintainers.

you are viewing a single comment's thread
view the rest of the comments
[-] dingdongitsabear@lemmy.ml 8 points 1 year ago

I have a question: wtf is javascript doing in a modern desktop?

[-] bamboo@lemm.ee 18 points 1 year ago

Yeah! They should have invented their own obscure language for no reason rather than use probably the single most well known programming language on earth!

[-] NatoBoram@lemm.ee -2 points 1 year ago
[-] Waryle@jlai.lu 1 points 1 year ago

Gnome Shell has been first released in 2011.

[-] Ddhuud@lemmy.world 9 points 1 year ago

The same it does everywhere else. Capitalizing on the sheer number of web devs, and the fact that we get things done without being petty about things we don't like.

[-] d3Xt3r@lemmy.nz 8 points 1 year ago* (last edited 1 year ago)

Um, you're like more than a decade too late to ask this question. Javascript is pretty much everywhere now, whether you like it or not.

For the record, I dislike it as well - not the language itself mind you, but the fact that they're using it to make bloated desktop apps and desktop UX. Long gone are the days when devs cared about performance, sometimes going as far as writing code in ASM to get the most out of paltry hardware.

Nowadays, even a $25 computer like the Raspberry Pi has enough computing resources to run bloated JS apps, so no one really cares any more, except for old fogies like us who grew up using entire operating systems that fit on a single floppy disk.

[-] Holzkohlen@feddit.de 3 points 1 year ago

I like to tell people Chris Sawyer wrote Rollercoaster Tycoon 1 and 2 by himself entirely in ASM. Still amazing games in 2023

[-] d3Xt3r@lemmy.nz 1 points 1 year ago* (last edited 1 year ago)

Equally (or more?) impressive is the procedurally generated 3D FPS .kkrieger, which weighed a paltry 96KB. 96KB in 2004 was quite impressive, considering that Doom, released a decade prior, was 2.39 MB, and even the original Wolfenstein 3D, released in '92, was 1MB.

[-] AProfessional@lemmy.world 2 points 1 year ago* (last edited 1 year ago)

JavaScript itself is not particularly bloated. It is smaller than Python and fast as luajit. Probably the best scripting choice.

If you want to write a modern shell in assembly have fun.

[-] d3Xt3r@lemmy.nz 2 points 1 year ago

I never claimed that Javascript itself was bloated - it's about using the right tool for the right job. The bloat comes from using awful frameworks like Electron to create fake "native" apps, and then fooling users into thinking they're getting a native app, wasting tons CPU resources and sysadmin time trying to fix these bloody Electron apps into shape (speaking as a DevOps guy).

Also, there's a world of options to chose from for shell programming that strike a better balance between performance and practicality, in the spectrum between ASM and JS. Oh, and writing a modern shell in ASM is most definitely fun, you should give it a try sometime. ASM shells - actually, entire operating exists already, if you aren't aware of it. You really should check out MenuetOS or KolibriOS sometime. Sure, it's nothing more than a hobby project, but it's quite fun to take it for a spin, and experience a preview of how fast and effecient operating systems could be.

[-] LeFantome@programming.dev 1 points 1 year ago

You could still get a basic Linux system on a floppy if you really wanted to.

[-] d3Xt3r@lemmy.nz 1 points 1 year ago

Yeah, but not a full-fledged GUI OS with all your basic GUI tools, including a GUI web browser. QNX had a floppy version back that that fit everything - even a bunch of games - on a single 1.44MB floppy.

In saying that, there are modern GUI OSes which you can fit on a floppy, such as MenuetOS and KolibriOS. And because they're coded fully in assembly, it can actually fit and do a lot more that what QNX-floppy could do back then, which is very impressive for modern code.

[-] pbsds@lemmy.ml -2 points 1 year ago

The only real alternative to an embedded scripting language is lua, and too few prefer it over js. Lots of internals in gnome-shell is also written in js, allowing the scripting language to hook straight into the api and data structures without a plugin interface.

In a distant future everything is we assembly, with typed stable interfaces for plugins. But the might happen in gnome 8

[-] AProfessional@lemmy.world 3 points 1 year ago

The day it has a stable API is the day everyone’s favorite extension dies. The powerful part of it is that they are monkey patched in.

this post was submitted on 03 Sep 2023
147 points (98.0% liked)

Linux

48317 readers
685 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