Skip to content
This repository was archived by the owner on Apr 12, 2021. It is now read-only.
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs-channels
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: f601ab37c2fb
Choose a base ref
...
head repository: NixOS/nixpkgs-channels
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 415e26531d6f
Choose a head ref

Commits on Feb 9, 2020

  1. wafHook: allow overriding phases

    This makes the wafHook a lot closer to the structure of standard hooks
    like cmake and ninja.
    thefloweringash committed Feb 9, 2020
    Copy the full SHA
    c6791b2 View commit details
  2. wafHook: make crossFlags optional

    The convention of `--cross-compile` and `--cross-execute` is common
    enough that it seems like a reasonable default. However there are
    projects like mpv which do not use these flags, and rightfully fails
    to configure when passed unexpected flags.
    thefloweringash committed Feb 9, 2020
    Copy the full SHA
    032d5e7 View commit details
  3. Copy the full SHA
    03ffda3 View commit details

Commits on Feb 25, 2020

  1. Copy the full SHA
    ae91282 View commit details

Commits on Feb 28, 2020

  1. rdma-core: 27.0 -> 28.0

    rxe_cfg has been removed, is replaced by
    'rdma' from iproute package.
    markuskowa committed Feb 28, 2020
    Copy the full SHA
    505bccf View commit details

Commits on Mar 2, 2020

  1. Revert "git: Fix git-gui to work on Catalina"

    This reverts commit 1b6ef12.
    thefloweringash committed Mar 2, 2020
    Copy the full SHA
    880ce71 View commit details
  2. Copy the full SHA
    bc4264a View commit details

Commits on Mar 6, 2020

  1. elfutils: remove unneeded custom cross build/install phase

    This is no longer needed. elfutils compiles out of the box!
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    bad6770 View commit details
  2. aspell: perl is also a native build input

    This is needed for some scripts needed at build time.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    d8b9212 View commit details
  3. Copy the full SHA
    42fe7c7 View commit details
  4. libpsl: add libxslt as a native dependency

    libxslt is actually both a target and native build input because some
    libxslt binary is needed to generate files and the built binaries also
    link against libxslt.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    e0ac054 View commit details
  5. libsecret: add glib as a native dependency

    glib is both a native and target dependency. Some binary from glib is
    used to generate files.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    fdfde03 View commit details
  6. libinput: move test dependencies to checkInputs

    This avoids pulling them in when tests are disabled.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    de14f0c View commit details
  7. gstreamer: needs extra build inputs

    Cross needs some extra native tools:
    
    - glib
    - wayland
    - orc
    - glib is needed in nativeBuildInputs
    
    Also:
    
    - bash-completion needs to be available for PKG_CONFIG_PATH
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    5198179 View commit details
  8. bubblewrap: use buildInputs instead of nativeBuildInputs

    these are all libraries.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    8c3160b View commit details
  9. cage: add wayland as nativeBuildInputs

    Needed on the build machine
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    78f9cad View commit details
  10. wlroots: add wayland as nativeBuildInputs

    Needed on the build machine
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    f187d8c View commit details
  11. Copy the full SHA
    ed33a6c View commit details
  12. gcr: specify libgrypt prefix

    This is needed for cross because gcrypt-config is not available to
    execute. It’s safe to do otherwise as well though.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    f773ef5 View commit details
  13. webkitgtk: ignore gettext when cross compiling

    Unfortunately, CMake looks in CMAKE_PREFIX_PATH for binaries when
    cross-compiling. This means that it will use gettext from
    CMAKE_PREFIX_PATH even when we provide a gettext binary in PATH! This
    is bad because the on in CMAKE_PREFIX_PATH is for the cross system,
    not the native one. The only documented way I can find to change this
    behavior is by manually setting the CMAKE_IGNORE_PATH variable.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    d2775e4 View commit details
  14. libdazzle: add glib to nativeBuildInputs

    This is needed for build tools.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    09c498f View commit details
  15. libhandy: add libxml2 to nativeBuildInputs

    Some build tools are needed for code gen.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    b5efbd5 View commit details
  16. Copy the full SHA
    66fcc60 View commit details
  17. Copy the full SHA
    84b7c64 View commit details
  18. glade: add libxml2 to nativeBuildInputs

    Some build tools are needed from here
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    439704b View commit details
  19. Copy the full SHA
    895ef23 View commit details
  20. Copy the full SHA
    ebdd644 View commit details
  21. Copy the full SHA
    7aed3f8 View commit details
  22. Copy the full SHA
    7996be7 View commit details
  23. json-glib: add glib to nativeBuildInputs

    Needed for some build tools in glib
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    636a072 View commit details
  24. pango: add glib to nativeBuildInputs

    Needed for some build tool
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    5ffd779 View commit details
  25. nixos-artwork: make imagemagick a native build input

    This is only needed on the builder, no need to cross compile it.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    d1e58be View commit details
  26. plymouth: update configure flags

    - only set host when cross compiling
    - use top-level configureFlags and installFlags instead of putting it
      in the pre configure.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    1bac797 View commit details
  27. breeze-plymouth: make some things native

    some of these only need to be on the build machine.
    matthewbauer committed Mar 6, 2020
    Copy the full SHA
    f800659 View commit details
  28. Copy the full SHA
    1265615 View commit details
  29. crispyDoom: 5.7 -> 5.7.1

    r-ryantm committed Mar 6, 2020
    Copy the full SHA
    efa2d85 View commit details

Commits on Mar 9, 2020

  1. androidenv: update the generated expressions

    ... running `generate.sh`.
    lucafavatella committed Mar 9, 2020
    Copy the full SHA
    e003ca0 View commit details
  2. androidenv: bump emulator version to latest stable - as per Linux

    Move to a known version of the emulator.  Each OS has a distinct
    version... pick the one on Linux.  A better solution would be to let
    the user of `emulateApp` overload what the emulator version shall be
    (and maybe it is already possible and I do not see it) - without need
    to reproduce large portions of `default.nix`.
    
    Using the previous emulator showed the following warning:
    ```
    Your emulator is out of date, please update by launching Android Studio:
    ```
    
    I am not aware of any reasons for not wanting the latest emulator (as
    I expect it shall be compatible usually with more system images - not
    less), so bump its default version.
    
    Emulator release notes:
    https://developer.android.com/studio/releases/emulator
    lucafavatella committed Mar 9, 2020
    Copy the full SHA
    6da0e0b View commit details
  3. Copy the full SHA
    3286057 View commit details
  4. androidenv: manually (!) delete oldest revision of google images

    ... as same name hence clashing.
    
    This shall rather be solved by enhancement of the scripts.
    lucafavatella committed Mar 9, 2020
    Copy the full SHA
    72e3836 View commit details
  5. androidenv: manually (!) delete default images with same name

    ... complex as apparently dependent on OS of host of emulator.
    
    This shall rather be solved by enhancement of the scripts.
    lucafavatella committed Mar 9, 2020
    Copy the full SHA
    91411f0 View commit details
  6. androidenv: add missing linux dependencies

    This is extracted from https://github.com/NixOS/nixpkgs PR 78623.
    
    The symptom I observed was:
    ```
    builder for '/nix/store/7zz585ch9jqjvz8k88rf7fs046inxszq-emulator-30.0.3.drv' failed with exit code 1; last 10 log lines:
        libXext.so.6 -> found: /nix/store/qkmj8pa3ka9v335bbgx74ah4080fwdbf-libXext-1.3.4/lib/libXext.so.6
        libXfixes.so.3 -> found: /nix/store/nhp59xxq4g51mgpwgjsp8pvkn7531b86-libXfixes-5.0.3/lib/libXfixes.so.3
        libXi.so.6 -> not found!
        libXrender.so.1 -> not found!
        libXtst.so.6 -> not found!
        libasound.so.2 -> not found!
        libz.so.1 -> found: /nix/store/pb2am7dfsv524pb2z7m8mp8nkcmgd3cl-zlib-1.2.11/lib/libz.so.1
        libdbus-1.so.3 -> found: /nix/store/ddqrvb1b0xdb8g18f4advmq4wk0aiknd-dbus-1.12.16-lib/lib/libdbus-1.so.3
        libGL.so.1 -> found: /nix/store/bbpgyifsh2hv0ivhl3g4ik2nw7d10zdx-emulator-30.0.3/libexec/android-sdk/emulator/lib64/gles_mesa/libGL.so.1
        libc++.so.1 -> found: /nix/store/bbpgyifsh2hv0ivhl3g4ik2nw7d10zdx-emulator-30.0.3/libexec/android-sdk/emulator/lib64/libc++.so.1
    ```
    Freeman Latif authored and lucafavatella committed Mar 9, 2020
    Copy the full SHA
    954b406 View commit details
  7. androidenv/emulate-app: fix image id for recent device manager

    Symptom:
    ```
    Available Android targets:
    ----------
    id: 1 or "android-28"
         Name: Android 9
         Type: Platform
         API level: 28
         Revision: 6
         Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
     Tag/ABIs : google_ndk_playstore/x86
    ...
    Error: Invalid --tag google_apis_playstore for the selected target.
    ```
    
    For creation of AVD, switch from `android` to `avdmanager` as the
    latter seems enabling selecting the image with less friction (and is
    better documented as not deprecated).  This requires using recent
    tools - from https://developer.android.com/studio/releases/sdk-tools :
    > SDK Tools, Revision 25.3.0 (March 2017)
    > ...
    > `android avd` command-line functionality replaced with new
    > `avdmanager` tool.
    
    For listing of targets, switch from `android` to `avdmanager` as the
    `android` command invocation fails in recent tools.  Symptom (not
    missing `s` as backward incompatibility):
    ```
    Invalid or unsupported command "list targets"
    
    Supported commands are:
    android list target
    android list avd
    android list device
    android create avd
    android move avd
    android delete avd
    android list sdk
    android update sdk
    ```
    
    References:
    - https://developer.android.com/studio/tools/help/android
    - https://developer.android.com/studio/command-line/avdmanager
    lucafavatella committed Mar 9, 2020
    Copy the full SHA
    c506188 View commit details
  8. androidenv: manually (!) delete more complex version of google images

    This commit was built as a revert commit followed by deletion:
    * Revert "androidenv: manually (!) delete oldest revision of google
      images".
    * Delete other revision.
    
    Using `systemImageType = "google_apis_playstore"` (and `abiVersion =
    "x86"` and `platformVersion = "28"` - that I expect resolved to
    `97d9d4f4a2afa8b0f5d52e90748e19c10406ca93`), the symptom is:
    ```
    Warning: Observed package id 'system-images;android-28;google_ndk_playstore;x86' in inconsistent location '/nix/store/...-androidsdk/libexec/android-sdk/system-images/android-28/google_apis_playstore/x86' (Expected '/nix/store/...-androidsdk/libexec/android-sdk/system-images/android-28/google_ndk_playstore/x86')
    ...
    Error: Package path is not valid. Valid system image paths are:
    system-images;android-28;google_ndk_playstore;x86
    ```
    How is the actual image name `google_ndk_playstore` when the fetched
    image has id `google_apis_playstore`?
    
    Attempt keeping - of the two images - the one that looks simpler.
    
    For the `"28".google_apis."x86"` images, in the XML the differences
    are: more complex license (what is `arm-dbt`?); higher emulator.
    Namely:
    ```
    		<uses-license ref="android-sdk-license"/>
    		<dependencies>
    			<dependency path="patcher;v4"/>
    			<dependency path="emulator">
    				<min-revision>
    					<major>27</major>
    					<minor>1</minor>
    					<micro>7</micro>
    ...
    		<uses-license ref="android-sdk-arm-dbt-license"/>
    		<dependencies>
    			<dependency path="patcher;v4"/>
    			<dependency path="emulator">
    				<min-revision>
    					<major>29</major>
    					<minor>1</minor>
    					<micro>12</micro>
    ```
    
    Analogously for `"28".google_apis_playstore."x86"`.
    lucafavatella committed Mar 9, 2020
    Copy the full SHA
    f01278d View commit details
  9. androidenv: align basic emulateApp usage example

    ... to the actually tested one.
    lucafavatella committed Mar 9, 2020
    Copy the full SHA
    d56fd69 View commit details

Commits on Mar 11, 2020

  1. buildGoModule: passthru the modSha256 (#82027)

    The builder does not technically need the modSha256 of the vendor dir, and even
    though we pass it the entire vendor dir it makes sense not to risk having an
    accidental dependency on that variable.
    
    However, tools like [nixpkgs-update](https://github.com/ryantm/nixpkgs-update)
    need to inspect the `modSha256` of a package in order to be able to update them,
    and since this is a real part of the package (describes info about its
    dependencies) let's add it to `passthru`.
    
    Specifically, this allows us to run a cmd like `nix eval -f . tflint.modSha256`
    to get the current value, which is how the bot finds it to replace with the new
    version in the Rust ecosystem.
    bhipple authored Mar 11, 2020
    Copy the full SHA
    0723df3 View commit details
  2. Merge pull request #81870 from r-ryantm/auto-update/crispy-doom

    crispyDoom: 5.7 -> 5.7.1
    aanderse authored Mar 11, 2020
    Copy the full SHA
    d17060f View commit details
  3. mesa: 19.3.3 -> 20.0.1

    New APIs implemented: OpenGL 4.6 and Vulkan 1.2
    primeos committed Mar 11, 2020
    Copy the full SHA
    b5c1cb2 View commit details
  4. SDL2: 2.0.10 -> 2.0.12

    cpages committed Mar 11, 2020
    Copy the full SHA
    00ba289 View commit details

Commits on Mar 12, 2020

  1. qt512: pick upstream patch for QTBUG-78937

    volth authored and FRidh committed Mar 12, 2020
    Copy the full SHA
    4b6bbc1 View commit details
Showing 465 changed files with 6,024 additions and 5,180 deletions.
7 changes: 4 additions & 3 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -178,6 +178,7 @@
/nixos/tests/prometheus-exporters.nix @WilliButz

# PHP
/pkgs/development/interpreters/php @etu
/pkgs/top-level/php-packages.nix @etu
/pkgs/build-support/build-pecl.nix @etu
/doc/languages-frameworks/php.section.md @etu
/pkgs/development/interpreters/php @etu
/pkgs/top-level/php-packages.nix @etu
/pkgs/build-support/build-pecl.nix @etu
2 changes: 1 addition & 1 deletion doc/languages-frameworks/android.section.md
Original file line number Diff line number Diff line change
@@ -186,7 +186,7 @@ with import <nixpkgs> {};
androidenv.emulateApp {
name = "emulate-MyAndroidApp";
platformVersion = "28";
abiVersion = "x86_64"; # armeabi-v7a, mips, x86
abiVersion = "x86"; # armeabi-v7a, mips, x86_64
systemImageType = "google_apis_playstore";
}
```
112 changes: 112 additions & 0 deletions doc/languages-frameworks/php.section.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
# PHP

## User Guide

### Using PHP

#### Overview

Several versions of PHP are available on Nix, each of which having a
wide variety of extensions and libraries available.

The attribute `php` refers to the version of PHP considered most
stable and thoroughly tested in nixpkgs for any given release of
NixOS. Note that while this version of PHP may not be the latest major
release from upstream, any version of PHP supported in nixpkgs may be
utilized by specifying the desired attribute by version, such as
`php74`.

Only versions of PHP that are supported by upstream for the entirety
of a given NixOS release will be included in that release of
NixOS. See [PHP Supported
Versions](https://www.php.net/supported-versions.php).

Interactive tools built on PHP are put in `php.packages`; composer is
for example available at `php.packages.composer`.

Most extensions that come with PHP, as well as some popular
third-party ones, are available in `php.extensions`; for example, the
opcache extension shipped with PHP is available at
`php.extensions.opcache` and the third-party ImageMagick extension at
`php.extensions.imagick`.

The different versions of PHP that nixpkgs provides is located under
attributes named based on major and minor version number; e.g.,
`php74` is PHP 7.4 with commonly used extensions installed,
`php74base` is the same PHP runtime without extensions.

#### Installing PHP with packages

A PHP package with specific extensions enabled can be built using
`php.withExtensions`. This is a function which accepts an anonymous
function as its only argument; the function should take one argument,
the set of all extensions, and return a list of wanted extensions. For
example, a PHP package with the opcache and ImageMagick extensions
enabled:

```nix
php.withExtensions (e: with e; [ imagick opcache ])
```

Note that this will give you a package with _only_ opcache and
ImageMagick, none of the other extensions which are enabled by default
in the `php` package will be available.

To enable building on a previous PHP package, the currently enabled
extensions are made available in its `enabledExtensions`
attribute. For example, to generate a package with all default
extensions enabled, except opcache, but with ImageMagick:

```nix
php.withExtensions (e:
(lib.filter (e: e != php.extensions.opcache) php.enabledExtensions)
++ [ e.imagick ])
```

If you want a PHP build with extra configuration in the `php.ini`
file, you can use `php.buildEnv`. This function takes two named and
optional parameters: `extensions` and `extraConfig`. `extensions`
takes an extension specification equivalent to that of
`php.withExtensions`, `extraConfig` a string of additional `php.ini`
configuration parameters. For example, a PHP package with the opcache
and ImageMagick extensions enabled, and `memory_limit` set to `256M`:

```nix
php.buildEnv {
extensions = e: with e; [ imagick opcache ];
extraConfig = "memory_limit=256M";
}
```

##### Example setup for `phpfpm`

You can use the previous examples in a `phpfpm` pool called `foo` as
follows:

```nix
let
myPhp = php.withExtensions (e: with e; [ imagick opcache ]);
in {
services.phpfpm.pools."foo".phpPackage = myPhp;
};
```

```nix
let
myPhp = php.buildEnv {
extensions = e: with e; [ imagick opcache ];
extraConfig = "memory_limit=256M";
};
in {
services.phpfpm.pools."foo".phpPackage = myPhp;
};
```

##### Example usage with `nix-shell`

This brings up a temporary environment that contains a PHP interpreter
with the extensions `imagick` and `opcache` enabled.

```sh
nix-shell -p 'php.buildEnv { extensions = e: with e; [ imagick opcache ]; }'
```
6 changes: 6 additions & 0 deletions maintainers/maintainer-list.nix
Original file line number Diff line number Diff line change
@@ -2404,6 +2404,12 @@
fingerprint = "67FE 98F2 8C44 CF22 1828 E12F D57E FA62 5C9A 925F";
}];
};
euank = {
email = "euank-nixpkg@euank.com";
github = "euank";
githubId = 2147649;
name = "Euan Kemp";
};
evanjs = {
email = "evanjsx@gmail.com";
github = "evanjs";
4 changes: 2 additions & 2 deletions nixos/doc/manual/release-notes/rl-2003.xml
Original file line number Diff line number Diff line change
@@ -827,8 +827,8 @@ auth required pam_succeed_if.so uid >= 1000 quiet
</listitem>
<listitem>
<para>
Predicatbly named network-interfaces get renamed in stage-1. This means that it's possible
to use the proper interface name for e.g. dropbear-setups.
Predictably named network interfaces get renamed in stage-1. This means that it is possible
to use the proper interface name for e.g. Dropbear setups.
</para>
<para>
For further reference, please read <link xlink:href="https://github.com/NixOS/nixpkgs/pull/68953">#68953</link> or the corresponding <link xlink:href="https://discourse.nixos.org/t/predictable-network-interface-names-in-initrd/4055">discourse thread</link>.
70 changes: 70 additions & 0 deletions nixos/doc/manual/release-notes/rl-2009.xml
Original file line number Diff line number Diff line change
@@ -23,6 +23,9 @@
Support is planned until the end of April 2021, handing over to 21.03.
</para>
</listitem>
<listitem>
<para>GNOME desktop environment was upgraded to 3.36, see its <link xlink:href="https://help.gnome.org/misc/release-notes/3.36/">release notes</link>.</para>
</listitem>
<listitem>
<para>
PHP now defaults to PHP 7.4, updated from 7.3.
@@ -125,6 +128,73 @@
documentation for instructions.
</para>
</listitem>
<listitem>
<para>
Since this release there's an easy way to customize your PHP install to get a much smaller
base PHP with only wanted extensions enabled. See the following snippet installing a smaller PHP
with the extensions <literal>imagick</literal>, <literal>opcache</literal> and
<literal>pdo_mysql</literal> loaded:

<programlisting>
environment.systemPackages = [
(pkgs.php.buildEnv { extensions = pp: with pp; [
imagick
opcache
pdo_mysql
]; })
];</programlisting>

The default <literal>php</literal> attribute hasn't lost any extensions -
the <literal>opcache</literal> extension was added there.

All upstream PHP extensions are available under <package><![CDATA[php.extensions.<name?>]]></package>.
</para>
<para>
The updated <literal>php</literal> attribute is now easily customizable to your liking
by using extensions instead of writing config files or changing configure flags.

Therefore we have removed the following configure flags:

<itemizedlist>
<title>PHP <literal>config</literal> flags that we don't read anymore:</title>
<listitem><para><literal>config.php.argon2</literal></para></listitem>
<listitem><para><literal>config.php.bcmath</literal></para></listitem>
<listitem><para><literal>config.php.bz2</literal></para></listitem>
<listitem><para><literal>config.php.calendar</literal></para></listitem>
<listitem><para><literal>config.php.curl</literal></para></listitem>
<listitem><para><literal>config.php.exif</literal></para></listitem>
<listitem><para><literal>config.php.ftp</literal></para></listitem>
<listitem><para><literal>config.php.gd</literal></para></listitem>
<listitem><para><literal>config.php.gettext</literal></para></listitem>
<listitem><para><literal>config.php.gmp</literal></para></listitem>
<listitem><para><literal>config.php.imap</literal></para></listitem>
<listitem><para><literal>config.php.intl</literal></para></listitem>
<listitem><para><literal>config.php.ldap</literal></para></listitem>
<listitem><para><literal>config.php.libxml2</literal></para></listitem>
<listitem><para><literal>config.php.libzip</literal></para></listitem>
<listitem><para><literal>config.php.mbstring</literal></para></listitem>
<listitem><para><literal>config.php.mysqli</literal></para></listitem>
<listitem><para><literal>config.php.mysqlnd</literal></para></listitem>
<listitem><para><literal>config.php.openssl</literal></para></listitem>
<listitem><para><literal>config.php.pcntl</literal></para></listitem>
<listitem><para><literal>config.php.pdo_mysql</literal></para></listitem>
<listitem><para><literal>config.php.pdo_odbc</literal></para></listitem>
<listitem><para><literal>config.php.pdo_pgsql</literal></para></listitem>
<listitem><para><literal>config.php.phpdbg</literal></para></listitem>
<listitem><para><literal>config.php.postgresql</literal></para></listitem>
<listitem><para><literal>config.php.readline</literal></para></listitem>
<listitem><para><literal>config.php.soap</literal></para></listitem>
<listitem><para><literal>config.php.sockets</literal></para></listitem>
<listitem><para><literal>config.php.sodium</literal></para></listitem>
<listitem><para><literal>config.php.sqlite</literal></para></listitem>
<listitem><para><literal>config.php.tidy</literal></para></listitem>
<listitem><para><literal>config.php.xmlrpc</literal></para></listitem>
<listitem><para><literal>config.php.xsl</literal></para></listitem>
<listitem><para><literal>config.php.zip</literal></para></listitem>
<listitem><para><literal>config.php.zlib</literal></para></listitem>
</itemizedlist>
</para>
</listitem>
</itemizedlist>
</section>

2 changes: 1 addition & 1 deletion nixos/modules/config/gtk/gtk-icon-cache.nix
Original file line number Diff line number Diff line change
@@ -77,7 +77,7 @@ with lib;
if [ -w "$themedir" ]; then
rm -f "$themedir"/icon-theme.cache
${pkgs.gtk3.out}/bin/gtk-update-icon-cache --ignore-theme-index "$themedir"
${pkgs.buildPackages.gtk3.out}/bin/gtk-update-icon-cache --ignore-theme-index "$themedir"
fi
done
'';
2 changes: 1 addition & 1 deletion nixos/modules/i18n/input-method/ibus.nix
Original file line number Diff line number Diff line change
@@ -76,7 +76,7 @@ in
XMODIFIERS = "@im=ibus";
};

xdg.portal.extraPortals = mkIf xdg.portal.enable [
xdg.portal.extraPortals = mkIf config.xdg.portal.enable [
ibusPackage
];
};
2 changes: 0 additions & 2 deletions nixos/modules/profiles/hardened.nix
Original file line number Diff line number Diff line change
@@ -23,8 +23,6 @@ with lib;

security.allowUserNamespaces = mkDefault false;

nix.useSandbox = mkDefault false;

security.protectKernelImage = mkDefault true;

security.allowSimultaneousMultithreading = mkDefault false;
2 changes: 2 additions & 0 deletions nixos/modules/services/desktops/gnome3/gnome-keyring.nix
Original file line number Diff line number Diff line change
@@ -39,6 +39,8 @@ with lib;

services.dbus.packages = [ pkgs.gnome3.gnome-keyring pkgs.gcr ];

xdg.portal.extraPortals = [ pkgs.gnome3.gnome-keyring ];

security.pam.services.login.enableGnomeKeyring = true;

security.wrappers.gnome-keyring-daemon = {
29 changes: 9 additions & 20 deletions nixos/modules/services/networking/rxe.nix
Original file line number Diff line number Diff line change
@@ -5,20 +5,6 @@ with lib;
let
cfg = config.networking.rxe;

runRxeCmd = cmd: ifcs:
concatStrings ( map (x: "${pkgs.rdma-core}/bin/rxe_cfg -n ${cmd} ${x};") ifcs);

startScript = pkgs.writeShellScriptBin "rxe-start" ''
${pkgs.rdma-core}/bin/rxe_cfg -n start
${runRxeCmd "add" cfg.interfaces}
${pkgs.rdma-core}/bin/rxe_cfg
'';

stopScript = pkgs.writeShellScriptBin "rxe-stop" ''
${runRxeCmd "remove" cfg.interfaces }
${pkgs.rdma-core}/bin/rxe_cfg -n stop
'';

in {
###### interface

@@ -31,9 +17,8 @@ in {
example = [ "eth0" ];
description = ''
Enable RDMA on the listed interfaces. The corresponding virtual
RDMA interfaces will be named rxe0 ... rxeN where the ordering
will be as they are named in the list. UDP port 4791 must be
open on the respective ethernet interfaces.
RDMA interfaces will be named rxe_&lt;interface&gt;.
UDP port 4791 must be open on the respective ethernet interfaces.
'';
};
};
@@ -44,7 +29,6 @@ in {
config = mkIf cfg.enable {

systemd.services.rxe = {
path = with pkgs; [ kmod rdma-core ];
description = "RoCE interfaces";

wantedBy = [ "multi-user.target" ];
@@ -54,8 +38,13 @@ in {
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
ExecStart = "${startScript}/bin/rxe-start";
ExecStop = "${stopScript}/bin/rxe-stop";
ExecStart = map ( x:
"${pkgs.iproute}/bin/rdma link add rxe_${x} type rxe netdev ${x}"
) cfg.interfaces;

ExecStop = map ( x:
"${pkgs.iproute}/bin/rdma link delete rxe_${x}"
) cfg.interfaces;
};
};
};
4 changes: 2 additions & 2 deletions nixos/modules/services/networking/ssh/sshd.nix
Original file line number Diff line number Diff line change
@@ -9,8 +9,8 @@ let
# This middle-ground solution ensures *an* sshd can do their basic validation
# on the configuration.
validationPackage = if pkgs.stdenv.buildPlatform == pkgs.stdenv.hostPlatform
then [ cfgc.package ]
else [ pkgs.buildPackages.openssh ];
then cfgc.package
else pkgs.buildPackages.openssh;

sshconf = pkgs.runCommand "sshd.conf-validated" { nativeBuildInputs = [ validationPackage ]; } ''
cat >$out <<EOL
24 changes: 12 additions & 12 deletions nixos/modules/services/web-apps/nextcloud.nix
Original file line number Diff line number Diff line change
@@ -6,27 +6,28 @@ let
cfg = config.services.nextcloud;
fpm = config.services.phpfpm.pools.nextcloud;

phpPackage = pkgs.php73;
phpPackages = pkgs.php73Packages;
phpPackage =
let
base = pkgs.php74;
in
base.buildEnv {
extensions = e: with e;
base.enabledExtensions ++ [
apcu redis memcached imagick
];
extraConfig = phpOptionsStr;
};

toKeyValue = generators.toKeyValue {
mkKeyValue = generators.mkKeyValueDefault {} " = ";
};

phpOptionsExtensions = ''
${optionalString cfg.caching.apcu "extension=${phpPackages.apcu}/lib/php/extensions/apcu.so"}
${optionalString cfg.caching.redis "extension=${phpPackages.redis}/lib/php/extensions/redis.so"}
${optionalString cfg.caching.memcached "extension=${phpPackages.memcached}/lib/php/extensions/memcached.so"}
extension=${phpPackages.imagick}/lib/php/extensions/imagick.so
zend_extension = opcache.so
opcache.enable = 1
'';
phpOptions = {
upload_max_filesize = cfg.maxUploadSize;
post_max_size = cfg.maxUploadSize;
memory_limit = cfg.maxUploadSize;
} // cfg.phpOptions;
phpOptionsStr = phpOptionsExtensions + (toKeyValue phpOptions);
phpOptionsStr = toKeyValue phpOptions;

occ = pkgs.writeScriptBin "nextcloud-occ" ''
#! ${pkgs.stdenv.shell}
@@ -38,7 +39,6 @@ let
export NEXTCLOUD_CONFIG_DIR="${cfg.home}/config"
$sudo \
${phpPackage}/bin/php \
-c ${pkgs.writeText "php.ini" phpOptionsStr}\
occ $*
'';

Loading