Harvey-OS/harvey

Troff fonts cause problems on case-insensitive filesystems (e.g. macOS)

Closed this issue · 10 comments

gmacd commented

The following files cause problems on mac due to the difference in case:

  • sys/lib/troff/font/devutf/HB
  • sys/lib/troff/font/devutf/Hb
  • sys/lib/troff/font/devutf/HI
  • sys/lib/troff/font/devutf/Hi
  • sys/lib/troff/font/devutf/HX
  • sys/lib/troff/font/devutf/Hx

I appreciate it's irritating, but mac users won't be able to even create a branch with the current situation - you need to rename locally commit and muck around even more with branches before commiting anything. (Also, I'm a mac user for the next 3 weeks)

Could we go back to the __fixcase__XX names, but have the loading code work around it? We could revert the change once we can build in Harvey.

The reason I moved them back to the correct names was because it broke 'man'. I would approve a PR to move them back to __fixcase__XX if someone modified ufs to translate __fixcase__XX to the appropriate filename. I don't know how troff on macOS works, if they do something that'll work without rewriting all troff documents that would also be fine.

Otherwise, we should figure out if there's a way to make some sort of case-sensitive virtual volume within macOS, or just tell mac users to run a Linux VM; these are both annoying, but Mac users should be used to working around broken half-Unix stuff already.

For example, https://gist.github.com/dixson3/8360571 will apparently help you make a case-sensitive file and mount that as a hard disk within macOS

gmacd commented

I forgot to add that I tried a case-sensitive volume, but that had a mysterious crash when booting the kernel, so I figured there might be some problem with the build tools (gcc) and case sensitive HFS.

I'm happy to take a look at making a change to ufs in the next few days.

Could you try the case-sensitive volume again, maybe following exactly the script in that gist, and if it fails again make an issue about it? I think adding a single additional step for Mac users is preferable to breaking ufs / re-writing a bunch of troff documents.

This would also allow us to get Kill back, among other things

gmacd commented

Alright, I'll give it a go, but I'm not holding out much hope!

gmacd commented

Huh. It seems to have worked. No idea why my physical partition didn't work yesterday then.

We could link to the script (I used a different one referenced at the bottom of the one mentioned earlier in this issue: https://gist.github.com/scottsb/479bebe8b4b86bf17e2d) in the build wiki.

gmacd commented

Ok, I updated the 'Getting Started' page with instructions on how to create a case-sensitive disk image on mac. That works around the problem, so I'm going to close this.

Fine for me.

gmacd commented

BTW, thanks for the suggestion @floren