Is it possible to change the ports config dialog colours?

Howdy,
I used to have a custom .dlalogrc that changed the ports config dialog colours, but I get the feeling that /usr/bin/dialog isn't used any more by ports (maybe?).
The man page for ports-mgmt/portconfig tells me I can use NO_COLOR=1 which is an improvement (for me), but is there a way to keep the dialog colourised but with colours of my choosing?
Thanks,
Scott
 
Thanks for confirming all.

Does the lack of customisability (other than B&W) raise accessibility concerns?
 
Does the lack of customisability (other than B&W) raise accessibility concerns?
The first (oldest) default of ports-mgmt/portconfig when it landed on ports tree was much worse than current one, at least for cataract eyeballs. Current one is fine.
And in my humble opinion, ports-mgmt/portconfig should be merged into base like in-base bsddialog(1) in the future. Re-adding theme (color scheme) functionality with more flexible way (was just to select from a few candidates) would be nice before the merge happenes.
 
Current one is fine
That's great, for you. Accessibility is about catering for others, whose needs one may not be able to anticipate. It's a failing that an updated UI in FreeBSD that many users interact with went backwards with regard to customisability. Do we have a standards document in the project that prescribes minimum functionality for essential UIs?
 
Accessibility is about catering for others, whose needs one may not be able to anticipate.
Exactly. So customizability is important.
And in this aspect, screen reader for vt/sc is wanted (I've lost track of it, though). But for (n)curses things, it needs to ignore ESC sequences properly. And supports for CJK languages should be quite difficult.


Do we have a standards document in the project that prescribes minimum functionality for essential UIs?
Possibly I'm overlooking something, but unfortunately, there's none, as far as I know.
 
… Accessibility … Do we have a standards document in the project that prescribes minimum functionality for essential UIs?

Not that I can see.

1726381621913.pngFor base, there's a wish list.

Code:
% rg --count --sort path -i accessibility /usr/doc
/usr/doc/documentation/content/de/books/porters-handbook/makefile/_index.adoc:1
/usr/doc/documentation/content/el/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/en/books/design-44bsd/_index.adoc:1
/usr/doc/documentation/content/en/books/design-44bsd/_index.po:1
/usr/doc/documentation/content/en/books/faq/_index.adoc:1
/usr/doc/documentation/content/en/books/faq/_index.po:1
/usr/doc/documentation/content/en/books/fdp-primer/asciidoctor-primer/_index.adoc:2
/usr/doc/documentation/content/en/books/fdp-primer/asciidoctor-primer/_index.po:2
/usr/doc/documentation/content/en/books/fdp-primer/overview/_index.adoc:1
/usr/doc/documentation/content/en/books/fdp-primer/overview/_index.po:1
/usr/doc/documentation/content/en/books/porters-handbook/makefiles/_index.adoc:1
/usr/doc/documentation/content/en/books/porters-handbook/makefiles/_index.po:1
/usr/doc/documentation/content/en/books/porters-handbook/special/_index.adoc:8
/usr/doc/documentation/content/en/books/porters-handbook/special/_index.po:7
/usr/doc/documentation/content/fr/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/hu/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/it/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/ja/books/porters-handbook/makefile/_index.adoc:1
/usr/doc/documentation/content/nl/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/pt-br/books/fdp-primer/asciidoctor-primer/_index.po:2
/usr/doc/documentation/content/pt-br/books/fdp-primer/overview/_index.po:1
/usr/doc/documentation/content/pt-br/books/porters-handbook/makefiles/_index.adoc:1
/usr/doc/documentation/content/pt-br/books/porters-handbook/special/_index.adoc:4
/usr/doc/documentation/content/ru/books/porters-handbook/makefiles/_index.adoc:1
/usr/doc/documentation/content/zh-cn/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/zh-cn/books/porters-handbook/makefile/_index.adoc:1
/usr/doc/documentation/content/zh-tw/books/porters-handbook/makefiles/_index.adoc:1
/usr/doc/documentation/content/zh-tw/books/porters-handbook/special/_index.adoc:7
/usr/doc/documentation/static/pgpkeys/max.key:1
/usr/doc/shared/en/mailing-lists.adoc:3
/usr/doc/shared/es/mailing-lists.adoc:3
/usr/doc/shared/ja/mailing-lists.adoc:3
/usr/doc/website/content/en/internal/doceng.adoc:1
/usr/doc/website/content/en/news/2012-compromise/md5.sums.20121118.txt:2
/usr/doc/website/content/en/news/2012-compromise/sha256.sums.20121118.txt:2
/usr/doc/website/content/en/status/report-2021-01-2021-03/discord.adoc:1
/usr/doc/website/content/en/status/report-2022-01-2022-03/_index.adoc:1
/usr/doc/website/content/en/status/report-2022-01-2022-03/accessibility.adoc:7
/usr/doc/website/content/en/status/report-2022-01-2022-03/intro.adoc:1
/usr/doc/website/content/en/status/report-2022-01-2022-03/kde.adoc:1
/usr/doc/website/content/en/status/report-2022-07-2022-09/kde.adoc:1
/usr/doc/website/content/en/status/report-2022-10-2022-12/_index.adoc:1
/usr/doc/website/content/en/status/report-2022-10-2022-12/accessibility.adoc:3
/usr/doc/website/content/en/status/report-2023-04-2023-06/kde.adoc:2
/usr/doc/website/content/en/status/report-2023-07-2023-09/portoptscli.adoc:5
%

R.I.P. ✟ hselasky@
 
Hi guys! scotia tingo ondra_knezour T-Aoki Cath O'Deray

Thank you for the feedback.

I don't read the forum often. You can write me an email at asiciliano@ for suggestions and feature requests.
I've abandoned my open source projects for months (health and family issues ?, that's life). But now I'm starting to work again, I hope to reply to email and to add new features quickly.

The man page for ports-mgmt/portconfig tells me I can use NO_COLOR=1 which is an improvement (for me), but is there a way to keep the dialog colourised but with colours of my choosing?
Thanks,
Scott

ports used to use ports-mgmt/dialog4ports, but that is replaced with ports-mgmt/portconfig now. From the portconfig(1) man page, it doesn't look like colors can be easily changed.

OK! I' ll add new Environment Variables to set themes, of course also documentation.

It looks like portconfig uses bsddialog(3), which has some support for themes, but quick glance over man pages doesn't look like there is easy method to pass user preferences to the underlying library.

Yes, portconfig uses libbsdialog for TUI. The library has dynamic theming (colors are not hardcoded). Please refer to the "Theme" and "EXAMPLES" subsections in the manual bsddialog(3)-15.0. Briefly the library provides 3 default themes: BSDDIALOG_THEME_BLACKWHITE, BSDDIALOG_THEME_FLAT, BSDDIALOG_THEME_3D to set via bsddialog_set_default_theme(). Otherwise, bsddialog_set_theme() allows to set a custom struct bsddialg_theme.
The client-utilities of bsddialog(3) have to use the previous functions to provide theming features for users. For example bsddialog(1) provides env NO_COLOR, env BSDDIALOG_THEMEFILE <file>, --load-theme <file>, --save-theme <file>, and file $HOME/bsddialog.conf if exists.

OK, I' ll add some features also to portconfig to set themes.


You shoud see bsddialog(1) rather than bsddialog(3).
But as SirDice pointed, what is responsible for ports configuration dialog is ports-mgmt/portconfig. It had environment variable to select a theme from (limited) candidates. But unfortunately, it was dropped at version 0.6.

OK, I'll re-add the feature.


Thanks for confirming all.

Does the lack of customisability (other than B&W) raise accessibility concerns?

Exactly. So customizability is important.
And in this aspect, screen reader for vt/sc is wanted (I've lost track of it, though). But for (n)curses things, it needs to ignore ESC sequences properly. And supports for CJK languages should be quite difficult.



Possibly I'm overlooking something, but unfortunately, there's none, as far as I know.

Not that I can see.

View attachment 20343For base, there's a wish list.

Code:
% rg --count --sort path -i accessibility /usr/doc
/usr/doc/documentation/content/de/books/porters-handbook/makefile/_index.adoc:1
/usr/doc/documentation/content/el/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/en/books/design-44bsd/_index.adoc:1
/usr/doc/documentation/content/en/books/design-44bsd/_index.po:1
/usr/doc/documentation/content/en/books/faq/_index.adoc:1
/usr/doc/documentation/content/en/books/faq/_index.po:1
/usr/doc/documentation/content/en/books/fdp-primer/asciidoctor-primer/_index.adoc:2
/usr/doc/documentation/content/en/books/fdp-primer/asciidoctor-primer/_index.po:2
/usr/doc/documentation/content/en/books/fdp-primer/overview/_index.adoc:1
/usr/doc/documentation/content/en/books/fdp-primer/overview/_index.po:1
/usr/doc/documentation/content/en/books/porters-handbook/makefiles/_index.adoc:1
/usr/doc/documentation/content/en/books/porters-handbook/makefiles/_index.po:1
/usr/doc/documentation/content/en/books/porters-handbook/special/_index.adoc:8
/usr/doc/documentation/content/en/books/porters-handbook/special/_index.po:7
/usr/doc/documentation/content/fr/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/hu/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/it/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/ja/books/porters-handbook/makefile/_index.adoc:1
/usr/doc/documentation/content/nl/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/pt-br/books/fdp-primer/asciidoctor-primer/_index.po:2
/usr/doc/documentation/content/pt-br/books/fdp-primer/overview/_index.po:1
/usr/doc/documentation/content/pt-br/books/porters-handbook/makefiles/_index.adoc:1
/usr/doc/documentation/content/pt-br/books/porters-handbook/special/_index.adoc:4
/usr/doc/documentation/content/ru/books/porters-handbook/makefiles/_index.adoc:1
/usr/doc/documentation/content/zh-cn/books/handbook/mirrors/_index.adoc:1
/usr/doc/documentation/content/zh-cn/books/porters-handbook/makefile/_index.adoc:1
/usr/doc/documentation/content/zh-tw/books/porters-handbook/makefiles/_index.adoc:1
/usr/doc/documentation/content/zh-tw/books/porters-handbook/special/_index.adoc:7
/usr/doc/documentation/static/pgpkeys/max.key:1
/usr/doc/shared/en/mailing-lists.adoc:3
/usr/doc/shared/es/mailing-lists.adoc:3
/usr/doc/shared/ja/mailing-lists.adoc:3
/usr/doc/website/content/en/internal/doceng.adoc:1
/usr/doc/website/content/en/news/2012-compromise/md5.sums.20121118.txt:2
/usr/doc/website/content/en/news/2012-compromise/sha256.sums.20121118.txt:2
/usr/doc/website/content/en/status/report-2021-01-2021-03/discord.adoc:1
/usr/doc/website/content/en/status/report-2022-01-2022-03/_index.adoc:1
/usr/doc/website/content/en/status/report-2022-01-2022-03/accessibility.adoc:7
/usr/doc/website/content/en/status/report-2022-01-2022-03/intro.adoc:1
/usr/doc/website/content/en/status/report-2022-01-2022-03/kde.adoc:1
/usr/doc/website/content/en/status/report-2022-07-2022-09/kde.adoc:1
/usr/doc/website/content/en/status/report-2022-10-2022-12/_index.adoc:1
/usr/doc/website/content/en/status/report-2022-10-2022-12/accessibility.adoc:3
/usr/doc/website/content/en/status/report-2023-04-2023-06/kde.adoc:2
/usr/doc/website/content/en/status/report-2023-07-2023-09/portoptscli.adoc:5
%

R.I.P. ✟ hselasky@

Fortunately The FreeBSD Foundation is sponsoring a work for "Vision Accessibility".
I had a talk during the last DevSummit: Vision Accessibility a Roadmap for a Starting Point.
For the same work jrm@ wrote a post in the Foundation site: Vision Accessibility Subsystem for FreeBSD.

For any question you can contact me or (for public discussion) Accessibility mailing lists. For portconfig we have also a Wiki Page, I'll add this post in the "Feature requests" table.

Please let me know any problems and/or tips.
Alfonso
 
Hi!

I added theming features to portconfig 0.6.2. To check your version:
% portconfig -v
portconfig version: 0.6.2 (libbsddialog: 1.0.4).


Briefly the new features are:
THEME
The theme configuration in order of priority is as follows:

Check Terminal Colors.
portconfig checks if the environments has colors, otherwise sets
black and white theme.

env NO_COLOR=<something>
If present and not an empty string sets black and white theme.

env PORTCONFIG_THEMEFILE=<file>
if <file> exists and is well-formed its theme is set. Otherwise
the default theme is set.

/usr/local/etc/portconfig/theme.conf
if the file exists and is well-formed its theme is set.
Otherwise the default theme is set.

Otherwise
Default theme file set.

These options are mutually exclusive.


To know more:
% man 1 portconfig
The online manual page has not been updated yet.

Please let me know any problems or tips to improve portconfig. Of course I' ll add these features also to other TUI utilities in BASE.
 
Hi!

I added theming features to portconfig 0.6.2. To check your version:
% portconfig -v
portconfig version: 0.6.2 (libbsddialog: 1.0.4).


...
Thanks alfonsosiciliano, these enhancements are great additions and make the ports experience much more user friendly. I only recently installed a 14.3R and have been toying with the colour schemes. I can finally read the highlighted text!
 
Back
Top