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.

  • d3Xt3r@lemmy.nzM
    link
    fedilink
    arrow-up
    8
    ·
    edit-2
    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
      link
      fedilink
      arrow-up
      4
      arrow-down
      1
      ·
      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.nzM
        link
        fedilink
        arrow-up
        2
        arrow-down
        1
        ·
        edit-2
        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
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      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.nzM
        link
        fedilink
        arrow-up
        2
        ·
        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.

      • d3Xt3r@lemmy.nzM
        link
        fedilink
        arrow-up
        1
        ·
        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.