DTAPPGATHER(1)

πŸ“¦
version 2.5.3 Β· 2 versions
, in nixos 26.05

πŸ’– dtappgather πŸ’–

hey bestie, welcome to the dtappgather(user cmd) manual page β€” yes that's the whole manual name, we're keeping it, it's part of the lore πŸŽ€


✨ NAME ✨

dtappgather β€” gather application files for presentation by the Application Manager


🌸 SYNOPSIS 🌸

dtappgather [-r]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so picture this: the Application Manager is the thing that shows you your personal, system, and factory applications in one easy-to-access window. iconic behaviour honestly. and here's the tea β€” the Application Manager is literally just a special File Manager view of a subdirectory that gets built on a per-user, per-session basis. and dtappgather? she's the one who creates and refreshes that user's Application Manager subdirectory. main character energy fr fr πŸ’…

dtappgather runs at login, and also whenever the user invokes the ReloadApps action. your very own subdirectory for the Application Manager, /var/dt/appconfig/appmanager/$DTUSERSESSION, gets opened when you press the Application Manager control on the Front Panel. slay.

so the sequence of events goes like this:

  • when the user logs in, the Xsession script sources in the Xsession.d script that sets the DTUSERSESSION environment variable.
  • Xsession then invokes the dtsearchpath utility to set the DTAPPSEARCHPATH environment variable.
  • after dtsearchpath returns with the DTAPPSEARCHPATH assembled, the Xsession script calls dtappgather.
  • as her main function, dtappgather traverses the DTAPPSEARCHPATH, examining each possible source of applications and, where there are existing source subdirectories, creates symbolic links between the source and the user's DTUSERSESSION subdirectory.
  • finally, dtappgather turns off write permissions on the resulting subdirectory to ensure its integrity. protective queen 🫢

a similar sequence occurs when the user double-clicks the ReloadApps action after logging in.

although the value of the DTAPPSEARCHPATH can be modified in a local shell, the Application Manager view based on its value is not functional until you log out and log back in. and since this can be a tedious venture 😭 you can verify the Application Manager view by executing dtsearchpath(1) and dtappgather in the local shell.

for example, to add host trout as a system-wide application server, set the dtsearchpath(1) input environment variable, DTSPSYSAPPHOSTS:

DTSPSYSAPPHOSTS=trout:

then, execute dtsearchpath(1) to update the DTAPPSEARCHPATH environment variable:

eval `dtsearchpath`

finally, gather the new applications by executing dtappgather. the Application Manager will show the new application groups but will not be functional. πŸ™ˆ


πŸ’œ OPTIONS πŸ’œ

  • -r β€” causes dtappgather to retain the previous contents of the Application Manager, although discarding broken links. at login, dtappgather destroys the user's previous DTUSERSESSION subdirectory before creating a new one. at ReloadApps time, the -r option is used to minimize visual disruption of any opened Application Manager views.

⭐ RETURN ⭐

the command always returns 0 (zero) for successful completion. no drama, no cap, just zero. πŸ’€


🌈 ENVIRONMENT 🌈

  • DTAPPSEARCHPATH β€” set by the dtsearchpath(1) utility. DTAPPSEARCHPATH controls the places where dtappgather will gather applications. the default locations consist of $HOME/.dt/appmanager (for end users), /nix/store/6waxpwr8lzfzc9ka48gl7yh60rqvlkdb-cde-2.5.3/etc/appconfig/appmanager/$LANG (for system administrators), and /nix/store/6waxpwr8lzfzc9ka48gl7yh60rqvlkdb-cde-2.5.3/appconfig/appmanager/$LANG (for factory applications).
  • DTUSERSESSION β€” controls the location of the end user's subdirectory where the Application Manager will be rooted. the subdirectory name includes both the user's $LOGNAME and $DISPLAY in order to ensure the user's view of the Application Manager remains consistent across sessions. consistent queen ✨

πŸ“ LOCALES πŸ“

when searching for system administrator and factory default Application Manager files, dtappgather always uses a value of $LANG equal to C.

when the user picks a language at login, the corresponding $LANG subdirectories are searched. if multiple $LANG subdirectories exist in /nix/store/6waxpwr8lzfzc9ka48gl7yh60rqvlkdb-cde-2.5.3/etc/appconfig/appmanager, all $LANG subdirectories will appear in the Application Manager. however, if multiple $LANG subdirectories exist in /nix/store/6waxpwr8lzfzc9ka48gl7yh60rqvlkdb-cde-2.5.3/appconfig/appmanager then the language-specific subdirectory based on the current value of $LANG is chosen instead of the C subdirectory.

regardless of locale, all the action files that exist under the user's $HOME/.dt/appmanager subdirectory will be symbolically linked to the user's Application Manager subdirectory. all of them. every single one. 🧚


πŸŽ€ FILES πŸŽ€

  • /nix/store/6waxpwr8lzfzc9ka48gl7yh60rqvlkdb-cde-2.5.3/bin/Xsession β€” among its tasks at login, the Xsession script invokes dtsearchpath(1), and then dtappgather.
  • /var/dt/appconfig/appmanager/$DTUSERSESSION β€” this subdirectory is where dtappgather assembles the Application Manager view for the particular user and CDE session.

πŸ”₯ NOTES πŸ”₯

in the case of multiple search locations having the same name, dtappgather picks only the first and discards the rest. for example, if the system administrator sets DTSPSYSAPPHOSTS=tuna:,trout: and if both hosts, tuna and trout, have an /nix/store/6waxpwr8lzfzc9ka48gl7yh60rqvlkdb-cde-2.5.3/etc/appconfig/appmanager/C/Editors folder, then only the Editors folder from tuna (the first host) will appear in the user's Application Manager.

after building the user's DTUSERSESSION, dtappgather turns off write permissions on that subdirectory to disallow alteration by the end user. although the end user can resize the window and rearrange the icons within the window, the Application Manager is intended to be a read-only source of local and networked applications. πŸ‘‘


🌟 SEE ALSO 🌟

dtappintegrate(1), dtsearchpath(1).


ok that's the whole page bestie, you ate that reading, go touch some grass and then come back and run dtappgather πŸ’–

and that's the sign-off from yours truly β€” dtappgather(user cmd), that same manual name and version-and-date energy you saw at the bottom, now delivered with a lil sparkle instead of a boring footer. bye bestie πŸ¦‹πŸŒΈπŸ’…

πŸ“¦ where this page comes from