this post was submitted on 25 Apr 2025
279 points (97.6% liked)

Linux

7216 readers
226 users here now

A community for everything relating to the GNU/Linux operating system

Also check out:

Original icon base courtesy of [email protected] and The GIMP

founded 2 years ago
MODERATORS
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 75 points 1 week ago (44 children)

I recall a case-insensitivity bug from the early days of Mac OS X.

There are three command-line utilities that are distributed as part of the Perl HTTP library: GET, HEAD, and POST. These are for performing the HTTP operations of those names from the command line.

But there's also a POSIX-standard utility for extracting the first few lines of a text file. It's called head.

I think you see where I'm going with this. HEAD and head are the same name in a case-insensitive filesystem such as the classic Mac filesystem. They are different names on a Unix-style filesystem.

Installing /usr/bin/HEAD from libwww-perl onto a Mac with the classic filesystem overwrote /usr/bin/head and broke various things.

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

Hey I have one of these case sensitive Mac OS X stories as well!

I gave it a try one time, and I found out the hard way some developers don't test everything in a case sensitive environment. I don't remember what specifically went wrong, but Adium, The instant messaging client, blew up because it couldn't find certain files on the local hard drive.

load more comments (43 replies)
[–] [email protected] 60 points 1 week ago* (last edited 1 week ago) (1 children)

I prefer case sensitivity, the filesystem shouldn't do any magic like that. If someone types "file.txt", opening "File.TXT" would be convenient, but also misleading. Ignoring case is what autocompletion/search is for imo.

[–] [email protected] 30 points 1 week ago (2 children)

The best things is when the OS enforces magic onto the filesystem. Ntfs is case sensitive but windoze is not. So expect some real fun times if you use ntfs on other systems.

[–] [email protected] 28 points 1 week ago (1 children)

For real. It's a ton of fun when you have a Linux server presenting a SMB share and you get a folder called MyFolder and one called MYFOLDER. Take a guess about what happens in that situation. I guarantee it's different

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 46 points 1 week ago (2 children)

remember when windows could only handle 8 characters and longer names ended in ~1

[–] [email protected] 27 points 1 week ago

To be precise, longer names ending with ~1 are a backwards compatible fix for DOS programs introduced after Windows started supporting longer filenames.

load more comments (1 replies)
[–] [email protected] 30 points 1 week ago (1 children)

What the hell phoronix, why are you using that cookie vendor that will sell your data to 46396 parties and no worries, you can stop it by deselecting each one of them! You can either accept or spend the day disabling this shit.

If that's how it's going to be, phoronix is done for me, sorry. I'd love to support your work even, but not with this

load more comments (1 replies)
[–] [email protected] 20 points 1 week ago (2 children)

Utterly reasonable opinion. Case insensitive filesystems are just lazy programming.

[–] [email protected] 46 points 1 week ago (3 children)

Case insensitive file systems arent lazy, they're a programmer putting in a lot of effort to try and be helpful only to realize that their helpful system doesn't actually cover all the edge cases it needs to and thus just adds a whole extra layer of complication and annoyance to the project.

load more comments (3 replies)
[–] [email protected] 30 points 1 week ago (1 children)

Kind of the opposite. It takes more effort to make a filesystem case-insensitive. Binary comparison is the laziest approach. (Note that laziness is a virtue.)

I'm on the fence as to which is better. Putting backwards compatibility aside, there's a perfectly good case to be made for case-insensitivity being more intuitive to the human user.

Apple got into a strange position when marrying Mac OS (case-insensitive) and NeXTSTEP (case-sensitive). It used to be possible to install OS X on case-sensitive HFS+ but it was never very well supported and I think they axed it somewhere down the road.

load more comments (1 replies)
[–] [email protected] 18 points 1 week ago (3 children)

Damn straight. I thought bcachefs was a modern filesystem? Why is it case insensitive? Huge red flag.

[–] [email protected] 20 points 1 week ago

Isn't bcache the one made by the solo dev who was causing all that drama trying to merge a bunch of crap during a freeze last year?

If so that explains quite a bit lmao

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

It isn't normally, but it, like e.g. Ext4, allows case insensitivity mostly for the sake of Wine.

[–] [email protected] 7 points 1 week ago (5 children)

But Wine could handle the case insensitivity though? NTFS is case sensitive.

load more comments (5 replies)
[–] [email protected] 7 points 1 week ago* (last edited 1 week ago)

Its' lead dev is also so full of himself, it's insufferable

[–] [email protected] 11 points 1 week ago

Such insensetivity!

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

Conversely: that two files that differ in name only by non-visible and humanly-impossible-to-detect details is an enormous user-experience fail.

[–] [email protected] 10 points 1 week ago (3 children)

TIL case insensitive filesystems are still a thing actually in use.

Why lol

[–] [email protected] 11 points 1 week ago (1 children)
[–] [email protected] 12 points 1 week ago (1 children)

Believe it or not, NTFS isn't, but Windows is to keep ye olde DOS compatibility lol.

load more comments (1 replies)
[–] [email protected] 6 points 1 week ago

I believe macOS's default partition is case-insensitive but not case-preserving. I remember having to check the HUnit (unit testing library for Haskell) in a special partition because darcs barfed on a file whose case changed.

I remember that the BeFS in BeOS was also case-preserving but not case-sensitive. Scot Hacker, the author of the BeOS Bible, relayed an explanation that resonated with him. (Bear in mind that this was pre-2000 and the computing landscape was much different. This was also the time that macOS was born in.)

The short of it is that it's for usability. The average person doesn't really differentiate between upper- and lowercase; at most, it's just aesthetics. If they want to find their resume, they don't care if it's spelled resume, Resume, RESUME, or even rEsUmE. Why should the computer require that they conform to a design decision that was made decades prior?

Since then, the world has changed again and the average user of today is even further isolated from the internals of a system. And what was a good idea in 1997 may not longer be relevant now.

load more comments (1 replies)
[–] [email protected] 6 points 1 week ago (2 children)

What about case insensitive programming languages?

Im a python programmer so I'm used to it, but my coworkers are SAS programmers that is case insensitive and they keep getting errors when trying to write python because of that.

[–] [email protected] 1 points 5 days ago (1 children)

Python is case insensitive? Or do mean that it's not? The phrasing is a little confusing.

[–] [email protected] 2 points 3 days ago

Python is case sensitive. I think they're saying their coworkers are writing case insensitive code which is causing errors (perhaps writing myFunction and then calling it via myfunction which would result in an undefined error)

[–] [email protected] 5 points 1 week ago* (last edited 1 week ago)

Ouch. Relying on case sensitivity is a lousy coding choice, anyway. No one is made better off by having a case change carry meaning.

Edit: Before anyone asks, I like case convention as a courtesy, too. But my code doesn't rely on it.

[–] [email protected] 5 points 1 week ago (1 children)

Though I use a case-insensitive filesystem (APFS), I name all files lowercase with underscores and no spaces. Dates get hyphens. Example for purchase receipt to a show I'm about to attend: bloody_beetroots_2025-03-28.pdf

[–] [email protected] 6 points 1 week ago (2 children)

ISO 8601? A man of culture I see.

load more comments (2 replies)
load more comments
view more: next ›