summaryrefslogtreecommitdiff
path: root/nonguix
AgeCommit message (Expand)Author
2024-06-21build-system/chromium-binary: Remove references to source.•••Previously the resulting store object would also depend on the source. * nonguix/build-system/chromium-binary.scm (lower): Remove reference to source in #:wrap-inputs. Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de> Tested-by: Jonathan Brielmaier <jonathan.brielmaier@web.de> Yelninei
2024-03-30nonguix: chromium-binary: Use search-path-as-list from (guix build utils).•••We rely on the upstream implementation to avoid duplicating effort. * nonguix/build/chromium-binary-build-system (install-wrapper): Use search-path-as-list; * nonguix/build/utils.scm (build-paths-for-input): remove variable; (build-paths-from-inputs): remove variable. Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de> Giacomo Leidi
2024-03-22nonguix: multiarch-container: Link fonts to /usr/share/fonts.•••* nonguix/multiarch-container.scm (make-internal-script): Link fonts to /usr/share/fonts. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Hilton Chain
2024-03-22nonguix: multiarch-container: Expose /etc/os-release.•••* nonguix/multiarch-container.scm (make-container-wrapper): Expose /etc/os-release. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Hilton Chain
2024-03-22nonguix: multiarch-container: Preserve TZ and TZDIR.•••* nonguix/multiarch-container.scm (make-container-wrapper): Preserve TZ and TZDIR. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Co-authored-by: John Kehayias <john.kehayias@protonmail.com> Hilton Chain
2024-03-22multiarch-container: make-internal-script: Add VDPAU paths to LD_LIBRARY_PATH.•••* nonguix/multiarch-container.scm (make-container-wrapper): Don't set VDPAU_DRIVER_PATH. (make-internal-script): Add VDPAU paths to LD_LIBRARY_PATH. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Hilton Chain
2024-03-22multiarch-container: make-container-wrapper: Set LIBVA_DRIVERS_PATH.•••* nonguix/multiarch-container.scm (make-container-wrapper): Set LIBVA_DRIVERS_PATH and preserve it. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Hilton Chain
2024-03-22nonguix: multiarch-container: Share Wayland environment.•••* nonguix/multiarch-container.scm (make-container-wrapper): Preserve environment variables and share socket for Wayland. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Hilton Chain
2024-03-22nonguix: multiarch-container: Symlink EGL configurations.•••* nonguix/multiarch-container.scm (make-internal-script): Symlink EGL configurations. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Hilton Chain
2024-03-22nonguix: multiarch-container: Symlink all available Vulkan layers.•••* nonguix/multiarch-container.scm (make-internal-script): Symlink all available Vulkan layers. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Hilton Chain
2024-03-22multiarch-container: make-internal-script: Improve icd-symlink.•••* nonguix/multiarch-container.scm (make-internal-script)[icd-symlink]: Allow custom directory. Rename to… [file-symlink]: …this. [get-files]: New procedure to simplify find-files use. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Hilton Chain
2024-01-31nongnu: multiarch-container: Fix preserved-env not being used.•••* nonguix/multiarch-container.scm (make-container-wrapper): Use ngc-preserved-env. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Co-authored-by: John Kehayias <john.kehayias@protonmail.com> Michal Atlas
2024-01-10nonguix: multiarch-container: Allow extra shared directories.•••Basic fix for #237. This allows exposing other directories or drives to the nonguix container, for example to add additional library locations to Steam, by setting $GUIX_SANDBOX_EXTRA_SHARES. * nonguix/multiarch-container.scm (make-container-wrapper): Use environment variable $GUIX_SANDBOX_EXTRA_SHARES to pass extra directories to share with the container. John Kehayias
2024-01-06nonguix: multiarch-container: Set LD_LIBRARY_PATH inside container.•••Fixes #303. Previously LD_LIBRARY_PATH was being set before the container was launched, which could cause issues on some foreign distros where this alters what is loaded from an FHS structure. This was only meant to be set inside the container, though this didn't cause any issues on a Guix System. * nonguix/multiarch-container.scm (make-container-wrapper): Move setting LD_LIBRARY_PATH from here ... (make-internal-script): ... to here. John Kehayias
2024-01-04nongnu: multiarch-container: Fix missing module on foreign distros.•••Fixes #277. See discussion in above issue for details and some education on what went wrong here. In short, we didn't capture the needed (guix build utils) module in the container script. On a Guix System this didn't cause any problems as guix modules are found through set Guile environment variables. But on a foreign distro these weren't set without hacky workarounds. This prevented Steam from launching with a "no code for module" error. * nonguix/multiarch-container.scm (make-container-wrapper)[make-container-wrapper]: Use 'with-imported-modules' for (guix build utils). John Kehayias
2024-01-04nonguix: binary: Cleanup when an unknown binary extension is detected.•••The binary-unpack phase suffered from a problem for unknown binary file extensions, see: !336 (comment 1709385147) . This patch fixes the incorrect behavior by effectively restoring the state of the directory tree before the phase. * nonguix/build/binary-build-system.scm (binary-unpack): Restore the environment as it was before this phase. * nongnu/packages/clojure.scm (clj-kondo)[arguments]: No longer delete 'binary-unpack phase. * nongnu/packages/game-development.scm (libsteam)[arguments]: dito. Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de> Giacomo Leidi
2024-01-03nongnu: Add heroic.•••* nongnu/packages/game-client.scm (heroic-client, heroic-extra-client-libs, heroic-container, heroic-nvidia-container, heroic, heroic-nvidia): New variables. * nonguix/multi-arch-container.scm (make-container-wrapper): Preserve "^SSL_" for heroic to use curl. (make-internal-script): Add symlink for "/usr/share/glib-2.0". John Kehayias
2024-01-03nongnu: steam-nvidia: Fix launching .desktop files.•••Steam installs .desktop files that refer to an executable called `steam'. Installing steam-nvidia as the `steam-nvidia' executable breaks this, which means Steam cannot be launched from its desktop icon. This also applies to .desktop files for individual games generated by Steam, when they are copied from `<ngc-sandbox-home>/.local/share/applications/'. Fix this by always installing Steam's wrapper executable as `steam'. We add a new field using "binary" to keep things shorter. This has the downside that the `steam' and `steam-nvidia' packages cannot be installed in the same profile, but likely people wouldn't want to do this anyway. Fixes #294. * nongnu/packages/steam-client.scm (steam-nvidia-container)[binary-name]: Specify for compatibility with .desktop files. * nonguix/multiarch-container.scm (<nonguix-container>)[binary-name, ngc-binary-name]: New field and accessor. (nonguix-container->package): Use it to set correct executable name. (make-internal-script): Use it in message. Co-authored-by: John Kehayias <john.kehayias@protonmail.com> Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Timo Wilken
2023-12-28nonguix: binary: Automatically detect and unpack .deb files.•••A new binary-unpack phase is added to the binary-build-system. When a supported binary file is detected as the only file after the unpack phase it is then decompressed in a specific directory. * nonguix/build/binary-build-system.scm (deb-file?): new variable; (unpack-deb): new variable; (binary-unpack): new variable; (%standard-phases): use the new phase. Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de> Giacomo Leidi
2023-11-11nonguix: multiarch-container: Make locale usable by pressure-vessel.•••Steam's pressure-vessel startup time can be improved by not having to generate locales. So make sure locales are in and used by the pressure-vessel container by linking the expected location of /usr/lib/locale (presumably so that pressure-vessel will capture them) and setting $GUIX_LOCPATH. * nonguix/multiarch-container.scm (make-container-wrapper): Preserve and set GUIX_LOCPATH. (make-internal-script): Add symlink for /usr/lib/locale. John Kehayias
2023-11-11nonguix: multiarch-container: Preserve MANGOHUD.•••Now one can have set MANGOHUD=1 in their environment to have all Steam games launch with MangoHud, rather than always setting this per game launch settings. Likewise for MANGOHUD_CONFIG for configuration. * nonguix/multiarch-container.scm (make-container-wrapper): Preserve MANGOHUD environment variables. John Kehayias
2023-11-11nonguix: multiarch-container: Set LD_LIBRARY_PATH (for steam).•••Setting $LD_LIBRARY_PATH in the container allows for non-Steam games added to Steam to launch properly with Proton. Otherwise they don't make it to the pressure-vessel container as it seems they start in an environment where the rest of our setup is not active (e.g. game will fail to launch with an error about being unable to load libGL.so.1). * nonguix/multiarch-container.scm (make-container-wrapper): Preserve LD_LIBRARY_PATH and set it. John Kehayias
2023-11-11nonguix: multiarch-container: Remove pressure-vessel workaround.•••Setting $PRESSURE_VESSEL_FILESYSTEMS_RO to "/gnu/store" is no longer needed for Steam as the fix has been merged upstream. Users can still set this environment variable (preserved in the container) if needed. * nonguix/multiarch-container.scm (make-container-wrapper): Remove setting $PRESSURE_VESSEL_FILESYSTEMS_RO. John Kehayias
2023-10-14nongnu: steam: Fix to work with newer mangohud.•••In 0.7.0 of MangoHud the vulkan implicit layers have different names for 32- and 64-bit so we no longer need a workaround. * nonguix/multiarch-container.scm (make-internal-script): No longer create /usr/share/vulkan/implicit_layer.d. Symlink instead directly from guix-env. Remove vulkan layer renaming from mangohud. John Kehayias
2023-09-03nongnu: steam: Fix missing tray icon.•••Finally, it's back! Using something like snixembed worked around this before by using a different tray icon format. * nongnu/packages/steam-client.scm (steam-client-libs): Add gdk-pixbuf. * nonguix/multiarch-container.scm (make-internal-script): Add symlink to /usr/share/mime. John Kehayias
2023-09-03nonguix: chromium-binary-build-system: Use gcc:lib.•••Effectively reverts changes that came from 9d58bb6e3e93a444d35bf62d4ca98a126ae4f295 which doesn't seem to be needed anymore. These got carried into chromium-binary-build-system when it was introduced. We need libstdc++ from the gcc:lib package, which is hidden from users but directly accessible from the build system. The library from make-libstdc++ has missing symbols compared to the one from gcc:lib. The addition of libgccjit seems to also be unneeded from this change and increases the closure of e.g. signal-desktop by nearly 10% or 200 MiB. Fixes #276 and #279. * nonguix/build-system/chromium-binary.scm (lower)[host-inputs]: Use gcc:lib again and remove libgccjit. John Kehayias
2023-07-15nongnu: steam: Allow workaround of white box bug.•••See <https://gitlab.com/nonguix/nonguix/-/issues/267> and <https://github.com/ValveSoftware/steam-for-linux/issues/9306>. * nonguix/multiarch-container.scm (make-container-wrapper): Preserve QT_X11_NO_MITSHM to allow setting to 1 to workaround an upstream bug where only a white box is displayed. John Kehayias
2023-07-12nonguix: Add chromium-binary-build-system.•••This build system is an extension to the binary-build-system, designed to abstract some common boilerplate necessary for packaging Chromium based software. * nonguix/build-system/chromium-binary.scm: New file; * nonguix/build/chromium-binary-build-system.scm: new file; * nonguix/build/utils.scm (build-paths-for-input): new variable; (build-paths-from-inputs): New variable. Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de> Giacomo Leidi
2023-06-29nonguix: glibc-for-fhs: Remove variable.•••* nonguix/multiarch-container.scm (glibc-for-fhs): Remove. (fhs-min-libs): Use upstream glibc-for-fhs. John Kehayias
2023-05-29nongnu: Export steam containers and minor refactor.•••nonguix: Make container actually respect the ngc-shared and ngc-exposed fields. * nongnu/packages/steam-client.scm (steam-container): New variable. This is to export the container definition from steam. (steam-nvidia-container): New variable. This is the container for steam-nvidia and now inherits from steam-container. (steam, steam-nvidia): Container definitions moved to steam-container and steam-nvidia-container. * nonguix/multiarch-container.scm (make-container-wrapper): Add ngc-exposed and ngc-shared to expose and share lists. Signed-off-by: ison <ison@airmail.cc> Elijah Malaby
2023-05-29nonguix: Remove unnecessary modules from multiarch-container scripts.•••* nonguix/multiarch-container.scm (packages->ld.so.conf)[computed-file]: Remove with-imported-modules and use-modules. (make-container-wrapper)[program-file]: Remove with-imported-modules. Signed-off-by: ison <ison@airmail.cc> Attila Lendvai
2023-05-15nonguix: Move nonguix-container to its own module.•••* nonguix/multiarch-container.scm: New file. This module makes the container code from steam-client.scm usable by other packages which require multiarch support (which is not currently supported by the upstream Guix FHS container). Signed-off-by: ison <ison@airmail.cc> Giacomo Leidi
2022-12-19nonguix: Add missing copyright line.•••This is a follow up to daa0dda76ddd869c8b2866fcf2866667b69461ad. * nonguix/utils.scm: Add missing copyright line for myself. Jonathan Brielmaier
2022-12-19*.scm: Use SPDX license identifiers.•••Fixes https://gitlab.com/nonguix/nonguix/-/issues/224 * *.scm: Use SPDX license identifier and remove obsolete license statement. Jonathan Brielmaier
2022-06-18nonguix: binary-build-system: Fix use of undefined variable.•••Follow up to a0079cf1bd8ef707ab9e15a0e249cbd34f157ae4. * nonguix/build/binary-build-system.scm (patchelf)[make-rpath]: Use 'name' instead of undefined 'input-or-output'. Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de> Guillaume Le Vaillant
2022-05-05nonguix: binary-build-system: Add copyright header for Attila.•••Follow up to a0079cf1bd8ef707ab9e15a0e249cbd34f157ae4. Jonathan Brielmaier
2022-05-05nonguix: Extend patchelf-plan syntax with optional path.•••Makes it possible to define entries like the following in the patchelf-plan: ("the-binary" ("glibc" ("nss" "/lib/nss"))) * nonguix/build/binary-build-system.scm (maybe-make-rpath, make-rpath): New functions and use them. Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de> Attila Lendvai
2021-12-13nonguix: Update binary build system to pass sources.•••* nonguix/build-system/binary.scm (lower): Remove #:source from 'private-keywords'. Jelle Licht
2021-12-13nonguix: Update binary build system to return a monadic procedure.•••Fixes https://gitlab.com/nonguix/nonguix/-/issues/146. * nonguix/build-system/binary.scm (binary-build): Update it. Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de> Josselin Poiret
2020-12-22nongnu: Adapt linux-initrd to populate-store changes.•••Fixes https://gitlab.com/nonguix/nonguix/-/issues/81. Reported-by: Jean-Baptiste Volatier. Depends on https://git.savannah.gnu.org/cgit/guix.git/commit/?id=d88ff09. * nonguix/modules.scm (import-nonguix-module?): New variable. Export it instead of nonguix-module-name?. * nongnu/system/linux-initrd.scm (microcode-initrd): Use import-nonguix-module? instead of nonguix-module-name?. (combined-initrd): Dito. Jonathan Brielmaier
2020-07-02nonguix: Allow disabling passing $0 in make-wrapper.•••* nonguix/build/utils.scm (make-wrapper): Add skip-argument-0? keyword. Julien Lepiller
2020-06-22utils: Remove 'make-desktop-entry-file' function now that it's upstream.•••* nonguix/build/utils.scm (make-desktop-entry-file): Remove function. Pierre Neidhardt
2020-05-17nonguix: Set default build-inputs priority higher than libc32 in binary-build...•••* nonguix/build-system/binary.scm (lower): Swap native-inputs and libc32 in build-inputs. In particular, this fixes static linking with GCC. Pierre Neidhardt
2020-05-15nonguix: Don't rename to32 package to avoid useless rebuilds.•••* nonguix/utils.scm (to32): Reuse inherited `name' field. Pierre Neidhardt
2020-03-13nonguix: Use name when provided in unredistributable-url-fetch.•••* nonguix/download.scm (unredistributable-url-fetch): Use name when provided. Julien Lepiller
2020-02-29nonguix: Use the install-plan of the copy-build-system in the binary-build-sy...•••* nonguix/build-system/binary.scm (lower): Adapt the default value of the install plan. * nonguix/build/binary-build-system.scm (new-install): New procedure. (old-install): Rename former `install' procedure to this. (install): New procedure that dispatches over old-install and new-install. Pierre Neidhardt
2020-01-16nonguix: Add support for libraries for an extension other than ".so".•••* nonguix/build-system/binary.scm (binary-build): Don't fail when setting the interpreter of libraries that don't contain ".so" in their name. Pierre Neidhardt
2020-01-08linux-initrd: Don't close over core Guile modules.•••* nonguix/modules.scm: New file. * nongnu/system/linux-initrd.scm: Limit 'source-module-closure' to guix and nonguix modules only. Alex Griffin
2020-01-08utils: Add 'concatenate-files' function.•••* nonguix/build/utils.scm (concatenate-files): New function. Alex Griffin
2019-12-29nonguix: Remove spurious getenv* export.•••* nonguix/utils.scm: Do it. Pierre Neidhardt