this post was submitted on 29 Dec 2024
211 points (99.5% liked)

Linux

48777 readers
584 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
top 48 comments
sorted by: hot top controversial new old
[–] nothingcorporate@lemmy.today 45 points 2 days ago

I love Fish

[–] kittenzrulz123@lemmy.blahaj.zone 8 points 2 days ago (1 children)

I love Fish and this sounds amazing :3

[–] Psythik@lemmy.world 1 points 1 day ago

Same but I hate cleaning the tank. So messy and smelly.

[–] Lettuceeatlettuce@lemmy.ml 41 points 2 days ago (1 children)

I've really been enjoying Fish on my personal laptop.

[–] Valmond@lemmy.world 10 points 2 days ago (3 children)

Sorry, but what is fish?

Too afraid to ask.jpg

[–] krash@lemmy.ml 1 points 19 hours ago

It's a shell, like sh, bash and zsh, but very user friendly and has great defaults OOB.

[–] arthur@lemmy.zip 43 points 2 days ago* (last edited 2 days ago) (1 children)

Is a ~~terminal~~ shell, like bash or zsh.

[–] Valmond@lemmy.world 4 points 2 days ago
[–] Technus@lemmy.zip 10 points 2 days ago* (last edited 2 days ago) (3 children)

Fish is a great shell, but whenever I SSH into another machine I end up having to do everything in Bash anyway. So the fact that Fish is so different often ends up being a detriment, because it means I have to remember how to do things in two different shells. It was easier to just standardize on Bash.

I might try daily driving it again when this release hits the stable repos, I dunno.

[–] tyler@programming.dev 17 points 2 days ago (1 children)

They call that out as an improvement with the rust switch. You can now just scp a single binary over and have fish without even needing to install it

[–] dino@discuss.tchncs.de 2 points 1 day ago

Interesting, I installed fish on all the machines I work with, but I will look into this.

[–] flubba86@lemmy.world 5 points 2 days ago* (last edited 1 day ago)

Same. That's why I stick with zsh, even though I know Fish has better features, and I would really like to learn fish. I log into many different VMs every day, they all use Bash, some also have zsh. None of them have Fish.

[–] Zykino@programming.dev 1 points 1 day ago

I only have to "quotes" strings that contains globs. The rest mostly work or use the newer/recommanded way to do things for posix shells.

But I must admit, I only use it interactively. For scripts I #!/bin/{,ba}sh. I will use something else once it won some/most the distro preinstalls (either nu, elvish, fish, but for now it's sadly python).

[–] chrand@lemmy.ml 18 points 2 days ago

Fish is amazing, I've been using it for years in all of my computers and servers

[–] Corr@lemm.ee 10 points 2 days ago (5 children)

I would want to continue to write my scripts with sh or bash, but is this something worth adopting for just regular shell navigation?
I've thought about it previously but it not being a default shell makes it reasonably less appealing for me.

[–] Ephera@lemmy.ml 4 points 1 day ago* (last edited 1 day ago) (1 children)

I just set Fish as the shell that my terminal emulator should launch. The actual default/system shell can stay Bash. And then, yeah, if you put Bash into the shebang, all the scripts will run with it, and you can just execute bash in your Fish shell at any point to drop into a Bash shell.

Occasionally, I'll realize some syntax discrepancy where I've kind of learned it the Fish way, but because I'm only using Fish interactively, there's really not a ton of syntax that I'm interacting with.

And yeah, ultimately I find it well worth it. In particular the history-based auto-suggestions are really useful. People will ask me what that command was again and I'll start typing into my shell and it just pulls out exactly what I wanted in quite a lot of cases.

[–] wuphysics87@lemmy.ml 1 points 1 day ago (2 children)

Who asks about your history? Genuinely curious.

[–] Ephera@lemmy.ml 4 points 1 day ago

Well, I'm talking about my team members at my dayjob. I'm a software engineer.

But it's also a lot less explicit than what you're probably imagining. It's rather that we have a meeting and realize that a problem re-occurred which we thought we solved months ago. So, then everyone starts collectively scratching their head and somewhat rhetoric questions might be thrown into the room, i.e. "Oh man, do you still remember how we did that?".

Then I might start typing the command how I think it would probably begin, often with the intention of then putting --help at the end to try to jump-start my memory. And then that's where Fish often jumps in and tells me that I'm apparently typing the exact beginning letters of the command that we used a few months ago.
Sometimes this even happens when I have no recollection that I ran a given command before, and someone's just generally asking how to do a certain task...

[–] Corr@lemm.ee 2 points 1 day ago

I've shared commands with friends and they ask for them again. I imagine similar context here

[–] LiveLM@lemmy.zip 16 points 2 days ago (1 children)

This is what I do.
Fish for daily usage and when I need to write a script or use a snippet from the web, I drop to bash for a sec. Totally worth it.

[–] Corr@lemm.ee 4 points 2 days ago

I'll check it out then. Work involves using bash exclusively because it's embedded systems but I'll see if fish suits me for personal use. Thanks for the suggestions

[–] BrianTheeBiscuiteer@lemmy.world 20 points 2 days ago (1 children)

As long as you use bash in your shebang you won't know the difference. Fish even has conventions for applying environment variables to be available in both shells. I've used Fish for a couple years and my biggest gripe (which is still minor) is that command snippets off the Internet don't always work. In those cases I either switch to bash temporarily or fix the command to work in Fish.

[–] Zykino@programming.dev 1 points 1 day ago

Most of the time the fix is: put quotes around your strings (especially when they may contains globing patterns). Sometimes its using newer syntax available in bash but not on the snippet.

[–] markstos@lemmy.world 15 points 2 days ago

Yes, Fish excels at being an interactive shell.

[–] comfy@lemmy.ml 4 points 1 day ago

I felt that way too, but testing it for a few days on one device changed my mind. Their pitch rings true, it has so many basic QoL features that make you wonder why this wasn't added to bash two decades ago.

For me, the only bash->fish gripe I've had was it took me a little while to get used to having to put quotes around URLs with a ? to stop it trying to wildcard, but again, their rationale makes perfect sense and really I admit it was bad for bash to simply accept that string in the first place.

[–] hornedfiend@sopuli.xyz 13 points 2 days ago

my favourite shell just got better!

[–] QuazarOmega@lemy.lol 12 points 2 days ago

Best use of the reference thus far, went from over to under the sea

[–] bruhduh@lemmy.world 2 points 2 days ago
[–] steeznson@lemmy.world 5 points 2 days ago (5 children)

I know "fun" is subjective but I've heard mixed reviews from devs who have tried rust programming. The compiler is very strict for example.

[–] asdfasdfasdf@lemmy.world 4 points 1 day ago

Rust is amazing. I've been using it for six years now. Being strict is exactly what you want when building anything more complex than fizzbuzz. It's just that people aren't used to it so it makes them uncomfortable enough to not attempt to learn it or see how beneficial it is.

[–] bricklove@midwest.social 28 points 2 days ago (2 children)

The compiler grows on you after a bit and generally if you're fighting it, it's trying to prevent you from shooting yourself in the foot. I've heard it depends on what languages you're coming from. Most of my experience is with higher level languages like JavaScript so the issues I ran into while learning rust were opportunities to get a deeper understanding of computers in general.

I could see that being frustrating if you're coming from C/C++ and just want the dang thing to do what you already know how to do.

[–] yoevli@lemmy.world 12 points 2 days ago

The way I look at it is that most of my time spent fighting with the compiler is usually made up for in time saved debugging. I'm in the process of RIIRing a hobby project and so far most of the ported code just works, and I only end up needing to fix a few dumb logic mistakes before it's fully up and running.

[–] MoonMelon@lemmy.ml 12 points 2 days ago

Coming from Python I feel like it's my partner and best friend. In fact the whole damn tool chain is amazing.

[–] tyler@programming.dev 5 points 2 days ago (1 children)

It’s more fun than c and c++ at least.

[–] wuphysics87@lemmy.ml 3 points 1 day ago

Silly a thing as is, I have never had a language I enjoyed the way it wrote as much as rust.

[–] ProtonBadger@lemmy.ca 13 points 2 days ago (1 children)

Yes, it's because it keeps track on object lifetimes and data access when sharing objects, even across threads. It means that once things compiles a whole category of common and often difficult to debug errors are gone. It means much less time debugging and fewer issues once in the hands of the end user. There can still be bugs but it's more about logical errors than difficult memory issues.

As a C++ dev for 20 years, I love Rust. Humans are fallible, even if endeavouring to use safe patterns. Might as well just let the compiler use some CPU cycles on that.

[–] steeznson@lemmy.world -2 points 1 day ago

I think new projects in Rust make sense but my - uninformed - opinion is that we should be wary about porting old C/C++ software due to those other classes of bugs you mentioned. The logical type errors I see at work and in open source projects using memory safe languages can be fiendish in their own way.

[–] syklemil@discuss.tchncs.de 16 points 2 days ago

Yeah, Rust tries to find as many problems as it can during compilation. It's great for those of us who want the bugs to be found ahead of release, not great for those who just want something out the door and worry about bugs only after a user reports them.

Different platforms have different values, and that also affects what people consider fun. At the other end of the scale you find the triple-equals languages like js and php, which a lot of people think are fun and normal, but some of us think are so wobbly or sloppy that they're actually much harder languages than other, stricter languages.

If you value correctness and efficiency, Rust is pretty fun.

[–] prole@beehaw.org 4 points 2 days ago

Fish is so helpful

[–] wiki_me@lemmy.ml -5 points 2 days ago (2 children)

I don't want to start a holy war. but they say it should bring more contributors and a more fun programming language should mean more contributions but contribution metrics on openhub show no meaningful improvement IMO.

[–] faho@lemmy.world 23 points 2 days ago (1 children)

Openhub also says it's "mostly written in javascript".

But in all seriousness: The port wasn't the greatest time for new contributors, because there wasn't a lot of feature work or cleanup happening.

So I'd expect more now.

[–] wiki_me@lemmy.ml 1 points 18 hours ago (1 children)

Openhub also says it’s “mostly written in javascript”.

Probably because the website site is listed as one of the repositories.

[–] faho@lemmy.world 1 points 16 hours ago

The website has about 50 lines of non-generated javascript. Even counting the generated JS, fish-site is 96.5% html.

(either way, setting a "main repo" here seems to be table stakes and does not fill me with confidence about OpenHub)

The port isn't even shipping everywhere, give it like a year, then check the stats

[–] NeoNachtwaechter@lemmy.world -2 points 2 days ago (2 children)

Any tl;dr in less than 10 words?

[–] NanoooK@sh.itjust.works 46 points 2 days ago

C++ bad, rust fun, conversion successful.

[–] tun@lemm.ee 8 points 2 days ago

why, what and how fish was changed (from C++) to rust.

without words between brackets there are 9 words.