about summary refs log tree commit diff
path: root/pkgs/applications/office
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/office')
-rw-r--r--pkgs/applications/office/appflowy/default.nix2
-rw-r--r--pkgs/applications/office/beancount/beancount_share.nix30
-rw-r--r--pkgs/applications/office/fava/default.nix4
-rw-r--r--pkgs/applications/office/foliate/default.nix8
-rw-r--r--pkgs/applications/office/gnucash/default.nix17
-rwxr-xr-xpkgs/applications/office/gnucash/update.sh24
-rw-r--r--pkgs/applications/office/morgen/default.nix11
-rwxr-xr-xpkgs/applications/office/morgen/update.sh26
-rw-r--r--pkgs/applications/office/paperless-ngx/default.nix2
-rw-r--r--pkgs/applications/office/timeline/default.nix2
10 files changed, 102 insertions, 24 deletions
diff --git a/pkgs/applications/office/appflowy/default.nix b/pkgs/applications/office/appflowy/default.nix
index 197a2096e04b..a8d0f7566c8e 100644
--- a/pkgs/applications/office/appflowy/default.nix
+++ b/pkgs/applications/office/appflowy/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   version = "0.4.1";
 
   src = fetchzip {
-    url = "https://github.com/AppFlowy-IO/appflowy/releases/download/${version}/AppFlowy-x86_64-unknown-linux-gnu-x86_64.tar.gz";
+    url = "https://github.com/AppFlowy-IO/appflowy/releases/download/${version}/AppFlowy-${version}-linux-x86_64.tar.gz";
     hash = "sha256-9wv7/3wtR1xiOHRYXP29Qbom1Xl9xZbhCFEPf0LJitg=";
     stripRoot = false;
   };
diff --git a/pkgs/applications/office/beancount/beancount_share.nix b/pkgs/applications/office/beancount/beancount_share.nix
new file mode 100644
index 000000000000..5386deff1d0b
--- /dev/null
+++ b/pkgs/applications/office/beancount/beancount_share.nix
@@ -0,0 +1,30 @@
+{ lib
+, python3
+, fetchFromGitHub
+, fetchpatch
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "beancount_share";
+  version = "2023-12-31";
+
+  src = fetchFromGitHub {
+    owner = "akuukis";
+    repo = "beancount_share";
+    rev = "8f925422b9947e88babbeab3fdf7d71c53c9aa9e";
+    sha256 = "sha256-+ZA84VS0wf9TdrYleYB5OeKz7T8sDtrl4BM7Ft+k7OI=";
+  };
+
+  format = "pyproject";
+
+  buildInputs = [
+    python3.pkgs.setuptools
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/akuukis/beancount_share";
+    description = "A beancount plugin to share expenses with external partners within one ledger";
+    license = licenses.agpl3Plus;
+    maintainers = with maintainers; [ matthiasbeyer ];
+  };
+}
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index 1df9a4bbd028..fac8172c1d86 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -2,12 +2,12 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "fava";
-  version = "1.26.4";
+  version = "1.27";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-kQXojI57NYZgu3qXjtOL/a48YnXhuA6FEazhJ7jntqk=";
+    hash = "sha256-M2uE+/hYUP/l9l5zP/lHJsbMzfQ77cEJBFzbmX29gzM=";
   };
 
   nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
diff --git a/pkgs/applications/office/foliate/default.nix b/pkgs/applications/office/foliate/default.nix
index 80b6122fa7b6..0ca0f87a073a 100644
--- a/pkgs/applications/office/foliate/default.nix
+++ b/pkgs/applications/office/foliate/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "foliate";
-  version = "3.0.1";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "johnfactotum";
     repo = pname;
-    rev = version;
-    hash = "sha256-ksjd/H62c9dhoOXQtrKqexAjLMGd/adP/fL78fYRi/Y=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-6cymAqQxHHoTgzEyUKXC7zV/lUEJfIG+54+tLsc9iHo=";
     fetchSubmodules = true;
   };
 
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A simple and modern GTK eBook reader";
-    homepage = "https://johnfactotum.github.io/foliate/";
+    homepage = "https://johnfactotum.github.io/foliate";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ onny ];
   };
diff --git a/pkgs/applications/office/gnucash/default.nix b/pkgs/applications/office/gnucash/default.nix
index 7c378bc52a90..b7929dbf9e44 100644
--- a/pkgs/applications/office/gnucash/default.nix
+++ b/pkgs/applications/office/gnucash/default.nix
@@ -28,13 +28,12 @@
 
 stdenv.mkDerivation rec {
   pname = "gnucash";
-  version = "5.4";
+  version = "5.5";
 
   # raw source code doesn't work out of box; fetchFromGitHub not usable
   src = fetchurl {
-    # Upstream uploaded a -1 tarball on the same release, remove on next release
-    url = "https://github.com/Gnucash/gnucash/releases/download/${version}/gnucash-${version}-1.tar.bz2";
-    hash = "sha256-d0EWXW1lLqe0oehJjPQ5pWuBpcyLZTKRpZBU8jYqv8w=";
+    url = "https://github.com/Gnucash/gnucash/releases/download/${version}/gnucash-${version}.tar.bz2";
+    hash = "sha256-tNr2e7iStwYyP2Lp+pckIDnX3QouHhB3HgwlgX3Q7Ts=";
   };
 
   nativeBuildInputs = [
@@ -77,12 +76,6 @@ stdenv.mkDerivation rec {
     ./0003-remove-valgrind.patch
     # this patch makes gnucash exec the Finance::Quote wrapper directly
     ./0004-exec-fq-wrapper.patch
-    # this patch fixes a test that fails due to a type error, remove on next release
-    (fetchpatch {
-      name = "0005-utest-gnc-pricedb-fix.patch";
-      url = "https://github.com/Gnucash/gnucash/commit/0bd556c581ac462ca41b3cb533323fc3587051e1.patch";
-      hash = "sha256-k0ANZuOkWrtU4q380oDu/hC9PeGmujF49XEFQ8eCLGM=";
-    })
   ];
 
   # this needs to be an environment variable and not a cmake flag to suppress
@@ -106,7 +99,7 @@ stdenv.mkDerivation rec {
       owner = "Gnucash";
       repo = "gnucash-docs";
       rev = version;
-      hash = "sha256-aPxQEcpo8SPv8lPQbxMl1wg8ijH9Rz0oo4K5lp3C/bw=";
+      hash = "sha256-ilDh4PH+tdrJReIpgvEd0Gvs8Xvt5Q43XM5r7Bn+5IM=";
     };
 
     nativeBuildInputs = [ cmake ];
@@ -138,6 +131,8 @@ stdenv.mkDerivation rec {
       --prefix PERL5LIB : "${with perlPackages; makeFullPerlPath [ JSONParse FinanceQuote ]}"
   '';
 
+  passthru.updateScript = ./update.sh;
+
   meta = with lib; {
     homepage = "https://www.gnucash.org/";
     description = "Free software for double entry accounting";
diff --git a/pkgs/applications/office/gnucash/update.sh b/pkgs/applications/office/gnucash/update.sh
new file mode 100755
index 000000000000..b339fd4a7c7c
--- /dev/null
+++ b/pkgs/applications/office/gnucash/update.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -I nixpkgs=./. -i bash -p curl jq nix-prefetch-github
+
+set -euo pipefail
+
+latest_version=$(curl -s https://api.github.com/repos/Gnucash/gnucash/releases/latest | jq -r '.tag_name')
+
+if [[ "$latest_version" = "$UPDATE_NIX_OLD_VERSION" ]]; then
+    echo "already up to date"
+    exit 0
+fi
+
+old_src_hash=$(nix-instantiate --eval -A gnucash.src.outputHash | tr -d '"')
+old_src_doc_hash=$(nix-instantiate --eval -A gnucash.docs.src.outputHash | tr -d '"')
+
+src_hash=$(nix-prefetch-url "https://github.com/Gnucash/gnucash/releases/download/$latest_version/gnucash-$latest_version.tar.bz2")
+src_hash=$(nix-hash --to-sri --type sha256 "$src_hash")
+src_doc_hash=$(nix-prefetch-github Gnucash gnucash-docs --rev "$latest_version" | jq -r .hash)
+src_doc_hash=$(nix-hash --to-sri --type sha256 "$src_doc_hash")
+
+cd "$(dirname "${BASH_SOURCE[0]}")"
+sed -i default.nix -e "s|$old_src_hash|$src_hash|"
+sed -i default.nix -e "s|$old_src_doc_hash|$src_doc_hash|"
+sed -i default.nix -e "/ version =/s|\"${UPDATE_NIX_OLD_VERSION}\"|\"${latest_version}\"|"
diff --git a/pkgs/applications/office/morgen/default.nix b/pkgs/applications/office/morgen/default.nix
index f2bcd3b6a975..54cd07a4e0eb 100644
--- a/pkgs/applications/office/morgen/default.nix
+++ b/pkgs/applications/office/morgen/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "morgen";
-  version = "3.0.1";
+  version = "3.1.6";
 
   src = fetchurl {
-    url = "https://download.todesktop.com/210203cqcj00tw1/morgen-${version}.deb";
-    sha256 = "sha256-lj+V5mntZzED2ZS62Uwlt/vTXwSuwzXeuEw8y/bA6og=";
+    url = "https://dl.todesktop.com/210203cqcj00tw1/versions/${version}/linux/deb";
+    hash = "sha256-/rMPNIpjkHdLE0lAdWCz71DbcqIW+1Y6RdFrYAfTSKU=";
   };
 
   nativeBuildInputs = [
@@ -46,12 +46,15 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  passthru.updateScript = ./update.sh;
+
   meta = with lib; {
     description = "All-in-one Calendars, Tasks and Scheduler";
     homepage = "https://morgen.so/download";
+    mainProgram = "morgen";
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.unfree;
-    maintainers = with maintainers; [ wolfangaukang ];
+    maintainers = with maintainers; [ justanotherariel wolfangaukang ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/office/morgen/update.sh b/pkgs/applications/office/morgen/update.sh
new file mode 100755
index 000000000000..e12f86a04bbc
--- /dev/null
+++ b/pkgs/applications/office/morgen/update.sh
@@ -0,0 +1,26 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl jq common-updater-scripts
+
+set -euo pipefail
+
+# URL to check for the latest version
+latestUrl="https://dl.todesktop.com/210203cqcj00tw1/linux/deb/x64"
+
+# Fetch the latest version information
+latestInfo=$(curl -sI -X GET $latestUrl | grep -oP 'morgen-\K\d+(\.\d+)*(?=[^\d])')
+
+if [[ -z "$latestInfo" ]]; then
+    echo "Could not find the latest version number."
+    exit 1
+fi
+
+# Extract the version number
+latestVersion=$(echo "$latestInfo" | head -n 1)
+
+echo "Latest version of Morgen is $latestVersion"
+
+# Update the package definition
+update-source-version morgen "$latestVersion"
+
+# Fetch and update the hash
+nix-prefetch-url --unpack "https://dl.todesktop.com/210203cqcj00tw1/versions/${latestVersion}/linux/deb"
diff --git a/pkgs/applications/office/paperless-ngx/default.nix b/pkgs/applications/office/paperless-ngx/default.nix
index 7cb012770695..0e40c19fef41 100644
--- a/pkgs/applications/office/paperless-ngx/default.nix
+++ b/pkgs/applications/office/paperless-ngx/default.nix
@@ -211,7 +211,7 @@ python.pkgs.buildPythonApplication rec {
     whitenoise
     whoosh
     zipp
-    zope_interface
+    zope-interface
     zxing-cpp
   ]
   ++ redis.optional-dependencies.hiredis
diff --git a/pkgs/applications/office/timeline/default.nix b/pkgs/applications/office/timeline/default.nix
index 70776bb391bf..7953badbec4d 100644
--- a/pkgs/applications/office/timeline/default.nix
+++ b/pkgs/applications/office/timeline/default.nix
@@ -20,7 +20,7 @@ python3.pkgs.buildPythonApplication rec {
   nativeBuildInputs = [ python3.pkgs.wrapPython copyDesktopItems wrapGAppsHook ];
 
   pythonPath = with python3.pkgs; [
-    wxPython_4_2
+    wxpython
     humblewx
     icalendar
     markdown