Unverified Commit 06b4256d authored by Adam C. Stephens's avatar Adam C. Stephens Committed by GitHub
Browse files

vikunja, vikunja-desktop: 0.24.6 -> 1.0.0 (#486294)

parents 26159a3b 860b14e6
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -127,6 +127,17 @@ See <https://github.com/NixOS/nixpkgs/issues/481673>.

- `geph` package's built-in GUI `geph5-client-gui` has been [removed](https://github.com/geph-official/geph5/commit/f2221fb8386312daf2cef05483ebb353ff48bdb4) by the upstream. All users who wish to continue using the GUI should install the `gephgui-wry`, which is consistent with the official release version.

- `services.vikunja` has been updated to Vikunja [v1.0.0](https://vikunja.io/changelog/whats-new-in-vikunja-1.0.0/), which introduces multiple breaking changes.
  Notable breaking changes:
  - CORS is enabled by default. The module now sets
    `services.vikunja.settings.service.publicurl` by default. Custom overrides must ensure it is
    set or disable CORS, otherwise Vikunja will fail to start.
  - API route and response changes may affect integrations.
  - Configuration format and option changes require review of existing settings (including OpenID
    provider configuration and metrics/log settings).
  - SQLite paths are now relative to `service.rootpath` unless absolute. Startup now validates file
    storage and OAuth providers.

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

<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
+1 −1
Original line number Diff line number Diff line
@@ -111,7 +111,7 @@ in
      };
      service = {
        interface = "${cfg.address}:${toString cfg.port}";
        frontendurl = "${cfg.frontendScheme}://${cfg.frontendHostname}/";
        publicurl = "${cfg.frontendScheme}://${cfg.frontendHostname}/";
      };
      files = {
        basepath = "/var/lib/vikunja/files";
+3 −3
Original line number Diff line number Diff line
@@ -15,12 +15,12 @@

let
  executableName = "vikunja-desktop";
  version = "0.24.6";
  version = "1.0.0";
  src = fetchFromGitHub {
    owner = "go-vikunja";
    repo = "vikunja";
    rev = "v${version}";
    hash = "sha256-yUUZ6gPI2Bte36HzfUE6z8B/I1NlwWDSJA2pwkuzd34=";
    hash = "sha256-IJ6985gLuI0O08xZq8NYoet02NPFqQQhDLND+nfmdbA=";
  };
in
stdenv.mkDerivation (finalAttrs: {
@@ -40,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
      pnpmInstallFlags
      ;
    fetcherVersion = 1;
    hash = "sha256-orFwjmS1KF82JiQa+BE92YOtKsnYiKVzLXrpjtbe1z8=";
    hash = "sha256-BvQfRsV5hiOTkxK+W3qHvVQwMAGdLB3X+PwYBa6Bwl4=";
  };

  env = {
+0 −3060

File deleted.

Preview size limit exceeded, changes collapsed.

+19 −15
Original line number Diff line number Diff line
@@ -2,56 +2,57 @@
  lib,
  fetchFromGitHub,
  stdenv,
  nodejs,
  pnpm_9,
  nodejs_24,
  pnpm_10,
  fetchPnpmDeps,
  pnpmConfigHook,
  buildGoModule,
  mage,
  dart-sass,
  writeShellScriptBin,
  nixosTests,
}:

let
  version = "0.24.6";
  version = "1.0.0";
  src = fetchFromGitHub {
    owner = "go-vikunja";
    repo = "vikunja";
    rev = "v${version}";
    hash = "sha256-yUUZ6gPI2Bte36HzfUE6z8B/I1NlwWDSJA2pwkuzd34=";
    hash = "sha256-IJ6985gLuI0O08xZq8NYoet02NPFqQQhDLND+nfmdbA=";
  };

  frontend = stdenv.mkDerivation (finalAttrs: {
    pname = "vikunja-frontend";
    inherit version src;

    patches = [
      ./nodejs-22.12-tailwindcss-update.patch
    ];
    sourceRoot = "${finalAttrs.src.name}/frontend";

    pnpmDeps = fetchPnpmDeps {
      inherit (finalAttrs)
        pname
        version
        patches
        src
        sourceRoot
        ;
      pnpm = pnpm_9;
      pnpm = pnpm_10;
      fetcherVersion = 1;
      hash = "sha256-94ZlywOZYmW/NsvE0dtEA81MeBWGUrJsBXTUauuOmZM=";
      hash = "sha256-OmLFn5aKsXPSbW6AehjkuTJMgOMzDSaYo2XbPvU6WXo=";
    };

    nativeBuildInputs = [
      nodejs
      nodejs_24
      dart-sass
      pnpmConfigHook
      pnpm_9
      pnpm_10
    ];

    doCheck = true;

    postBuild = ''
      # Force sass-embedded to use our dart-sass instead of bundled binaries.
      substituteInPlace node_modules/sass-embedded/dist/lib/src/compiler-path.js \
        --replace-fail 'compilerCommand = (() => {' 'compilerCommand = (() => { return ["${lib.getExe dart-sass}"];'
      pnpm run build
    '';

@@ -96,7 +97,7 @@ buildGoModule {
      mage
    ];

  vendorHash = "sha256-OsKejno8QGg7HzRsrftngiWGiWHFc1jDLi5mQ9/NjI4=";
  vendorHash = "sha256-PV6WlJlG839FtWUR6QONMuuBnmo+AA53xmUNbodQdzk=";

  inherit frontend;

@@ -108,6 +109,9 @@ buildGoModule {
    # These tests need internet, so we skip them.
    ${skipTest 1 "TestConvertTrelloToVikunja" "pkg/modules/migration/trello/trello_test.go"}
    ${skipTest 1 "TestConvertTodoistToVikunja" "pkg/modules/migration/todoist/todoist_test.go"}
    # These tests require a full config with public URL and CORS enabled.
    ${skipTest 1 "TestCreateOrganizationMap" "pkg/modules/migration/trello/trello_test.go"}
    ${skipTest 1 "TestTaskAttachmentUploadSize" "pkg/webtests/task_attachment_upload_test.go"}
  '';

  buildPhase = ''
@@ -121,8 +125,8 @@ buildGoModule {
  '';

  checkPhase = ''
    mage test:unit
    mage test:integration
    mage test:feature
    mage test:web
  '';

  installPhase = ''