this post was submitted on 08 Feb 2024
80 points (94.4% liked)

Linux

48624 readers
1618 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
80
submitted 10 months ago* (last edited 10 months ago) by DannyMac to c/[email protected]
top 36 comments
sorted by: hot top controversial new old
[–] [email protected] 32 points 10 months ago (2 children)

Vscode remote ssh is clever, to be clear, and in many cases is ideal. But it seems to me that they really need to ship an out-of-the-box extension that does edit over sftp with local caching as a fallback option. Notepad++ does this and it's great.

I know that there are a bunch of 3rd party extensions that seem to do this but most seem a little bit janky as you dig in to it. This needs to be an official Microsoft extension.

In general, I don't want my IDE running or depositing anything on my servers that I haven't explicitly asked for, especially if a main goal is to simply edit config files easily via a familiar editor application. Basically a 'leave no trace' philosophy (for the sake of predictability, consistency and control, not for any nefarious reasons).

(that said, remote ssh with vscode server is fantastic - but only when I actually want it).

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

Have to second this, I love Vscode over ssh but don't really want to use it on a machine I don't own personally because of it installing itsself everywhere you go. Fortunately sshfs and neovim exist

[–] [email protected] 3 points 10 months ago

Thank you - next on list was trying to find an appropriate package in neovim to do this. (I was never in doubt that something existed - I mean, even midnight commander has this built in!)

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

Yeah, when I switched to vscode and realized what was going on, I got a bit uncomfortable.

… but I sided with convenience.

[–] [email protected] 19 points 10 months ago (4 children)

Not being able to see the source code of extensions, and having them loaded and executing remotely really ought to be a non-starter, but for some reason we find ourselves ok with this?

Maybe there are checks and balances? I really don't know - but I certainly don't know what they are.

I'm actively exploring alternative cross-platform editors for this and other vscode usability reasons.

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

I'm using VSCodium. It's just like VSCode just without the telemetry.

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

It's a good idea. But fundamentally, it suffers from the same (other) issues as vscode itself.

[–] youngGoku 3 points 10 months ago (1 children)

Oh dang I thought I was safe using codium. What other problems should I be aware of?

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

AFAIK, the only difference between codium and vscode is that telemetry is stripped out. I haven't used it, but I imagine it's great. It works the same as vscode in other respects. (unless someone corrects me here).

The main issues I have with the vscode/codium approach is that remote ssh works by installing and executing a server at the remote location (including installation of extensions).

To me, this is convenient but risky - it necessitates prerequisites on the remote server (which caused issues for older server installs), it leaves stuff behind on the remote (if you just want to edit a config why would you want to litter the remote server?). Fundamentally I'm not sure why this isn't a very, very serious potential vector for malware - others can correct me. Do you want to inadvertently put 3rd party nice-to-have extensions written by just anyone running remotely?

They could mitigate this by having an official extension than has an option to do simple sftp access with local caching (as is done with many other editors like UEdit, npp, mc, vim, etc...). Most 3rd party extensions for this that I've seen seem very janky. It begs for something official.

My other issues with vscode are subjective - it lacks virtual space editing, and, frankly the whole thing is a bit slow for me. Again, this is subjective.

[–] youngGoku 2 points 10 months ago* (last edited 10 months ago) (1 children)

There's also proprietary packages that don't work with vscodium, like Microsoft's pylint or something I forget, but I had to go to great lengths to get features like refactoring and auto formatting in my python files after switching to vscodium.

Oh I don't use remote server within my ide. If I wanna push code or files I just use a git repo.

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

This is good to know. As I say, I haven't tried codium, but I'm not surprised there are glitches.

I hear you wrt avoiding remote server, but for me, it begs the question of whether I want to learn more than one tool/editor? If I use vscode, I'd have to pull the files up and down, but if I use an alternative IDE, I can do it all in one step. If it's a good IDE then why do I want vscode in the first place?

A official sftp caching package might be enough to keep me in vscode (though I'm still not sure what I want to do).

I just find it bewildering that the IDE would so nonchalantly install sh!t on remote servers when you just want to edit a config. Any other tool where something is to get installed remotely makes it abundantly clear what's happening and it's a very conscious decision to do an install.

Not sure why people aren't up in arms about this approach. Unless I'm missing something (and I may well be).

[–] youngGoku 1 points 10 months ago

It's not glitches, it's M$ intentionally making their python language server only work with proprietary vscode

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

@indigomirage Neovim ? (there are pre-configured #neovim based IDEs with every fancy thing such as Nvim-Chad)

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

For sure - but it's a matter of getting accustomed to vi. I also prefer to really understand what each add on does. Not ruling out pre-packaged, but am working through assembling my own config first.

And then there's learning vi (I can use it, it's just not yet second nature).

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

@indigomirage Always better to do so, I just included a mention of the pre-built IDEs because it can be a hassle to set up and prevent people from trying

[–] [email protected] 5 points 10 months ago* (last edited 10 months ago) (1 children)

When MS killed Atom we forked it as Pulsar (https://pulsar-edit.dev/). It is under active development, entirely community-led and everything is as open and transparent as possible. We have downloads for various Linux distros (x86 and arm), macOS and Windows. Might be worth a look if that is the kind of editor you are interested in.

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

Excellent - I was not aware!

[–] [email protected] 2 points 10 months ago (2 children)

Find anything? I hear Nova is okay but it’s Mac only.

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

My go-to ages ago was UltraEdit. But I am not sure I want to fork over the cash. I'm contemplating Sublime. But I'm kind of diving into NeoVim to see if I can get used to it (vi isn't natural for me at this time). It has the potential advantage of being terminal based and is therefore very portable. There are a ton of great modules and it is very activately being improved.

The killer feature that UltraEdit and Notepad++ have is virtual space (ie you can extend vertical blocks over lines that are shorter that the cursor position and it'll automatically extend the line with white space. For SQL (and other things) this is a godsend for right aligned right brackets etc. (oh Geany does this too but it's a very janky feeling application.)

Sublime doesn't have it. Vscode ignores ongoing pleas to add it. Not sure NeoVim will have it, but there's no cost to me for trying.

The main things holding me back from UEdit are cost, and he fact that UEStudio is windows only. Not being terminal based is also a strike against it, but not a showstopper. It's just too much money when an employer isn't paying.

I know emacs exists but it's too deep a rabbit hole when I just want a go to edit text with a few minor bells and whistles...

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

I'll look, though at first blush it looks like an exceedingly complicated way to just simply select beyond line endings and have white space automatically padded when typing in at the (multi) cursor.

It might be great though - I need to try. (and I do recognize that there are many ways to do things)

I have to say Ultra Edit sites this so well (so does Visual Studio and MSSQL Management Studio). Maybe it's a wierd feature want, but I'm not so sure...

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

Sublimetext technically fits the bill for this I think, but its feeling a bit long in the tooth.

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

I actually like sublime but the lack of virtual space for block selection (for a paid editor) moved out way down the list for me.

The plugins feel a bit janky and sparse too.l and the ecosystem feels a bit deserted.

[–] [email protected] 22 points 10 months ago* (last edited 10 months ago) (3 children)

I feel very strange hating Windows, so I use Linux, but loving VS Code, so I use that on Linux. I feel like a hypocrite or something.

But the integration with platformio, github copilot, and all the plugins and customization are just too nice. It's a one-stop shop for everything dev-related. It's the only thing I need to run when programming along with a web browser for research.

[–] [email protected] 24 points 10 months ago (1 children)
[–] [email protected] 7 points 10 months ago (3 children)

I know VScodium doesn’t have the telemetry but is it lacking features regarding account login and extensions?

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

Some extensions don’t work but many do, you just have to download the extension files from the marketplace website and tell VCCodium to install the extensions from those files.

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

Yes and no:

https://open-vsx.org/

I use code-oss provided by the arch repos and it seems to automatically hook into thia. There is probably some way to add that to vscodium.

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

You can configure it to use MS' extensions marketplace.

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

If there's a way to get SSH working to edit files on other machines, I couldn't find it.

[–] [email protected] 8 points 10 months ago* (last edited 10 months ago)

VSCode is pretty good, but honestly most of these advanced text editors are more or less interchangeable to me, especially with LSP and DAP making language servers and debugger integration editor-independent. I don't really feel strongly about any of them, in spite of the fact that as a comp sci student it's the type of software I spend the most time using. I personally use Kate the most, since it's lighter and integrates better with KDE. On my Steam Deck I use VSCodium for quick edits, because it works better in gaming mode. It's basically what (Ungoogled) Chromium is to Chrome, but for VSCode. For exams at school I use plain old VSCode since obviously I can't install Kate or VSCodium in exam sessions. The experience is all things considered pretty similar for all of these. I guess there just aren't a billion ways to design a powerful text editor with built-in debugger, terminal, file manager and kitchen sink. We've gotten the formula down by now.

I feel pretty much the same way about web browsers. On desktop at least, they're all nearly functionally identical, just that some of them have built-in functionality you have to use extensions to get in others. On mobile Firefox all the way of course, because it's the only one with extensions.

[–] fhein 1 points 10 months ago

Use whatever you like :) I tried VSCode at work for a few months but it felt quite lacking when working with larger C++ projects. Switched to CLion instead and it felt like it was faster, understood C++ much better, and made it easier to work in multiple files simultaneously. But I could see myseslf using VSCode for some small hobby project, especially if it's C#

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

Why would it not work? I use neovim.

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

Ubuntu 18.04 is end-of-life since Spring 2023. VS Code is going to require a newer version of glibc than Ubuntu 18.04 comes with. One does not simply upgrade glibc.

This new requirement was announced 6 months in advance, but no one reads the changelog, and enough companies still use Ubuntu 18.04 (hopefully while paying for the Extended Security Maintenance), so many people were surprised and unhappy when their VS Code stopped working for remote development over ssh on Ubuntu 18.04 servers. VS Code installs and runs stuff such as language servers on the remote machine.

[–] [email protected] 4 points 10 months ago* (last edited 10 months ago)

VS Code is going to require a newer version of glibc than Ubuntu 18.04 comes with. One does not simply upgrade glibc.

One might have an application-private newer build of glibc and set LD_LIBRARY_PATH to the directory containing it prior to launching VS Code.

[–] [email protected] 0 points 10 months ago