Skip to content

steam: add gsettings-desktop-schemas to FHS env#173811

Closed
Moredread wants to merge 1 commit intoNixOS:masterfrom
Moredread:steam-hadean
Closed

steam: add gsettings-desktop-schemas to FHS env#173811
Moredread wants to merge 1 commit intoNixOS:masterfrom
Moredread:steam-hadean

Conversation

@Moredread
Copy link
Contributor

@Moredread Moredread commented May 20, 2022

Description of changes

Add gsettings-desktop-schemas to FHS env

Needed by Hadean Lands, which uses Lectrote, a GTK application. Without
schemas saving and loading crashes the game.

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 22.05 Release Notes (or backporting 21.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

@github-actions github-actions bot added the 6.topic: steam Steam game store/launcher (store.steampowered.com) label May 20, 2022
@Moredread
Copy link
Contributor Author

I've taken the export statement from another package that uses a fhs and sets up the schemas manually. It works but I'm not sure of this is correct for a multiarch installation.

@Moredread Moredread requested a review from jonringer May 20, 2022 22:14
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not needed since #161739

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It doesn't work without it. Any idea what could cause that?

@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. labels May 22, 2022
@Moredread Moredread requested a review from Artturin May 22, 2022 21:52
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move this to commontargetpkgs and add(don't move) gtk3 there

Copy link
Contributor Author

@Moredread Moredread May 23, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still haven't gotten it to work.

steam-run has a very similar environment, so I used it to test a few things;

nix run -f . steam-run -- bash -c export
(...)
declare -x XDG_DATA_DIRS="/nix/store/lmpz9axrfpir2ig76vdl0nddjr3w53gv-desktops/share:/home/addy/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/home/addy/.nix-profile/share:/etc/profiles/per-user/addy/share:/nix/var/nix/profiles/default/share:/run/current-system/sw/share:/run/opengl-driver/share:/run/opengl-driver-32/share"

I.e. /usr/share is missing.

gsettings list-schemas also doesn't show any schemas

The profiles are installed though, so that worked:

nix run -f . steam-run -- ls -lah /usr/share/gsettings-schemas
(...)
dr-xr-xr-x 1 nobody nogroup  16 Jan  1  1970 gsettings-desktop-schemas-42.0
dr-xr-xr-x 1 nobody nogroup  16 Jan  1  1970 gtk+3-3.24.33

When I add /usr/share to XDG_DATA_DIRS everything works. Shouldn't it be there by default though?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can confirm @Moredread's findings, I'm currently adding gsettings-desktop-schemas and hicolor-icon-theme to steam's extraPkgs, but file pickers are still not working in my games. I get the same issues as above but using the launch command XDG_DATA_DIRS="$XDG_DATA_DIRS:/usr/share/" %command% in addition to adding the two packages fixes it. Weird~

Needed by Hadean Lands, which uses Lectrote, a GTK application. Without
schemas saving and loading crashes the game.
@Moredread Moredread marked this pull request as draft May 23, 2022 19:59
@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jan 8, 2023
@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jan 18, 2023
@Moredread Moredread closed this Jun 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: steam Steam game store/launcher (store.steampowered.com) 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants