ChrisTitusTech / linutil

Chris Titus Tech's Linux Toolbox - Linutil is a distro-agnostic toolbox designed to simplify everyday Linux tasks.
https://christitus.com
MIT License
1.9k stars 165 forks source link

Missing font for folder icons in installer ui - EndeavourOS #87

Open onemustpersist opened 1 month ago

onemustpersist commented 1 month ago

Describe the bug

Folder icons and console icons appear as hollow boxes on run

To Reproduce

Run script in EndeavourOS

Expected behavior

Icons should appear as console icon and folders

Screenshots

missingfont-software

Additional context

Happens in current build

adamperkowski commented 1 month ago

Those are icons from Nerd Fonts.

https://github.com/ChrisTitusTech/linutil/blob/8e8476cda5ce2b9d1efcc2e031f19bc38132586a/src/theme.rs#L26-L27

From what I understand, linutil doesn't install nerd fonts. You can install manually: package. You should choose one (or more) font you like from the group.

onemustpersist commented 1 month ago

Even with all nerd-fonts installed, this is still an issue :

after-nerdfont-install

linutil should install the font if it is going to use it else the presented UI and the screenshot of the ui will differ

adamperkowski commented 1 month ago

You should check your terminal emulator settings for fonts. do you use tmux or anything similar?

onemustpersist commented 1 month ago

Required opening fresh terminal to address the issue. If that is the case, not sure how this can be address before running the script other then a prerequisite install of the fonts.

JustLinuxUser commented 1 month ago

Linutil is not causing fonts to not work somehow, but if you don't want to install the fonts, linutil has a compatibility mode with linutil --compat or linutil -c

onemustpersist commented 1 month ago

With the goal of this project being a tool to help people to migrate to Linux by removing a lot of configuration minutia, should compatibility mode be the default mode? Most users in that user base would not have installed nerd-fonts.

HeCodes2Much commented 1 month ago

With the goal of this project being a tool to help people to migrate to Linux by removing a lot of configuration minutia, should compatibility mode be the default mode? Most users in that user base would not have installed nerd-fonts.

I totally agree with you on this it should be default unless stated by the user.

Kingproone commented 4 weeks ago

After I installed extra/ttf-jetbrains-mono-nerd 3.2.1-2 and relaunched my terminal, the icons show up for me. This is a 200 mb download though, which isn't really ideal, for 3 used icons. Can't those - or some similar icons be bundled?

angryguy-win commented 3 weeks ago

I'm Using EndeavourOS, my icons show up fine, but I have some Nerdfonts install for other s thing like Terminal ect.. maybe there is a more elegant solution for just the hand full of font/icons. then installing fonts that some people might not want to install.. image

onemustpersist commented 3 weeks ago

I'm Using EndeavourOS, my icons show up fine, but I have some Nerdfonts install for other s thing like Terminal ect.. maybe there is a more elegant solution for just the hand full of font/icons. then installing fonts that some people might not want to install.. image

Yes, It is not an issue with nerd-fonts installed

JustLinuxUser commented 3 weeks ago

maybe there is a more elegant solution for just the hand full of font/icons. then installing fonts that some people might not want to install..

There is not, this is a terminal app, not a gui app, it doesn't render text itself, it just writes stuff to stdout, and the terminal renders the text. There are a couple of options here:

onemustpersist commented 3 weeks ago

maybe there is a more elegant solution for just the hand full of font/icons. then installing fonts that some people might not want to install..

There is not, this is a terminal app, not a gui app, it doesn't render text itself, it just writes stuff to stdout, and the terminal renders the text. There are a couple of options here:

* Run with compatibility mode, so that the icons are never displayed in the first place,

* Have the setup script detect the OS, install a terminal and a font, update the terminal config to use that font, and launch linutil in that terminal, but I feel like this is too "invasive".
  You run linutil in the compat mode if you don't want the icons, or you just install the font, that's not that hard of a problem tbh, and even without the fonts or the compat mode, you can still use it perfectly fine, its just ugly

The ideal would be detect compatible fonts and run in compatibility mode if they are not present

JustLinuxUser commented 3 weeks ago

@onemustpersist I don't think that would be possible, see here