Zed is a modern open-source code editor, built from the ground up in Rust with a GPU-accelerated renderer.

  • bionicjoey@lemmy.ca
    link
    fedilink
    arrow-up
    192
    arrow-down
    3
    ·
    7 days ago

    Installer is piping curl into shell

    I thought we were past this as a society 😔

    • WFH@lemm.ee
      link
      fedilink
      English
      arrow-up
      17
      arrow-down
      1
      ·
      6 days ago

      A curl piped into a shell or some unofficial packages from various distros.

      At this point I don’t get why these projects are not Flatpak-first.

      • ParetoOptimalDev@lemmy.today
        link
        fedilink
        arrow-up
        6
        arrow-down
        10
        ·
        6 days ago

        Flatpak is worse for debugging, development, and reproducibility.

        Its good for user friendly sandboxing, portability, and convenience.

    • kazaika@lemmy.world
      link
      fedilink
      arrow-up
      27
      ·
      7 days ago

      I mean its already in the nix repos as well as homebrew which means its essentially taken care of

        • pukeko@lemm.ee
          link
          fedilink
          English
          arrow-up
          5
          ·
          7 days ago

          It appears to be a couple of versions behind … and have some issues with dynamically linked libraries that hinder LSPs. Neither of these is Zed’s fault. I’m sure the packaged version will be up to date momentarily (given the interest in Zed, sooner rather than later). Not sure how easy the LSP thing will be to fix, though there are some workarounds in the github issue.

          • priapus@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            5
            ·
            7 days ago

            yeah the editor is being updated way too fast for nix to keep up. I’m sure it’ll be easier once it has its stable release. I see the have a nix flake in the repo, it would be great if they added a package to the outputs instead of just a devshell, nix users could easily build it from master or whichever tag they want.

            There are solutions in this issue to the LSP issue. The editor would need to be built in an fhs-env, or they will need to find a way to make it uses binaries installed with nix instead of the ones it downloads itself. VSCode had a similar issue, so there is a version of the package that let’s you install extensions through nix, and another that uses an fhs-env that allows extensions to work out of the box.

      • skilltheamps@feddit.org
        link
        fedilink
        arrow-up
        11
        ·
        6 days ago

        Security wise it doesn’t matter, you run the code they wrote in any case. So either trust them or don’t. Where it matters is making a mess on your computer and possibly leaving cruft behind when uninstalling. But packages are in the works, Arch even has it since before linux support was announced officially.

        • eveninghere@beehaw.org
          link
          fedilink
          arrow-up
          1
          ·
          5 days ago

          AFAIK it’s the copy cost for the memory. GPU makes sense only when the hardware allows this copy to go away. Generally, desktop PCs don’t have such specialized hardware.

          • Mia@lemmy.blahaj.zone
            link
            fedilink
            arrow-up
            2
            ·
            edit-2
            5 days ago

            I don’t see why you’d have to copy all that much. Depending on the rendering architecture, once all the glyphs are there you’d only need to send the relevant text data to be rendered. I don’t see that being much of a problem even when using SDFs. It’s an extremely small amount of data by today’s standards and it can be updated on demand, but even if it couldn’t it would still be extremely fast to send over every frame. If games do it, so can text editors. Real time text rendering on the GPU is a fairly common practice nowadays, unfortunately not in most GUI applications…

            • eveninghere@beehaw.org
              link
              fedilink
              arrow-up
              1
              ·
              5 days ago

              At this point I’m not expert enough to explain more details. You can check font renderers.

              Below is what’s in my mind but it’s just a guess.

              In typical PC architectures you have IO between the storage and the RAM, and then there’s the copying from the RAM to the VRAM, and editors maybe also want copying from the VRAM to RAM for decoration purposes etc.

              • Mia@lemmy.blahaj.zone
                link
                fedilink
                arrow-up
                2
                ·
                edit-2
                5 days ago

                I am familiar with the current PC and GPU architectures.

                IO is a non issue. Even a massive file can be trivially memory mapped and parsed without much hassle, and in the case of a text editor you’d have to deal with IO only when opening or saving said file, not during rendering.

                As for the rendering side, again, the amount of memory you’d have to transfer between RAM and VRAM would be minimal. The issue is latency, not speed, but that can be mitigated though asynchonous transfer operations, so if done properly stutters are unlikely.

                Rendering monospaced fonts (with decorators and control characters) at thousands of frames a second nowadays is computationally trivial, take a look at refterm for an example. I suspect non-monospaced fonts would require more effort, but it’s doable.

                As I said at the beginning, it’s not impossible, just a pain. But so is font rendering in general honestly :/

    • Telorand@reddthat.com
      link
      fedilink
      arrow-up
      7
      arrow-down
      1
      ·
      edit-2
      7 days ago

      That was my first thought as well, but I will say that uBlue distros had a signing issue preventing updates recently, due to an oversight with how they rotated their image signing keys, and the easiest (maybe only?) solution was to pipe a curl command to sh. Even though uBlue is trustworthy, they still recommended inspecting the script, which was only a few lines of code.

      In this case, though, I dunno why they don’t just package it as a flatpak or appimage or put it up on cargo.

      Edit: nvm, they have some package manager options.

    • TunaCowboy@lemmy.world
      link
      fedilink
      arrow-up
      6
      arrow-down
      13
      ·
      7 days ago

      It is worrisome that all the smug elitists are too incompetent to just leave off the pipe and review from stdout, or redirect to a file for further analysis.

      Same people will turn around and full throat the aur screaming ‘btw’ to anyone who dares look in their direction.

      • skilltheamps@feddit.org
        link
        fedilink
        arrow-up
        11
        arrow-down
        1
        ·
        6 days ago

        By that logic you have to review the Zed source code as well. Either you trust Zed devs or you don’t - decide! If you suspect their install script does something fishy, they could do it just as well as part of the editor. If you run their editor you execute their code, if you run the install script you execute their code - it’s the same thing.

        Aur is worse because there usually somebody else writes the PKGBUILD, and then you have to either decide whether to trust that person as well, or be confident enough for vetting their work yourself.

      • krolden@lemmy.ml
        link
        fedilink
        arrow-up
        3
        ·
        edit-2
        6 days ago

        Eh using aur is a bit different since most of# them pull the projects git repo directly anyway. Yeah the project might have vulns but thats on you to inspect before building it as well as the pkgbuild itself

    • SavvyWolf@pawb.social
      link
      fedilink
      English
      arrow-up
      36
      arrow-down
      1
      ·
      6 days ago

      So they’re doing the equivalent of VSCode(ium)'s extensions, but installing them automatically and not giving you the option to use alternatives?

      Blegh.

      • aaro@lemmy.world
        link
        fedilink
        arrow-up
        3
        arrow-down
        1
        ·
        6 days ago

        I think they auto install some binaries like nodejs that are required for baseline functionality, but have a popup window for additional language LSPs

        • hswolf@lemmy.world
          link
          fedilink
          arrow-up
          4
          ·
          6 days ago

          what if I wanted to use deno or bun? I don’t think that should be their decision to install “default” stuff that have alternatives

          I’m all for their improvement tho

          • aaro@lemmy.world
            link
            fedilink
            arrow-up
            7
            ·
            6 days ago

            I don’t see your point? Nodejs is installed in a custom directory and not added to PATH. It is used by Zed for providing npm support for extensions, and other things. I’m not a Zed developer so I don’t know exactly.

            It doesn’t prevent you from using deno or bun in any way.

            • hswolf@lemmy.world
              link
              fedilink
              arrow-up
              1
              ·
              5 days ago

              I see, that’s greatif it is only locally installed and used, messing with PATH could, probably, break stuff like nvm or others

    • PushButton@lemmy.world
      link
      fedilink
      arrow-up
      13
      arrow-down
      9
      ·
      6 days ago

      Quoting the guy:

      “that rewriting those in Rust will take an eternity, so not sure what is actionable here, hence closing.”

      That’s Rust shining from all its glories here gentlemen…

      The best language, if there is nothing changing.

      That’s a thing to make a web server or a library that displays Fibonacci, that’s something else when there are humans with changing scopes…

      • boredsquirrel@slrpnk.net
        link
        fedilink
        arrow-up
        18
        arrow-down
        2
        ·
        6 days ago

        Its not Rusts fault, the devs are simply lazy and making insecure products, as they dont want to rewrite everything.

        • PushButton@lemmy.world
          link
          fedilink
          arrow-up
          10
          arrow-down
          2
          ·
          6 days ago

          That’s what I am saying.

          To quote you: “they don’t want to rewrite everything” …

          Writing Rust often implies major refactoring and it takes so much time to write that your requests go: “pewf” closed due to the amount of effort it takes.

          Anyway, been there, done that! Zig is probably the real future; it’s a joy to write, it compiles fast, clear to read, and safe.

          It has shared libraries and a proper integration with existing C/CPP code base.

          You should try it, that’s an amazing language with a real potential to replace the legacy.

            • PushButton@lemmy.world
              link
              fedilink
              arrow-up
              1
              ·
              5 days ago

              Comptime replaces macros/reflection.

              It’s basically Zig code that runs at compile time in your code…

              No other “weird” language to learn; it’s zig all the way. What you would have written in macro is written in zig comptime.

              Even the build system is zig…

              Same for generics, it’s comptime…

        • PushButton@lemmy.world
          link
          fedilink
          arrow-up
          3
          arrow-down
          4
          ·
          6 days ago

          There are no patch, the issue has been closed as in rejected.

          There are a few tasks that are open that are loosely related, but let’s not mix things up.

          Moreover, I will take the words of the maintainers over a random potato on a forum.

          No offense…

            • PushButton@lemmy.world
              link
              fedilink
              arrow-up
              2
              arrow-down
              2
              ·
              5 days ago

              As I mentioned, a couple of tasks loosely related. The patch you are mentioning isn’t complete nor address the real problem.

              It is an ugly hack at best.

              Refrain from your urge to defend rust at all costs. You are sliding more and more toward the specifics of a project than the fact I stated about rust in general.

              If you still not get my initial point I’ve made, read this.

              That’s a long read explaining what I meant. My point was about Rust, not Zed or the developers of Zed in particular.

              And for the Zed editor, I wish them the best luck, it seems like a great project that people enjoy.

              Please feel free to comment and share your thoughts on the article above, my dear favorite nutritious veggie.