Firefox loads libspeechd.so.2 during runtime using PR_LoadLibrary and it fails
to locate the library in the store. Fix is to add extra phase that patches
the file to load the library using an absolute path.
* nongnu/packages/mozilla.scm (firefox-esr)
[phases]{'patch-SpeechDispatcherService.cpp}: New phase.
[inputs]: Add `speech-dispatcher`.
Fixes: https://gitlab.com/nonguix/nonguix/-/issues/284
Tested-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Adding linux@6.5 but not changing the default linux to this version until
upstream does as well.
* nongnu/packages/linux.scm (linux-6.5): New variable.
Co-authored-by: John Kehayias <john.kehayias@protonmail.com>
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
Inherited hplip package was updated to 3.23.8 in commit
4a8c51c7be9ea22803a79d7214571718e5ff9bf2 of guix.
* nongnu/packages/printers.scm (hplip-plugin)[native-inputs]: Update sha256
hash for hplip-plugin.
Closes#248.
* nongnu/packages/fonts.scm (apple-font): New function
(font-apple-sf-pro): New variable.
(font-apple-sf-compact): New variable.
(font-apple-sf-mono): New variable.
(font-apple-sf-arabic): New variable.
(font-apple-new-york): New variable.
(font-apple-sf-symbols): New variable.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
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.
Fixes#281.
Use the same fix as when this happened before with expat and fontconfig, as in
commit 3df99d7769.
* nongnu/packages/steam-client.scm (libxdamage-fixed, mesa-fixed): New
variables.
(steam-client-libs): Replace mesa with mesa-fixed.
* nongnu/packages/mozilla.scm (%firefox-esr-build-id, %firefox-build-id): Fix
typos in the comments.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/mozilla.scm (firefox-esr): Update to 115.1.0esr.
[inputs]: Use `icu4c-73`.
[native-inputs]: Use `node-lts` and `rust-cbindgen-0.24`.
(firefox)[inputs]: Remove section.
[native-inputs]: No longer replace `node` and `rust-cbindgen-0.24` as
firefox-esr uses them now in recent enough versions.
Fixes CVE-2022-40982, CVE-2022-41804 and CVE-2023-23908.
* nongnu/packages/linux.scm (intel-microcode): Update to 20230808.
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
Fix launching signal-desktop via its .desktop file (e.g. in a desktop
environment or launcher). This also affects element-desktop (to be fixed in
next commit).
Fixes#274.
* nongnu/packages/messaging.scm (signal-desktop)[phases]{unpack}: Fix the
.desktop file binary location to be 'bin' rather than 'lib/Signal'.
Inherited hplip package was updated to 3.23.5 in commit
57fe5b2338dfbb150d3921e9da3d9719fef6c9d9 of guix.
* nongnu/packages/printers.scm (hplip-plugin)[native-inputs]: Update sha256
hash for hplip-plugin.
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
Adding linux@6.4 but not changing the default linux to this version until
upstream does as well.
* nongnu/packages/linux.scm (linux-6.4): New variable.
* nongnu/packages/firmware.scm (dump-file-chunk): New function.
(facetimehd-firmware): New variable.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (linux-xanmod-lts-version,linux-xanmod-lts-source):
Update to 6.1.38.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (linux-xanmod-version,linux-xanmod-source): Update
to 6.4.3.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/electron.scm (define-module): Remove no longer
required modules
(electron)[build-system]: Use chromium-binary-build-system.
[patchelf-plan]: Drop it since the build system figures it out from the
wrapper plan;
[wrapper-plan]: New argument;
[phases]: Adjust to chromium-build-system;
[inputs]: Drop the inputs provided by the build system.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/engineering.scm (lycheeslicer) [build-system]: Use
chromium-binary-build-system;
[patchelf-plan]: Drop it since the build system figures it out from the
wrapper plan;
[wrapper-plan]: New argument;
[phases]: Adjust to chromium-build-system;
[inputs]: Drop the inputs provided by the build system.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/messaging.scm (signal-desktop) [build-system]: Use
chromium-binary-build-system;
[patchelf-plan]: Drop it since the build system figures it out from the
wrapper plan;
[wrapper-plan]: New argument;
[phases]: Adjust to chromium-build-system;
[inputs]: Drop the inputs provided by the build system.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/messaging.scm (element-desktop) [build-system]: Use
chromium-binary-build-system;
[patchelf-plan]: Drop it since the build system figures it out from the
wrapper plan;
[wrapper-plan]: New argument;
[phases]: Adjust to chromium-build-system;
[inputs]: Drop the inputs provided by the build system.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/chrome.scm (make-google-chrome) [patchelf-inputs]:
Drop them since the build system adds all inputs to the patchelf plan;
[build-system]: Use chromium-binary-build-system;
[patchelf-plan]: Drop it since the build system figures it out from the
wrapper plan;
[wrapper-plan]: New argument;
[phases]: Adjust to chromium-build-system;
[inputs]: Drop the inputs provided by the build system.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/ncurses.scm (ncurses-rollup-patch): New variable.
(ncurses-5): Backport changes from upstream guix repo. Note that ncurses-5
fails to build with the new C++17 default, so we also need to explicitly force
C++11.
(ncurses/tinfo-5): Use gexp and remove outdated comment.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (linux-xanmod-lts-version)
(linux-xanmod-lts-revision,linux-xanmod-lts-source,linux-xanmod-lts): New
variables.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
There is a warning spammed about missing 'xdg-user-dir' which doesn't seem to
cause any problems but let's add the missing input just in case.
* nongnu/packages/steam-client.scm (steam-client-libs): Add xdg-user-dirs.
This is needed to fix `guix pull' on non-x86 platforms.
* nongnu/packages/nvidia.scm (nvidia-driver)[arguments]: Add catch-all for
match install-plan.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
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>
The linux-lts commit introduced a breaking change by referring to the
nonexistent linux-libre-arm64-generic package variants. Even before that all
of nonguix's linux-arm64-generic package variants were based on the same
kernel version.
* nongnu/packages/linux.scm (linux-arm64-generic-6.0): Remove package variant.
(linux-arm64-generic-5.15): Ditto.
(linux-arm64-generic-lts): Ditto.
(linux-arm64-generic-5.10): New package variant.
(linux-arm64-generic-5.4): New package variant.
(linux-arm64-generic): Match version to most recent kernel in guix.
6.1 is the newest long-term support version of the kernel.
* nongnu/packages/linux.scm (linux-lts): Use linux-6.1
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (rtl8812au-aircrack-ng-linux-module): Update
to 5.6.4.2-11.35308f4.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Fixes CVE-2023-32205, CVE-2023-32206, CVE-2023-32207, CVE-2023-32208,
CVE-2023-32209, CVE-2023-32210, CVE-2023-32211, CVE-2023-32212,
CVE-2023-32213, CVE-2023-32214, CVE-2023-32215, CVE-2023-32216 and
MFSA-TMP-2023-0002.
* nongnu/packages/mozilla.scm (firefox): Update to 113.0.
(rust-firefox): Set to `rust` as this is now `rust-1.67`.
The needed library libstdc++ was no longer found with the gcc updates in Guix.
* nongnu/packages/messaging.scm (signal-desktop)[inputs]: Remove gcc:lib. Add
libgccjit and libstdc++.
[phases]{wrap-where-patchelf-does-not-work}: Adjust for these inputs.
* nongnu/packages/steam-client.scm (steam-client-libs): Rename
fontconfig-fixed to fontconfig. The upstream bug has not been fixed but expat
has been ungrafted in core-updates so we no longer need to rewrite fontconfig.
Remove fontconfig-fixed as expat/fixed no longer exists in core-updates.
Piggy-back off of the patch list in Nixpkgs instead of maintaining our
own. This should make it easier to keep up to date so there's no need to
advise users to stick with Linux LTS releases any longer.
Though our existing patch list and Nixpkgs' differ the cumulative effect
is exactly the same except for two patches we have that Nix doesn't,
neither of which seem critical:
- broadcom-sta-debian-fix-kernel-warnings.patch
- broadcom-sta-fix_mac_profile_discrepancy.patch
Closes#246
* nongnu/packages/linux.scm (broadcom-sta): Replace patches
with code to fetch them from Nixpkgs.
[arguments]: Replace `linux-lts` with `linux`.
[description]: Remove Linux LTS recommendation.
* nongnu/packages/patches/broadcom-sta-debian-fix-kernel-warnings.patch: Remove.
* nongnu/packages/patches/broadcom-sta-fix_mac_profile_discrepancy.patch: Remove.
* nongnu/packages/patches/broadcom-sta-gcc.patch: Remove.
* nongnu/packages/patches/broadcom-sta-license.patch: Remove.
* nongnu/packages/patches/broadcom-sta-linux-4.11.patch: Remove.
* nongnu/packages/patches/broadcom-sta-linux-4.12.patch: Remove.
* nongnu/packages/patches/broadcom-sta-linux-4.15.patch: Remove.
* nongnu/packages/patches/broadcom-sta-linux-4.7.patch: Remove.
* nongnu/packages/patches/broadcom-sta-linux-4.8.patch: Remove.
* nongnu/packages/patches/broadcom-sta-linux-5.1.patch: Remove.
* nongnu/packages/patches/broadcom-sta-linux-5.10.patch: Remove.
* nongnu/packages/patches/broadcom-sta-linux-5.6.patch: Remove.
* nongnu/packages/patches/broadcom-sta-linux-5.9.patch: Remove.
* nongnu/packages/patches/broadcom-sta-null-pointer-fix.patch: Remove.
* nongnu/packages/patches/broadcom-sta-rdtscl.patch: Remove.
* README.org (Broadcom Wireless): Removed recommendation from
Broadcom Wireless section.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
There is a long list of libraries for LD_LIBRARY_PATH that could be refactored
into a LET form, but alas could not figure out with the many quotes and gexps
how right now. Or aomhost may only need a subset of these.
* nongnu/packages/messaging.scm (zoom)[patchelf-plan]: Add aomhost.
[phases]{wrap-where-patchelf-does-not-work}: Wrap it.
Adding linux@6.2 but not changing the default linux to this version until
upstream does as well.
* nongnu/packages/linux.scm (linux-6.2): New variable.
This allows access to the "configs" keyword argument from the 'corrupt-linux'
procedure. This simplifies creation of kernels with custom modules.
* nongnu/packages/linux.scm (corrupt-linux): Add 'configs' argument.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (linux-firmware)[source]: Use mirror://kernel.org
instead and switch to xz compressed tarball.
Downloading tarball from https://git.kernel.org is
too slow in some country.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/wasm.scm (llvm-monorepo): New variable.
(wasm32-wasi-libcxx): Update to 15.
[source]: Use llvm-monorepo.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/wasm.scm (wasm32-wasi-clang-runtime): Update to 15.
[native-inputs]: Use clang-15.
[inputs]: Use llvm-15.
[arguments]<#:configure-flags>: Adapt path to LLVM monorepo.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (linux-urls): Rename to ...
(linux-url): ... this. Return single url with mirror prefix like guix does.
(corrupt-linux): Use implementation details to dig up original hash of
upstream linux kernel sources.
It was already present as revision 8.
* nongnu/packages/linux.scm (rtl8821ce-linux-module)[revision]: Raise to 9.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (rtl8812au-aircrack-ng-linux-module): Update to
5.6.4.2-10.08589e2.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/firmware.scm (rtl8723bt-firmware): New variable.
Co-authored-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/firmware.scm (ov5640-firmware): New variable.
Co-authored-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/music.scm: New file.
* nongnu/packages/music.scm (reaper): New variable.
Co-authored-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Upstream Guix will be removing linux-libre@6.0 and defaulting to
linux-libre@6.1. Do likewise here.
* nongnu/packages/linux.scm (linux-6.0): Remove variable.
(linux): Set to linux-6.1.
Fixes guix pull as the hunspell package has moved from (gnu packages
libreoffice) to (gnu packages hunspell)
* nongnu/packages/mozilla.scm: Remove the libreoffice module and use the new
hunspell module.
This replaces 'xdg-utils' with 'flatpak-xdg-utils' so that the steam container
will call out to the host to open URLs and properly handle steam:// URLs as
well. This requires portals on the host, e.g. xdg-desktop-portal-gtk.
* nongnu/packages/steam-client.scm (steam-client-libs): Replace 'xdg-utils'
with 'flatpak-xdg-utils'.
Adding linux@6.1 but not changing the default linux to this version until
upstream does as well.
* nongnu/packages/linux.scm (linux-6.1): New variable.
The main point of this patch is to make Chrome rely as little as
possible on the environment it's run into, allowing for easier
debugging. The next step would probably be to generate this list from
the input package-name.
* nongnu/packages/chrome.scm (google-chrome-stable): Update to 108.0.5359.124;
[arguments]{patchelf-inputs}: move to outer scope;
{LD_LIBRARY_PATH}: wrap the entrypoint with all of Chrome's input, this
should prevent loading libraries that are not listed as inputs from the
outer environment;
[inputs]: add some inputs following Nix's package definition to try and
fix#215.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
The raw-initrd contains a "references" file that is used to keep the static
guile used in the initrd alive. This file is not part of the combined-initrd.
It means that during garbage collection, the static guile could be collected
making the system unbootable because the static guile is then not part of the
store once the root is switched.
In the combined-initrds procedure, make sure to concatenate all the possible
references files of the underlying initrds into a top-level references file.
Fixes: <https://gitlab.com/nonguix/nonguix/issues/111>
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
This reverts commit 370749ab7b, reinstating
commit 3d53be2c5c now that 1.4.0 has been
released.
Original commit message:
This simplifies our linux package definitions to not need hash updates as they
simply follow from the inherited part of the source field. The newly added
'customize-linux' procedure from Guix is the preferred way to customize the
kernel as well.
* nongnu/packages/linux.scm (corrupt-linux): No longer take 'version' or
'hash' arguments. Inherit from 'customize-linux' as a starting package. Remove
patch for now removed 'build-doc' phase.
(linux-6.0, linux-5.15, linux-5.10, linux-5.4, linux4.19, linux-4.14,
linux-4.9, linux-arm64-generic-6.0, linux-arm64-generic-5.15): Remove version
and hash strings.
* nongnu/packages/nvidia.scm (nvidia-libs): Remove package definition and deprecate the variable.
Co-authored-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/nvidia.scm (nvda): Use nvidia-driver as base.
[inputs]: Adjusted accordingly.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/nvidia.scm (nvda)[arguments]: Avoid hardcoding inputs and
locate them via relative paths instead.
[description]: Adjust style.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/services/nvidia.scm: New file.
(<nvidia-configuration>): New data type.
(nvidia-shepherd-service,nvidia-service-type): New variables.
* nongnu/packages/nvidia.scm (nvidia-driver)[description]: Adjust accordingly.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/nvidia.scm (nvidia-driver)[arguments]<#:phases>: Split
post-install phase into patch-elf and create-short-name-symlinks phases.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
This is the proprietary Nvidia kernel module.
* nongnu/packages/nvidia.scm (nvidia-module): New variable.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/nvidia.scm (computed-origin-method,make-nvidia-source)
(nvidia-source): New variables.
(nvidia-driver)[source]: Use nvidia-source instead.
[arguments]<#:phases>: Remove unpack phase.
[native-inputs]: Remove perl, python-2, which and xz.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/nvidia.scm (nvidia-driver)[arguments]<#:modules>: Moved out
from <#:phases>.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/nvidia.scm (nvidia-driver)[arguments]<#:phases>: Rewrite
logic for creating short name symbolic links, utilizing patchelf.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/nvidia.scm (nvidia-driver)[arguments]<#:phases>: Use
G-expression and don't hardcode inputs when possible.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
This reverts commit 3d53be2c5c.
It depends on changes which are not available on the upstream
version-1.4.0 branch. I will add this back after the 1.4.0 release.
This simplifies our linux package definitions to not need hash updates as they
simply follow from the inherited part of the source field. The newly added
'customize-linux' procedure from Guix is the preferred way to customize the
kernel as well.
* nongnu/packages/linux.scm (corrupt-linux): No longer take 'version' or
'hash' arguments. Inherit from 'customize-linux' as a starting package. Remove
patch for now removed 'build-doc' phase.
(linux-6.0, linux-5.15, linux-5.10, linux-5.4, linux4.19, linux-4.14,
linux-4.9, linux-arm64-generic-6.0, linux-arm64-generic-5.15): Remove version
and hash strings.
Fixes#217. Builds of the linux kernel were failing without a recently added
patch from Guix to add an infodocs target for make. See commit
82c43b276dd5e60c81ad2c040a9d945befc4bc88. We now use this patch for
applicable kernels (version 5.10 or greater) so the 'build-doc' phase
succeeds.
* nongnu/package/linux.scm (corrupt-linux)[source]: Add patches with
"linux-libre-infodocs-target.patch" depending on version with the procedure
doc-supported? from (gnu packages linux).
Fixes https://gitlab.com/nonguix/nonguix/-/issues/211
* nongnu/packages/linux.scm (sof-firmware): Update to 2.2.
[source]: Switch from git checkout to prebuilt archives.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Upstream Guix now has rust-1.61 (and more), so remove unneeded bootstrapping.
* nongnu/packages/mozilla.scm (rust-uri, rust-bootstrapped-package,
rust-firefox-1.61): Remove variables.
(rust-firefox): Set to be rust-1.61.
* nongnu/packages/benchmark.scm: New file.
* nongnu/packages/benchmark.scm (geekbench5): New variable.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
This also fixes the firefox package. VA-API runs in the RDD (Remote Data
Decoder) sandbox in firefox and thus needs to have specified everything it
needs access to. Using commit b7a0935420ee630a29b7e5ac73a32ba1eb24f00b of
Guix's icecat package, we can get all the dependencies needed and add that to
LD_LIBRARY_PATH. These are then accessible in the RDD sandbox, allowing
VA-API to fully load and work for hardware video decoding support.
* nongnu/package/mozilla.scm (firefox-esr)[modules]: Add (srfi srfi-1), (rnrs
bytevectors), (rnrs io ports), (guix elf), and (guix build gremlin).
[phases]{wrap-program}: New functions RUNPATH-OF and RUNPATHS-OF-INPUT. Use
these for RDD-WHITELIST, the runpaths of mesa and ffmpeg. Add this list to
LD_LIBRARY_PATH.
Now supports Linux 6.x series.
* nongnu/packages/linux.scm (rtl8821ce-linux-module): Update to 0.0.0-8-50c1b12.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (linux-arm64-generic-5.19): Remove variable.
(linux-arm64-generic-6.0): New variable.
(linux-arm64-generic): Set to linux-arm64-linux-6.0.