Unverified Commit 03248bf8 authored by github-actions[bot]'s avatar github-actions[bot] Committed by GitHub
Browse files

Merge master into haskell-updates

parents 4a9619c1 1ae1ab8d
Loading
Loading
Loading
Loading
+26 −6
Original line number Diff line number Diff line
@@ -18,14 +18,34 @@ jobs:
    runs-on: ubuntu-latest
    steps:
      - name: Resolving the merge commit
        env:
          GH_TOKEN: ${{ github.token }}
        run: |
          if result=$(git ls-remote --exit-code ${{ github.event.pull_request.base.repo.clone_url }} refs/pull/${{ github.event.pull_request.number }}/merge 2>&1); then
            mergedSha=$(cut -f1 <<< "$result")
            echo "The PR appears to not have any conflicts, checking the merge commit $mergedSha"
          # This checks for mergeability of a pull request as recommended in
          # https://docs.github.com/en/rest/guides/using-the-rest-api-to-interact-with-your-git-database?apiVersion=2022-11-28#checking-mergeability-of-pull-requests
          while true; do
            echo "Checking whether the pull request can be merged"
            prInfo=$(gh api \
              -H "Accept: application/vnd.github+json" \
              -H "X-GitHub-Api-Version: 2022-11-28" \
              /repos/"$GITHUB_REPOSITORY"/pulls/${{ github.event.pull_request.number }})
            mergeable=$(jq -r .mergeable <<< "$prInfo")
            mergedSha=$(jq -r .merge_commit_sha <<< "$prInfo")

            if [[ "$mergeable" == "null" ]]; then
              # null indicates that GitHub is still computing whether it's mergeable
              # Wait a couple seconds before trying again
              echo "GitHub is still computing whether this PR can be merged, waiting 5 seconds before trying again"
              sleep 5
            else
              break
            fi
          done

          if [[ "$mergeable" == "true" ]]; then
            echo "The PR can be merged, checking the merge commit $mergedSha"
          else
            echo "The PR may have a merge conflict"
            echo "'git ls-remote' output was:"
            echo "$result"
            echo "The PR cannot be merged, it has a merge conflict"
            exit 1
          fi
          echo "mergedSha=$mergedSha" >> "$GITHUB_ENV"
+23 −0
Original line number Diff line number Diff line
@@ -243,3 +243,26 @@ or

***
```
## `fetchFromBittorrent` {#fetchfrombittorrent}

`fetchFromBittorrent` expects two arguments. `url` which can either be a Magnet URI (Magnet Link) such as `magnet:?xt=urn:btih:dd8255ecdc7ca55fb0bbf81323d87062db1f6d1c` or an HTTP URL pointing to a `.torrent` file. It can also take a `config` argument which will craft a `settings.json` configuration file and give it to `transmission`, the underlying program that is performing the fetch. The available config options for `transmission` can be found [here](https://github.com/transmission/transmission/blob/main/docs/Editing-Configuration-Files.md#options)

```
{ fetchFromBittorrent }:

fetchFromBittorrent {
  config = { peer-limit-global = 100; };
  url = "magnet:?xt=urn:btih:dd8255ecdc7ca55fb0bbf81323d87062db1f6d1c";
  sha256 = "";
}
```

### Parameters {#fetchfrombittorrent-parameters}

- `url`: Magnet URI (Magnet Link) such as `magnet:?xt=urn:btih:dd8255ecdc7ca55fb0bbf81323d87062db1f6d1c` or an HTTP URL pointing to a `.torrent` file.

- `backend`: Which bittorrent program to use. Default: `"transmission"`. Valid values are `"rqbit"` or `"transmission"`. These are the two most suitable torrent clients for fetching in a fixed-output derivation at the time of writing, as they can be easily exited after usage. `rqbit` is written in Rust and has a smaller closure size than `transmission`, and the performance and peer discovery properties differs between these clients, requiring experimentation to decide upon which is the best.

- `config`: When using `transmission` as the `backend`, a json configuration can
  be supplied to transmission. Refer to the [upstream documentation](https://github.com/transmission/transmission/blob/main/docs/Editing-Configuration-Files.md) for information on how to configure.
+42 −0
Original line number Diff line number Diff line
@@ -6332,6 +6332,16 @@
      fingerprint = "D0CF 440A A703 E0F9 73CB  A078 82BB 70D5 41AE 2DB4";
    }];
  };
  gepbird = {
    email = "gutyina.gergo.2@gmail.com";
    github = "gepbird";
    githubId = 29818440;
    name = "Gutyina Gergő";
    keys = [
      { fingerprint = "RoAfvqa6w1l8Vdm3W60TDXurYwJ6h03VEGD+wDNGEwc"; }
      { fingerprint = "MP2UpIRtJpbFFqyucP431H/FPCfn58UhEUTro4lXtRs"; }
    ];
  };
  gerg-l = {
    email = "gregleyda@proton.me";
    github = "Gerg-L";
@@ -8792,6 +8802,12 @@
    githubId = 1189739;
    name = "Julio Borja Barra";
  };
  jue89 = {
    email = "me@jue.yt";
    github = "jue89";
    githubId = 6105784;
    name = "Juergen Fitschen";
  };
  jugendhacker = {
    name = "j.r";
    email = "j.r@jugendhacker.de";
@@ -8936,6 +8952,15 @@
    githubId = 386765;
    matrix = "@k900:0upti.me";
  };
  kachick = {
    email = "kachick1@gmail.com";
    github = "kachick";
    githubId = 1180335;
    name = "Kenichi Kamiya";
    keys = [{
      fingerprint = "9121 5D87 20CA B405 C63F  24D2 EF6E 574D 040A E2A5";
    }];
  };
  kaction = {
    name = "Dmitry Bogatov";
    email = "KAction@disroot.org";
@@ -10023,6 +10048,17 @@
    githubId = 3696783;
    name = "Leroy Hopson";
  };
  liketechnik = {
    name = "Florian Warzecha";

    email = "liketechnik@disroot.org";
    github = "liketechnik";
    githubId = 24209689;

    keys = [{
      fingerprint = "92D8 A09D 03DD B774 AABD 53B9 E136 2F07 D750 DB5C";
    }];
  };
  lillycham = {
    email = "lillycat332@gmail.com";
    github = "lillycat332";
@@ -15190,6 +15226,12 @@
    githubId = 47790121;
    name = "Ryan Burns";
  };
  rtimush = {
    email = "rtimush@gmail.com";
    github = "rtimush";
    githubId = 831307;
    name = "Roman Timushev";
  };
  rtreffer = {
    email = "treffer+nixos@measite.de";
    github = "rtreffer";
+8 −0
Original line number Diff line number Diff line
@@ -72,6 +72,8 @@

- [stalwart-mail](https://stalw.art), an all-in-one email server (SMTP, IMAP, JMAP). Available as [services.stalwart-mail](#opt-services.stalwart-mail.enable).

- [tang](https://github.com/latchset/tang), a server for binding data to network presence. Available as [services.tang](#opt-services.tang.enable).

- [Jool](https://nicmx.github.io/Jool/en/index.html), a kernelspace NAT64 and SIIT implementation, providing translation between IPv4 and IPv6. Available as [networking.jool.enable](#opt-networking.jool.enable).

- [Apache Guacamole](https://guacamole.apache.org/), a cross-platform, clientless remote desktop gateway. Available as [services.guacamole-server](#opt-services.guacamole-server.enable) and [services.guacamole-client](#opt-services.guacamole-client.enable) services.
@@ -107,6 +109,8 @@

- [trunk-ng](https://github.com/ctron/trunk), A fork of `trunk`: Build, bundle & ship your Rust WASM application to the web

- [virt-manager](https://virt-manager.org/), an UI for managing virtual machines in libvirt, is now available as `programs.virt-manager`.

## Backward Incompatibilities {#sec-release-23.11-incompatibilities}

- `network-online.target` has been fixed to no longer time out for systems with `networking.useDHCP = true` and `networking.useNetworkd = true`.
@@ -246,6 +250,8 @@

- The binary of the package `cloud-sql-proxy` has changed from `cloud_sql_proxy` to `cloud-sql-proxy`.

- Garage has been upgraded to 0.9.x. `services.garage.package` now needs to be explicitly set, so version upgrades can be done in a controlled fashion. For this, we expose `garage_x_y` attributes which can be set here.

- The `woodpecker-*` CI packages have been updated to 1.0.0. This release is wildly incompatible with the 0.15.X versions that were previously packaged. Please read [upstream's documentation](https://woodpecker-ci.org/docs/next/migrations#100) to learn how to update your CI configurations.

- The Caddy module gained a new option named `services.caddy.enableReload` which is enabled by default. It allows reloading the service instead of restarting it, if only a config file has changed. This option must be disabled if you have turned off the [Caddy admin API](https://caddyserver.com/docs/caddyfile/options#admin). If you keep this option enabled, you should consider setting [`grace_period`](https://caddyserver.com/docs/caddyfile/options#grace-period) to a non-infinite value to prevent Caddy from delaying the reload indefinitely.
@@ -303,6 +309,8 @@

- `dagger` was removed because using a package called `dagger` and packaging it from source violates their trademark policy.

- `win-virtio` package was renamed to `virtio-win` to be consistent with the upstream package name.

## Other Notable Changes {#sec-release-23.11-notable-changes}

- The Cinnamon module now enables XDG desktop integration by default. If you are experiencing collisions related to xdg-desktop-portal-gtk you can safely remove `xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];` from your NixOS configuration.
+1 −0
Original line number Diff line number Diff line
@@ -231,6 +231,7 @@
  ./programs/pantheon-tweaks.nix
  ./programs/partition-manager.nix
  ./programs/plotinus.nix
  ./programs/projecteur.nix
  ./programs/proxychains.nix
  ./programs/qdmr.nix
  ./programs/qt5ct.nix
Loading