# How could I have the console font like DragonflyBSD?



## Deleted member 63539 (Aug 27, 2020)

I really liked the default console font of DragonflyBSD and want to have my FreeBSD console font like it. The default console font of FreeBSD is way too small and very difficult to read. Please help. Thanks.


----------



## SirDice (Aug 27, 2020)

I don't know what font they used but there are some instructions how to convert a font for use with vt(4) here: https://wiki.freebsd.org/Newcons


----------



## Bobi B. (Aug 27, 2020)

Also search for "font" in rc.conf(5).


----------



## Deleted member 63539 (Aug 27, 2020)

SirDice said:


> I don't know what font they used but there are some instructions how to convert a font for use with vt(4) here: https://wiki.freebsd.org/Newcons


I think it's the same font that used on old FreeBSD versions, before the current font being used.


----------



## Deleted member 63539 (Aug 27, 2020)

Bobi B. said:


> Also search for "font" in rc.conf(5).


The man page is too long, how could I search for it? Is there any tool to help me to search for a specific term in the man page? Searching manually seems not to be an option.


----------



## chrbr (Aug 27, 2020)

sysctl said:


> Is there any tool to help me to search for a specific term in the man page?


The man page are listed using a pager with is less(1). When the man page is open you have a colon : in the lowest row. If you press the slash `/` followed by `font` the display will jump to the next position where the text `font` appears. The you can use the `n` key to jump to the next location or the `N` key to go back. Now you have the next man page to read. Fortunately one needs only a small subset of all keys .


----------



## Mjölnir (Aug 27, 2020)

The _gallant_ font is eye-pleasing for large resolutions:
In the shell (csh(1)):

```
foreach y (8 14 16)
foreach? sysrc -e font8x$y
foreach? end
font8x8="gallant"
font8x14="gallant"
font8x16="gallant"
```
To set, use `sysrc font8x$y=gallant` in the loop.  You can see a list of all fonts and set them as _root_ from a console with vidfont(1).
EDIT P.S. TL;DR? You do not have to read the man pages yourself.  We're happy to do that for you.  Just ask here...


----------



## Mjölnir (Aug 27, 2020)

sysctl said:


> The man page is too long, how could I search for it? Is there any tool to help me to search for a specific term in the man page? Searching manually seems not to be an option.


To read man pages comfortably, you can use a graphical tool e.g. sysutils/khelpcenter or type `man:rc.conf` in the address line of x11-fm/konqueror
`pkg install kde5 octopkg falkon`Right click on the start menu -> _edit menu entries_ -> select _System/OctoPkg_ -> _run as user: root_
EDIT `pkg install asr-manpages`


----------



## Deleted member 63539 (Aug 27, 2020)

mjollnir said:


> To read man pages comfortably, you can use a graphical tool e.g. sysutils/khelpcenter or type `man:rc.conf` in the address line of x11-fm/konqueror
> `pkg install kde5 octopkg falkon`Right click on the start menu -> _edit menu entries_ -> select _System/OctoPkg_ -> _run as user: root_
> EDIT `pkg install asr-manpages`


Thanks. But I will not install the entire kde5 just to read a man page.


----------



## ekvz (Aug 27, 2020)

sysctl said:


> The man page is too long, how could I search for it? Is there any tool to help me to search for a specific term in the man page? Searching manually seems not to be an option.



`man rc.conf | grep -A5 -B5 -i font`


----------



## Mjölnir (Aug 27, 2020)

sysctl said:


> Thanks. But I will not install the entire kde5 just to read a man page.


Very likely other GUIs have graphical help systems, too.  Unfortunately, AFAIK there is no easy text-mode man(1) pager; i.e. without _not-so-intuitive_ commands like more(1) & less(1).  To search in these (default man pagers), use the _slash_ (_"/")._  When you have used that a few times, you'll get used to it.  It's UNIXish, and you choosed FreeBSD which is a UNIXoid.  Maybe you find sysutils/most (a text mode pager like _more/less_) easier to use (e.g. _S_ to _s_earch).


----------



## SirDice (Aug 27, 2020)

A lot of fonts don't have enough differences between O (capital o) and 0 (zero). Or I (capital i), l (lowercase L) and 1 (one). Or B (capital b) and 8 (eight). Which makes them terrible for coding. I'm a big fan of the Terminus font (x11-fonts/terminus-font) which has clear and distinct differences between those problematic letters and digits.


----------



## 20-100-2fe (Aug 27, 2020)

DejaVu Sans Mono is also suitable for coding.


----------



## Bobi B. (Aug 27, 2020)

IMHO Iosevka is a pretty nice, free family of fonts, fitting well for writing code.


----------



## kpedersen (Aug 27, 2020)

mjollnir said:


> Very likely other GUIs have graphical help systems, too


It is likely you already have `xman` installed. It is part of the standard Xorg distribution afaik.

Looks like this:


			https://cyber.dabamos.de/unix/x11/xman.gif
		



			https://screenshots.debian.net/screenshots/000/017/807/large.png
		


But yeah, learning ~3 keypresses in for the CLI man is generally the better choice.


----------



## Menelkir (Aug 27, 2020)

SirDice said:


> A lot of fonts don't have enough differences between O (capital o) and 0 (zero). Or I (capital i), l (lowercase L) and 1 (one). Or B (capital b) and 8 (eight). Which makes them terrible for coding. I'm a big fan of the Terminus font (x11-fonts/terminus-font) which has clear and distinct differences between those problematic letters and digits.



I've discovered terminus years ago and it was a big jump for me. Every machine I should use for a long period of time doing something, the terminal will use terminus.


----------



## kpedersen (Aug 27, 2020)

SirDice said:


> I'm a big fan of the Terminus font


Same. To me it also has a few similarities to the OpenBSD default terminal font, spleen (https://github.com/fcambus/spleen) in that the glyphs appear fairly square.


----------



## Mjölnir (Aug 28, 2020)

anonymous9 said:


> The nerdy way is to install devel/plan9port and start the `acme` editor. [...]
> The only text editor you'll ever need  You can even start an ssh session in the editor!


Yes, or install editors/emacs.  Not only it's a complete IDE, it can also read & send e-mail, cook coffee, etcetera, for shure it can format man pages, too!   It's an own whole galaxy: 
`portfind -r emacs`: _Results: 372 / Matches: 372  _


----------



## Mjölnir (Aug 28, 2020)

kpedersen said:


> It is likely you already have `xman` installed. It is part of the standard Xorg distribution afaik.


Nowadays, the GUIs usually do not depend on a full X11 installation (x11/xorg), but either install only those components they need, or the stripped-down x11/xorg-minimal.  No _xdm, xterm, xrdb, xmodmap, xman_ etc.pp.


----------



## Deleted member 63539 (Aug 28, 2020)

mjollnir said:


> Nowadays, the GUIs usually do not depend on a full X11 installation (x11/xorg), but either install only those components they need, or the stripped-down x11/xorg-minimal.  No _xdm, xterm, xrdb, xmodmap, xman_ etc.pp.


I always install the full xorg.


----------



## kpedersen (Aug 28, 2020)

mjollnir said:


> Nowadays, the GUIs usually do not depend on a full X11 installation (x11/xorg), but either install only those components they need, or the stripped-down x11/xorg-minimal.  No _xdm, xterm, xrdb, xmodmap, xman_ etc.pp.


True, but people have always been able to install butchered versions of Xorg. That is why I explicitly used the word "standard". The minimal xorg package is definitely useful for "Point of Sale" units however. We use it for our arcade units (with a few additional removals).



sysctl said:


> I always install the full xorg.



Same for my workstation installs, I think in many ways it is a good idea so if anything goes wrong it isn't that I happened to miss off a crucial package. It makes it easier for others to help debug problems if they know you have a standard install.

Not to mention, the minimal X11 package dragging in 3 pythons kind of undoes the benefits of minimal anyway. Especially if you go and install a single Qt (or Gtk) application afterwards.

<Offtopic>


mjollnir said:


> the stripped-down x11/xorg-minimal


You know something is wrong with a language when a "minimal" meta-package drags in 3 versions of it.

```
python27
python35
python37
```
That said, it does also drag in llvm80 (rather than link against the one in base) so I suppose C and C++ is only slightly better XD


----------



## ekvz (Aug 28, 2020)

kpedersen said:


> People have always been able to install butchered versions of Xorg.



Butchered seems to be a perfectly fitting description for ending up with 3 versions of python but no xcalc.


----------



## Deleted member 63539 (Aug 28, 2020)

ekvz said:


> Butchered seems to be a perfectly fitting description for ending up with 3 versions of python but no xcalc.


Excuse me please but I checked on both freshports and `pkg install xorg-minimal` on my system but didn't see it drags in 3 versions of python at all. It could be because my system already has the standard xorg installed, though.


----------



## kpedersen (Aug 28, 2020)

ekvz said:


> Butchered seems to be a perfectly fitting description for ending up with 3 versions of python but no xcalc.



I know! Fairly annoying isn't it haha.

I did look into this before but can't recall what drags in the Pythons. In theory it shouldn't need any. I believe it was a case of a port option being enabled by default. Similar to Xorg having dbus and nvidia driver having Linux compat options enabled by default. Annoying for package users.


----------



## Mjölnir (Aug 28, 2020)

Maybe you're reading that from the Makefile of the port?  I have only _python27 & python37_ pulled in.  But I do not remember if I installed x11/xorg-minimal.  How can I query pkg(8) which package pulled in _python_?


----------



## T-Daemon (Aug 28, 2020)

It doesn't list which package first pulled python* in, it lists the packages requied by it. For multiple versions of python:  `pkg info -gr python\*`


----------



## kpedersen (Aug 28, 2020)

mjollnir said:


> Maybe you're reading that from the Makefile of the port?  I have only _python27 & python37_ pulled in.  But I do not remember if I installed x11/xorg-minimal.  How can I query pkg(8) which package pulled in _python_?



I did a `make run-depends-list`

You can see similar results here though:
https://www.freebsd.org/cgi/ports.cgi?query=xorg-minimal&stype=all

I used to have a script which ran the above command recursively and made a tree diagram. I left it at work however and cannot get into the building for another few weeks haha.

For *build* dependencies, it is fairly easy to find. You just break the Python makefile and see where the main recursive xorg build fails and follow the "stack trace" XD


----------



## ekvz (Aug 28, 2020)

kpedersen said:


> Similar to Xorg having dbus and nvidia driver having Linux compat options enabled by default.



I've noticed those too. I don't think there have ever been two options i've spent less thought on while hitting deselect. Sadly something i installed later on still felt the need to pull in something related to dbus. Judging from the final result its seems this was luckily just dbus client libraries though. I avoid dbus (and all those poetterkits...) even on Linux so suddenly having it on FreeBSD would have been somewhat ironic.



kpedersen said:


> That said, it does also drag in llvm80 (rather than link against the one in base) so I suppose C and C++ is only slightly better XD



It's hard to miss this one when building the port. I think like 95% of the time spent getting X running was used building llvm80. If i remember correctly there also wasn't any obvious option to avoid it. On top of that it's pretty strange if you ask me. X being a really old codebase it's hard to think of reasons why there would be a need to use an overly recent compiler.


----------



## kpedersen (Aug 28, 2020)

ekvz said:


> X being a really old codebase it's hard to think of reasons why there would be a need to use an overly recent compiler.



I *think* it is to do with LLVMpipe (the software rasteriser) or the AMD GPU related driver. Either they really do need the latest code generation technology, or it is because these are written by the FOSS kids who always want the latest stuff. In my experience, it is usually the latter. I also note that OpenBSD's Xenocara manages both of these just fine without it.

I am also fairly certain that once FreeBSD does end up with that version of LLVM in base (licensing concerns aside), those annoying things will be depending on an even newer version of LLVM (and almost certainly pull in another 4 versions of Python haha).

"Progress" is inelegant


----------



## Deleted member 63539 (Aug 28, 2020)

I'm using 11.4, it has LLVM 10 in base but I still need to have the llvm80 package installed. The reason I think is packages are still built for 11.3 and 11.3 has LLVM 8 in base. When 11.3 is EOL, I think my 11.4 will no longer need that llvm80 package.


----------



## T-Daemon (Aug 28, 2020)

kpedersen said:


> Not to mention, the minimal X11 package dragging in 3 pythons kind of undoes the benefits of minimal anyway. Especially if you go and install a single Qt (or Gtk) application afterwards.
> ...
> You know something is wrong with a language when a "minimal" meta-package drags in 3 versions of it.
> 
> ...



I have x11/xorg-minimal installed, and only lang/pyton37 is on my system ( packages, no ports ). None of the other mentioned pythons is a required run dependency by any component or their dependecies of the meta package. lang/python27 appears in  `make all-depends-list`, which I suspect is a build dependency of a dependency.


----------



## T-Daemon (Aug 28, 2020)

kpedersen said:


> Similar to Xorg having dbus and *nvidia driver having Linux compat options enabled by default*. Annoying for package users.



That is not the current ports ( automatically also the packages ) default configuration for the x11/nvidia-driver. The default is `LINUX=off` ( `make -C /usr/ports/x11/nvidia-driver showconfig` ) as of 2019-10-25:

/usr/ports/UPDATING

```
2019-10-25

Affects: users of x11/nvidia-driver (and slave ports)

Author: danfe@FreeBSD.org

Reason:
  x11/nvidia-driver* ports no longer install Linux programs and libraries,
  which had been moved to their own ports (x11/linux-nvidia-libs*).  When
  updating the driver package next time, remember to install them manually
  if you need to run Linux OpenGL programs.
```

*[EDIT] Sorry, I hadn't run  make rmconfig. What kpedersen said about the linux compatibility is valid. I apologize.*


----------



## T-Daemon (Aug 28, 2020)

kpedersen said:


> I used to have a script which ran the above command recursively and made a tree diagram. I left it at work however and cannot get into the building for another few weeks haha.



There is a script on GitHub, displaying all the dependencies of installed packages in a tree view:









						pkgng tree view script for FreeBSD
					

pkgng tree view script for FreeBSD. GitHub Gist: instantly share code, notes, and snippets.




					gist.github.com


----------



## ekvz (Aug 28, 2020)

T-Daemon said:


> I have x11/xorg-minimal installed, and only lang/pyton37 is on my system ( packages, no ports ). None of the other mentioned pythons is a required run dependency by any component or their dependecies of the meta package. lang/python27 appears in  `make all-depends-list`, which I suspect is a build dependency of a dependency.





T-Daemon said:


> That is not the current ports ( automatically also the packages ) default configuration for the x11/nvidia-driver. The default is `LINUX=off` ( `make -C /usr/ports/x11/nvidia-driver showconfig` ) as of 2019-10-25:



Yes, it's quite possible this situation has been resolved by now. I am still running an older version of ports with the plan being to update them later all at once or simply reinstall the whole system when i have figured out how i want it to be set up.


----------



## kpedersen (Aug 28, 2020)

T-Daemon said:


> *[EDIT] Sorry, I hadn't run  make rmconfig. What kpedersen said about the linux compatibility is valid.*



I know there was some discussion about changing the default but I guess the maintainer decided against it. In all fairness I don't have a better solution, it would be annoying to recompile the port whether you do or don't want Linux support and yet providing two versions of the package (i.e as flavours) does increase the complexity of the ports collection.



T-Daemon said:


> I have x11/xorg-minimal installed, and only lang/pyton37 is on my system ( packages, no ports ).



Hmm, it seemed to drag in the extra pythons on mine. Perhaps it just considers me a user who needs more Python in their life? 
That said, I havne't updated packages in quite some time. I downloaded the entire pkg repo to my home network in Feb. It might be something that improved semi-recently.


----------



## ekvz (Aug 28, 2020)

kpedersen said:


> I know there was some discussion about changing the default but I guess the maintainer decided against it. In all fairness I don't have a better solution, it would be annoying to recompile the port whether you do or don't want Linux support and yet providing two versions of the package (i.e as flavours) does increase the complexity of the ports collection.



The problem of allowing full customization while not requiring the ports to be built locally is something i have been thinking about quite a bit lately but the only thing that came out of it yet is the realization that solving it in a fully flexible way is probably not easy and likely to involve some kind of remote build service (if that's practical is an entirely different topic of course).


----------



## Mjölnir (Aug 28, 2020)

`pkg info -gr python\* | grep -Ev 'py[23]7-' | less` does not list any native X11 ports require Python.  Some Gtk and Plasma5 ports do, as well as applications, naturally.  So pulling in Python via _xorg_ or _xorg-minimal_ seems to be a bug introduced in package management.


----------



## SirDice (Aug 28, 2020)

Ehm, how did a question about console fonts turn into a discussion about python versions? Can we get this back on track please?


----------



## T-Daemon (Aug 28, 2020)

kpedersen said:


> I know there was some discussion about changing the default but I guess the maintainer decided against it. In all fairness I don't have a better solution, it would be annoying to recompile the port whether you do or don't want Linux support and yet providing two versions of the package (i.e as flavours) does increase the complexity of the ports collection.



*SirDice*, one more please, for completeness.

Despite the fact default is `LINUX=on` for the nvidia-driver, installing the port or package doesn't drag in the Linux compatibility layer as if was before 2019-10-25. That does now x11/linux-nvidia-libs, but that port is not a required dependency for the driver.

Seen that way it's an improvement. Before the separation of Linux programs and libraries from the driver I had to build from port with Linux disabled. I don't need the linux compatibility layer, and I hate to have unnecessary dependencies installed if I can opt them out.


----------



## Mjölnir (Aug 28, 2020)

SirDice said:


> Ehm, how did a question about console fonts turn into a discussion about python versions? Can we get this back on track please?


We're social beings...  I'll try to set up IRC, that ought to be better suited for our behaviour.


----------



## kpedersen (Aug 28, 2020)

mjollnir said:


> We're social beings...



haha, yep. I also probably talk far too much these days. Almost certainly to make up for the covid isolation. Apologies to all members of the forum!


----------

