Unverified Commit 19159ced authored by Peder Bergebakken Sundt's avatar Peder Bergebakken Sundt Committed by GitHub
Browse files

Merge pull request #249523 from greizgh/seafile-10

Seafile 10
parents d5d752af a312393f
Loading
Loading
Loading
Loading
+142 −136
Original line number Diff line number Diff line
@@ -32,7 +32,8 @@ let
  dataDir = "${seafRoot}/data";
  seahubDir = "${seafRoot}/seahub";

in {
in
{

  ###### Interface

@@ -147,7 +148,8 @@ in {
      description = "Seafile components";
    };

    systemd.services = let
    systemd.services =
      let
        securityOptions = {
          ProtectHome = true;
          PrivateUsers = true;
@@ -167,7 +169,8 @@ in {
          SystemCallArchitectures = "native";
          RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" ];
        };
    in {
      in
      {
        seaf-server = {
          description = "Seafile server";
          partOf = [ "seafile.target" ];
@@ -206,7 +209,6 @@ in {
                echo "${cfg.seafilePackage.version}-sqlite" > "${seafRoot}"/server-setup
            fi
            # checking for upgrades and handling them
          # WARNING: needs to be extended to actually handle major version migrations
            installedMajor=$(cat "${seafRoot}/server-setup" | cut -d"-" -f1 | cut -d"." -f1)
            installedMinor=$(cat "${seafRoot}/server-setup" | cut -d"-" -f1 | cut -d"." -f2)
            pkgMajor=$(echo "${cfg.seafilePackage.version}" | cut -d"." -f1)
@@ -218,6 +220,10 @@ in {
                # Upgrade from 8.0 to 9.0
                sqlite3 ${dataDir}/seafile.db ".read ${pkgs.seahub}/scripts/upgrade/sql/9.0.0/sqlite3/seafile.sql"
                echo "${cfg.seafilePackage.version}-sqlite" > "${seafRoot}"/server-setup
            elif [[ $installedMajor == 9 && $installedMinor == 0 && $pkgMajor == 10 && $pkgMinor == 0 ]]; then
                # Upgrade from 9.0 to 10.0
                sqlite3 ${dataDir}/seafile.db ".read ${pkgs.seahub}/scripts/upgrade/sql/10.0.0/sqlite3/seafile.sql"
                echo "${cfg.seafilePackage.version}-sqlite" > "${seafRoot}"/server-setup
            else
                echo "Unsupported upgrade" >&2
                exit 1
+4 −11
Original line number Diff line number Diff line
@@ -6,29 +6,22 @@
, nixosTests
}:
let
  # Seahub 8.x.x does not support django-webpack-loader >=1.x.x
  python = python3.override {
    packageOverrides = self: super: {
      django-webpack-loader = super.django-webpack-loader.overridePythonAttrs (old: rec {
        version = "0.7.0";
        src = old.src.override {
          inherit version;
          hash = "sha256-ejyIIBqlRIH5OZRlYVy+e5rs6AgUlqbQKHt8uOIy9Ec=";
        };
      });
      django = super.django_3;
    };
  };
in
python.pkgs.buildPythonApplication rec {
  pname = "seahub";
  version = "9.0.10";
  version = "10.0.1";
  pyproject = false;

  src = fetchFromGitHub {
    owner = "haiwen";
    repo = "seahub";
    rev = "5971bf25fe67d94ec4d9f53b785c15a098113620"; # using a fixed revision because upstream may re-tag releases :/
    sha256 = "sha256-7Exvm3EShb/1EqwA4wzWB9zCdv0P/ISmjKSoqtOMnqk=";
    rev = "e8c02236c0eaca6dde009872745f089da4b77e6e"; # using a fixed revision because upstream may re-tag releases :/
    sha256 = "sha256-7JXWKEFqCsC+ZByhvyP8AmDpajT3hpgyYDNUqc3wXyg=";
  };

  patches = [
+29 −7
Original line number Diff line number Diff line
{ stdenv, lib, fetchFromGitHub, pkg-config, python3, autoreconfHook
, libuuid, sqlite, glib, libevent, libsearpc, openssl, fuse, libarchive, which
, vala, cmake, oniguruma, nixosTests }:
{ stdenv
, lib
, fetchFromGitHub
, pkg-config
, python3
, autoreconfHook
, libuuid
, sqlite
, glib
, libevent
, libsearpc
, openssl
, fuse
, libarchive
, libjwt
, curl
, which
, vala
, cmake
, oniguruma
, nixosTests
}:

let
  # seafile-server relies on a specific version of libevhtp.
@@ -8,15 +27,16 @@ let
  libevhtp = import ./libevhtp.nix {
    inherit stdenv lib fetchFromGitHub cmake libevent;
  };
in stdenv.mkDerivation rec {
in
stdenv.mkDerivation rec {
  pname = "seafile-server";
  version = "9.0.10";
  version = "10.0.1";

  src = fetchFromGitHub {
    owner = "haiwen";
    repo = "seafile-server";
    rev = "079a8b65a543bfbc48e7671c3dbbffe19fd02944"; # using a fixed revision because upstream may re-tag releases :/
    sha256 = "sha256-F1n4E6ajpri3CVM7B28UKoTV1oOLr5nTy6Lw0E5tCrc=";
    rev = "db09baec1b88fc131bf4453a808ab63a3fc714c9"; # using a fixed revision because upstream may re-tag releases :/
    sha256 = "sha256-a5vtJcbnaYzq6/3xmhbWk23BZ+Wil/Tb/q22ML4bDqs=";
  };

  nativeBuildInputs = [ autoreconfHook pkg-config ];
@@ -31,6 +51,8 @@ in stdenv.mkDerivation rec {
    python3
    fuse
    libarchive
    libjwt
    curl
    which
    vala
    libevhtp