about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/office
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/office')
-rw-r--r--nixpkgs/pkgs/applications/office/PageEdit/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/abiword/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/appflowy/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/office/beamerpresenter/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/office/beancount/bean-add.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/beebeep/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/bookworm/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/csv2odf/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/cutemarked-ng/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/endeavour/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/espanso/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/office/fava/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/office/foliate/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/gnote/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/gnumeric/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/office/grisbi/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/gtg/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/homebank/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/iotas/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/office/jameica/default.nix32
-rw-r--r--nixpkgs/pkgs/applications/office/karlender/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/kbibtex/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/kitsas/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/kmymoney/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/ktimetracker/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/libreoffice/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/office/mytetra/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/notes/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/osmo/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/paperless-ngx/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/office/pdfmixtool/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/planify/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/office/planner/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/portfolio/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/office/pympress/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/qnotero/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/qownnotes/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/office/qpdfview/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/scribus/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/tagainijisho/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/timeline/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/timeular/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/office/todofi.sh/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/treesheets/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/office/tryton/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/office/vnote/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/watson/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/zotero/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/office/zotero/zotero_7.nix1
49 files changed, 97 insertions, 43 deletions
diff --git a/nixpkgs/pkgs/applications/office/PageEdit/default.nix b/nixpkgs/pkgs/applications/office/PageEdit/default.nix
index 0c98eaac4b37..5f47ca9bbe68 100644
--- a/nixpkgs/pkgs/applications/office/PageEdit/default.nix
+++ b/nixpkgs/pkgs/applications/office/PageEdit/default.nix
@@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "ePub XHTML Visual Editor";
+    mainProgram = "pageedit";
     homepage = "https://sigil-ebook.com/pageedit/";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.pasqui23 ];
diff --git a/nixpkgs/pkgs/applications/office/abiword/default.nix b/nixpkgs/pkgs/applications/office/abiword/default.nix
index 8f62a4187611..0ca18f8e360b 100644
--- a/nixpkgs/pkgs/applications/office/abiword/default.nix
+++ b/nixpkgs/pkgs/applications/office/abiword/default.nix
@@ -64,6 +64,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Word processing program, similar to Microsoft Word";
+    mainProgram = "abiword";
     homepage = "https://www.abisource.com/";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/applications/office/appflowy/default.nix b/nixpkgs/pkgs/applications/office/appflowy/default.nix
index 046e1273ed1b..ee508a1d59b9 100644
--- a/nixpkgs/pkgs/applications/office/appflowy/default.nix
+++ b/nixpkgs/pkgs/applications/office/appflowy/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "appflowy";
-  version = "0.4.9";
+  version = "0.5.2";
 
   src = fetchzip {
     url = "https://github.com/AppFlowy-IO/appflowy/releases/download/${version}/AppFlowy-${version}-linux-x86_64.tar.gz";
-    hash = "sha256-+Olmp2z5cLDgZikY2n9LI2A9W03pYdCtUE9hdr9Tp2Q=";
+    hash = "sha256-yXrdV/m6Ss9DyYleA5K7Wz1RUa8fznDJl5Yvco+jaiA=";
     stripRoot = false;
   };
 
diff --git a/nixpkgs/pkgs/applications/office/beamerpresenter/default.nix b/nixpkgs/pkgs/applications/office/beamerpresenter/default.nix
index 947c9946e5d3..c3e080ad3d52 100644
--- a/nixpkgs/pkgs/applications/office/beamerpresenter/default.nix
+++ b/nixpkgs/pkgs/applications/office/beamerpresenter/default.nix
@@ -87,7 +87,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Modular multi screen pdf presentation viewer";
     homepage = "https://github.com/stiglers-eponym/BeamerPresenter";
-    license = with licenses; [ agpl3 gpl3Plus ];
+    license = with licenses; [ agpl3Only gpl3Plus ];
     platforms = platforms.all;
     maintainers = with maintainers; [ pacien dotlambda ];
     mainProgram = "beamerpresenter";
diff --git a/nixpkgs/pkgs/applications/office/beancount/bean-add.nix b/nixpkgs/pkgs/applications/office/beancount/bean-add.nix
index 1d5bafbdb406..9d451668eff6 100644
--- a/nixpkgs/pkgs/applications/office/beancount/bean-add.nix
+++ b/nixpkgs/pkgs/applications/office/beancount/bean-add.nix
@@ -22,6 +22,7 @@ stdenv.mkDerivation {
   meta = {
     homepage = "https://github.com/simon-v/bean-add/";
     description = "beancount transaction entry assistant";
+    mainProgram = "bean-add";
 
     # The (only) source file states:
     #   License: "Do what you feel is right, but don't be a jerk" public license.
diff --git a/nixpkgs/pkgs/applications/office/beebeep/default.nix b/nixpkgs/pkgs/applications/office/beebeep/default.nix
index 8fa5fc980714..978066b7199a 100644
--- a/nixpkgs/pkgs/applications/office/beebeep/default.nix
+++ b/nixpkgs/pkgs/applications/office/beebeep/default.nix
@@ -36,6 +36,7 @@ mkDerivation rec {
   meta = with lib; {
     homepage = "https://www.beebeep.net/";
     description = "BeeBEEP is the free office messenger that is indispensable in all those places where privacy and security are an essential requirement.";
+    mainProgram = "beebeep";
     platforms = platforms.linux;
     license = licenses.gpl2Only;
     maintainers = with maintainers; [ mglolenstine ];
diff --git a/nixpkgs/pkgs/applications/office/bookworm/default.nix b/nixpkgs/pkgs/applications/office/bookworm/default.nix
index 621fce9e4579..13d3c46c946d 100644
--- a/nixpkgs/pkgs/applications/office/bookworm/default.nix
+++ b/nixpkgs/pkgs/applications/office/bookworm/default.nix
@@ -82,6 +82,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A simple, focused eBook reader";
+    mainProgram = "com.github.babluboy.bookworm";
     longDescription = ''
       Read the books you love without having to worry about different format complexities like epub, pdf, mobi, cbr, etc.
     '';
diff --git a/nixpkgs/pkgs/applications/office/csv2odf/default.nix b/nixpkgs/pkgs/applications/office/csv2odf/default.nix
index 436e8d97bdba..3ab5ff356b6e 100644
--- a/nixpkgs/pkgs/applications/office/csv2odf/default.nix
+++ b/nixpkgs/pkgs/applications/office/csv2odf/default.nix
@@ -11,6 +11,7 @@ python3.pkgs.buildPythonApplication rec {
   meta = with lib; {
     homepage = "https://sourceforge.net/p/csv2odf/wiki/Main_Page/";
     description = "Convert csv files to OpenDocument Format";
+    mainProgram = "csv2odf";
     longDescription = ''
       csv2odf is a command line tool that can convert a comma separated value
       (csv) file to an odf, ods, html, xlsx, or docx document that can be viewed in
diff --git a/nixpkgs/pkgs/applications/office/cutemarked-ng/default.nix b/nixpkgs/pkgs/applications/office/cutemarked-ng/default.nix
index 9488546aad6e..79555fc2f113 100644
--- a/nixpkgs/pkgs/applications/office/cutemarked-ng/default.nix
+++ b/nixpkgs/pkgs/applications/office/cutemarked-ng/default.nix
@@ -49,6 +49,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A Qt-based, free and open source markdown editor";
+    mainProgram = "cutemarked";
     homepage = "https://github.com/Waqar144/CuteMarkEd-NG";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ rewine ];
diff --git a/nixpkgs/pkgs/applications/office/endeavour/default.nix b/nixpkgs/pkgs/applications/office/endeavour/default.nix
index 09442c8b56ba..851eab538818 100644
--- a/nixpkgs/pkgs/applications/office/endeavour/default.nix
+++ b/nixpkgs/pkgs/applications/office/endeavour/default.nix
@@ -62,6 +62,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Personal task manager for GNOME";
+    mainProgram = "endeavour";
     homepage = "https://gitlab.gnome.org/World/Endeavour";
     license = licenses.gpl3Plus;
     maintainers = teams.gnome.members;
diff --git a/nixpkgs/pkgs/applications/office/espanso/default.nix b/nixpkgs/pkgs/applications/office/espanso/default.nix
index d4d0290277e1..1b02f3be80ec 100644
--- a/nixpkgs/pkgs/applications/office/espanso/default.nix
+++ b/nixpkgs/pkgs/applications/office/espanso/default.nix
@@ -120,11 +120,6 @@ rustPlatform.buildRustPackage rec {
       --replace '"/usr/local/bin/espanso"' '"${placeholder "out"}/bin/espanso"'
   '';
 
-  env = lib.optionalAttrs stdenv.cc.isClang {
-    # Work around https://github.com/NixOS/nixpkgs/issues/166205.
-    NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}";
-  };
-
   # Some tests require networking
   doCheck = false;
 
@@ -150,6 +145,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with lib; {
     description = "Cross-platform Text Expander written in Rust";
+    mainProgram = "espanso";
     homepage = "https://espanso.org";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ kimat thehedgeh0g ];
diff --git a/nixpkgs/pkgs/applications/office/fava/default.nix b/nixpkgs/pkgs/applications/office/fava/default.nix
index 9cdc5d1b5014..d00600bbea59 100644
--- a/nixpkgs/pkgs/applications/office/fava/default.nix
+++ b/nixpkgs/pkgs/applications/office/fava/default.nix
@@ -2,12 +2,12 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "fava";
-  version = "1.27.2";
+  version = "1.27.3";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-kLQAWFHDmzsBjVMm/ZUn+TFkM52W0h0jg0wSp1tmPZQ=";
+    hash = "sha256-GsnXZaazEiOhyjbIinHRD1fdoqlAp3d5csrmtydxmGM=";
   };
 
   nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
@@ -47,6 +47,7 @@ python3.pkgs.buildPythonApplication rec {
 
   meta = with lib; {
     description = "Web interface for beancount";
+    mainProgram = "fava";
     homepage = "https://beancount.github.io/fava";
     changelog = "https://beancount.github.io/fava/changelog.html";
     license = licenses.mit;
diff --git a/nixpkgs/pkgs/applications/office/foliate/default.nix b/nixpkgs/pkgs/applications/office/foliate/default.nix
index 0ca0f87a073a..7a7aa8c1c9a1 100644
--- a/nixpkgs/pkgs/applications/office/foliate/default.nix
+++ b/nixpkgs/pkgs/applications/office/foliate/default.nix
@@ -51,6 +51,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A simple and modern GTK eBook reader";
+    mainProgram = "foliate";
     homepage = "https://johnfactotum.github.io/foliate";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ onny ];
diff --git a/nixpkgs/pkgs/applications/office/gnote/default.nix b/nixpkgs/pkgs/applications/office/gnote/default.nix
index 922c41d1d42f..29c72b24cdce 100644
--- a/nixpkgs/pkgs/applications/office/gnote/default.nix
+++ b/nixpkgs/pkgs/applications/office/gnote/default.nix
@@ -52,6 +52,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Apps/Gnote";
     description = "A note taking application";
+    mainProgram = "gnote";
     maintainers = with maintainers; [ jfvillablanca ];
     license = licenses.gpl3Only;
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/applications/office/gnumeric/default.nix b/nixpkgs/pkgs/applications/office/gnumeric/default.nix
index d0331a742472..7e351afadf53 100644
--- a/nixpkgs/pkgs/applications/office/gnumeric/default.nix
+++ b/nixpkgs/pkgs/applications/office/gnumeric/default.nix
@@ -7,11 +7,11 @@ let
   inherit (python3Packages) python pygobject3;
 in stdenv.mkDerivation rec {
   pname = "gnumeric";
-  version = "1.12.56";
+  version = "1.12.57";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "UaOPNaxbD3He+oueIL8uCFY3mPHLMzeamhdyb7Hj4bI=";
+    sha256 = "r/ULG2I0DCT8z0U9X60+f7c/S8SzT340tsPS2a9qHk8=";
   };
 
   configureFlags = [ "--disable-component" ];
diff --git a/nixpkgs/pkgs/applications/office/grisbi/default.nix b/nixpkgs/pkgs/applications/office/grisbi/default.nix
index 81f97b116b05..b0242fc4ae43 100644
--- a/nixpkgs/pkgs/applications/office/grisbi/default.nix
+++ b/nixpkgs/pkgs/applications/office/grisbi/default.nix
@@ -30,6 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A personnal accounting application";
+    mainProgram = "grisbi";
     longDescription = ''
       Grisbi is an application written by French developers, so it perfectly
       respects French accounting rules. Grisbi can manage multiple accounts,
diff --git a/nixpkgs/pkgs/applications/office/gtg/default.nix b/nixpkgs/pkgs/applications/office/gtg/default.nix
index 44aaa6c7146e..d7bad1d13390 100644
--- a/nixpkgs/pkgs/applications/office/gtg/default.nix
+++ b/nixpkgs/pkgs/applications/office/gtg/default.nix
@@ -72,6 +72,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with lib; {
     description = " A personal tasks and TODO-list items organizer";
+    mainProgram = "gtg";
     longDescription = ''
       "Getting Things GNOME" (GTG) is a personal tasks and ToDo list organizer inspired by the "Getting Things Done" (GTD) methodology.
       GTG is intended to help you track everything you need to do and need to know, from small tasks to large projects.
diff --git a/nixpkgs/pkgs/applications/office/homebank/default.nix b/nixpkgs/pkgs/applications/office/homebank/default.nix
index a5f0b90095e7..023a5729ed80 100644
--- a/nixpkgs/pkgs/applications/office/homebank/default.nix
+++ b/nixpkgs/pkgs/applications/office/homebank/default.nix
@@ -14,6 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Free, easy, personal accounting for everyone";
+    mainProgram = "homebank";
     homepage = "https://www.gethomebank.org";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ pSub frlan ];
diff --git a/nixpkgs/pkgs/applications/office/iotas/default.nix b/nixpkgs/pkgs/applications/office/iotas/default.nix
index 4b6a251f0460..08a4a1bd3d6e 100644
--- a/nixpkgs/pkgs/applications/office/iotas/default.nix
+++ b/nixpkgs/pkgs/applications/office/iotas/default.nix
@@ -19,15 +19,15 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "iotas";
-  version = "0.2.7";
-  format = "other";
+  version = "0.2.10";
+  pyproject = false;
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
-    owner = "cheywood";
-    repo = pname;
+    owner = "World";
+    repo = "iotas";
     rev = version;
-    hash = "sha256-k3Qbi/BwkJlQzlyTlo9SjJ1M3zMFHo4669rzd+BBPzQ=";
+    hash = "sha256-aITt+TJb/LrVOyb/mAC7U6/NJ4stHD76jjBFC7Pt7fU=";
   };
 
   nativeBuildInputs = [
@@ -57,6 +57,7 @@ python3.pkgs.buildPythonApplication rec {
     markdown-it-py
     linkify-it-py
     mdit-py-plugins
+    pypandoc
   ];
 
   # prevent double wrapping
@@ -67,9 +68,10 @@ python3.pkgs.buildPythonApplication rec {
 
   meta = with lib; {
     description = "Simple note taking with mobile-first design and Nextcloud sync";
-    homepage = "https://gitlab.gnome.org/cheywood/iotas";
+    homepage = "https://gitlab.gnome.org/World/iotas";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
+    mainProgram = "iotas";
     maintainers = with maintainers; [ zendo ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/office/jameica/default.nix b/nixpkgs/pkgs/applications/office/jameica/default.nix
index e6aa7cb21d14..66d2a80c5555 100644
--- a/nixpkgs/pkgs/applications/office/jameica/default.nix
+++ b/nixpkgs/pkgs/applications/office/jameica/default.nix
@@ -1,4 +1,18 @@
-{ lib, stdenv, fetchFromGitHub, makeDesktopItem, makeWrapper, wrapGAppsHook, ant, jdk, jre, gtk2, glib, xorg, Cocoa }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, makeDesktopItem
+, makeWrapper
+, wrapGAppsHook
+, stripJavaArchivesHook
+, ant
+, jdk
+, jre
+, gtk2
+, glib
+, libXtst
+, Cocoa
+}:
 
 let
   _version = "2.10.4";
@@ -26,10 +40,6 @@ stdenv.mkDerivation rec {
   pname = "jameica";
   inherit version;
 
-  nativeBuildInputs = [ ant jdk wrapGAppsHook makeWrapper ];
-  buildInputs = lib.optionals stdenv.isLinux [ gtk2 glib xorg.libXtst ]
-    ++ lib.optional stdenv.isDarwin Cocoa;
-
   src = fetchFromGitHub {
     owner = "willuhn";
     repo = "jameica";
@@ -37,15 +47,23 @@ stdenv.mkDerivation rec {
     hash = "sha256-MSVSd5DyVL+dcfTDv1M99hxickPwT2Pt6QGNsu6DGZI=";
   };
 
+  nativeBuildInputs = [ ant jdk wrapGAppsHook makeWrapper stripJavaArchivesHook ];
+  buildInputs = lib.optionals stdenv.isLinux [ gtk2 glib libXtst ]
+    ++ lib.optional stdenv.isDarwin Cocoa;
+
   dontWrapGApps = true;
 
   # there is also a build.gradle, but it only seems to be used to vendor 3rd party libraries
   # and is not able to build the application itself
   buildPhase = ''
-    (cd build; ant -Dsystem.version=${version} init compile jar)
+    runHook preBuild
+    ant -f build -Dsystem.version=${version} init compile jar
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out/libexec $out/lib $out/bin $out/share/{applications,jameica-${version},java}/
 
     # copy libraries except SWT
@@ -57,6 +75,8 @@ stdenv.mkDerivation rec {
     install -Dm644 plugin.xml $out/share/java/
     install -Dm644 build/jameica-icon.png $out/share/pixmaps/jameica.png
     cp ${desktopItem}/share/applications/* $out/share/applications/
+
+    runHook postInstall
   '';
 
   postFixup = ''
diff --git a/nixpkgs/pkgs/applications/office/karlender/default.nix b/nixpkgs/pkgs/applications/office/karlender/default.nix
index 222a91b5d620..db3e5c6876d9 100644
--- a/nixpkgs/pkgs/applications/office/karlender/default.nix
+++ b/nixpkgs/pkgs/applications/office/karlender/default.nix
@@ -54,6 +54,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with lib; {
     description = "Mobile-friendly GTK calendar application";
+    mainProgram = "karlender";
     homepage = "https://gitlab.com/floers/karlender";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ chuangzhu ];
diff --git a/nixpkgs/pkgs/applications/office/kbibtex/default.nix b/nixpkgs/pkgs/applications/office/kbibtex/default.nix
index 1b3b4accc4ea..e7b04848ca40 100644
--- a/nixpkgs/pkgs/applications/office/kbibtex/default.nix
+++ b/nixpkgs/pkgs/applications/office/kbibtex/default.nix
@@ -70,6 +70,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "Bibliography editor for KDE";
+    mainProgram = "kbibtex";
     homepage = "https://userbase.kde.org/KBibTeX";
     changelog = "https://invent.kde.org/office/kbibtex/-/raw/v${version}/ChangeLog";
     license = licenses.gpl2Plus;
diff --git a/nixpkgs/pkgs/applications/office/kitsas/default.nix b/nixpkgs/pkgs/applications/office/kitsas/default.nix
index c3c3f5392679..e1b3a2b1a729 100644
--- a/nixpkgs/pkgs/applications/office/kitsas/default.nix
+++ b/nixpkgs/pkgs/applications/office/kitsas/default.nix
@@ -41,6 +41,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/artoh/kitupiikki";
     description = "An accounting tool suitable for Finnish associations and small business";
+    mainProgram = "kitsas";
     maintainers = with maintainers; [ gspia ];
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/applications/office/kmymoney/default.nix b/nixpkgs/pkgs/applications/office/kmymoney/default.nix
index 3b39f88add75..a910d76b29c9 100644
--- a/nixpkgs/pkgs/applications/office/kmymoney/default.nix
+++ b/nixpkgs/pkgs/applications/office/kmymoney/default.nix
@@ -76,6 +76,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Personal finance manager for KDE";
+    mainProgram = "kmymoney";
     homepage = "https://kmymoney.org/";
     platforms = lib.platforms.linux;
     license = lib.licenses.gpl2Plus;
diff --git a/nixpkgs/pkgs/applications/office/ktimetracker/default.nix b/nixpkgs/pkgs/applications/office/ktimetracker/default.nix
index 3b1700cc24fa..58720625cc8e 100644
--- a/nixpkgs/pkgs/applications/office/ktimetracker/default.nix
+++ b/nixpkgs/pkgs/applications/office/ktimetracker/default.nix
@@ -25,6 +25,7 @@ kio knotifications kwindowsystem kxmlgui ktextwidgets
 
   meta = with lib; {
     description = "Todo management and time tracking application";
+    mainProgram = "ktimetracker";
     license = licenses.gpl2;
     homepage = "https://userbase.kde.org/KTimeTracker";
     maintainers = with maintainers; [ dtzWill ];
diff --git a/nixpkgs/pkgs/applications/office/libreoffice/default.nix b/nixpkgs/pkgs/applications/office/libreoffice/default.nix
index e7fa0c53f730..46677de9bbc1 100644
--- a/nixpkgs/pkgs/applications/office/libreoffice/default.nix
+++ b/nixpkgs/pkgs/applications/office/libreoffice/default.nix
@@ -98,7 +98,7 @@
 , gpgme
 , libwebp
 , abseil-cpp
-, langs ? [ "ar" "ca" "cs" "da" "de" "en-GB" "en-US" "eo" "es" "fr" "hu" "it" "ja" "nl" "pl" "pt" "pt-BR" "ro" "ru" "sl" "tr" "uk" "zh-CN" ]
+, langs ? [ "ar" "ca" "cs" "da" "de" "en-GB" "en-US" "eo" "es" "fi" "fr" "hu" "it" "ja" "nl" "pl" "pt" "pt-BR" "ro" "ru" "sl" "tr" "uk" "zh-CN" ]
 , withHelp ? true
 , kdeIntegration ? false
 , wrapQtAppsHook ? null
diff --git a/nixpkgs/pkgs/applications/office/mytetra/default.nix b/nixpkgs/pkgs/applications/office/mytetra/default.nix
index b7d53507c4cf..8195a73bb207 100644
--- a/nixpkgs/pkgs/applications/office/mytetra/default.nix
+++ b/nixpkgs/pkgs/applications/office/mytetra/default.nix
@@ -37,6 +37,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "Smart manager for information collecting";
+    mainProgram = "mytetra";
     homepage = "https://webhamster.ru/site/page/index/articles/projectcode/138";
     license = licenses.gpl3;
     maintainers = [ ];
diff --git a/nixpkgs/pkgs/applications/office/notes/default.nix b/nixpkgs/pkgs/applications/office/notes/default.nix
index abd93813a725..dda8ddb5beac 100644
--- a/nixpkgs/pkgs/applications/office/notes/default.nix
+++ b/nixpkgs/pkgs/applications/office/notes/default.nix
@@ -41,6 +41,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   meta = {
     description = "A fast and beautiful note-taking app";
+    mainProgram = "notes";
     downloadPage = "https://github.com/nuttyartist/notes";
     homepage = "https://www.get-notes.com";
     license = lib.licenses.mpl20;
diff --git a/nixpkgs/pkgs/applications/office/osmo/default.nix b/nixpkgs/pkgs/applications/office/osmo/default.nix
index 975305a72173..8f73d9c6b2e8 100644
--- a/nixpkgs/pkgs/applications/office/osmo/default.nix
+++ b/nixpkgs/pkgs/applications/office/osmo/default.nix
@@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A handy personal organizer";
+    mainProgram = "osmo";
     homepage = "https://clayo.org/osmo/";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/applications/office/paperless-ngx/default.nix b/nixpkgs/pkgs/applications/office/paperless-ngx/default.nix
index 0f77fd1cf358..257ee3250e50 100644
--- a/nixpkgs/pkgs/applications/office/paperless-ngx/default.nix
+++ b/nixpkgs/pkgs/applications/office/paperless-ngx/default.nix
@@ -22,13 +22,13 @@
 }:
 
 let
-  version = "2.6.1";
+  version = "2.6.3";
 
   src = fetchFromGitHub {
     owner = "paperless-ngx";
     repo = "paperless-ngx";
     rev = "refs/tags/v${version}";
-    hash = "sha256-sBzy3C59630moKuv3cmE9YI/FQkoZbF0SoSFbpJdNd8=";
+    hash = "sha256-M1CnB1adk02lJuFsm0zzjSx/l9hKHJMt1Wh2a5Xtdyg=";
   };
 
   python = python3;
@@ -53,7 +53,7 @@ let
       cd src-ui
     '';
 
-    npmDepsHash = "sha256-oie1jUFIRrOpdxw1gDtLBgFl1Fb0F5hjvl0wTAd6eYU=";
+    npmDepsHash = "sha256-qgCUfGVk698Ink23U7LxkGdFoNpOhCp240tbk+hU0dk=";
 
     nativeBuildInputs = [
       pkg-config
diff --git a/nixpkgs/pkgs/applications/office/pdfmixtool/default.nix b/nixpkgs/pkgs/applications/office/pdfmixtool/default.nix
index 585c2d43c433..2aeca54c1e96 100644
--- a/nixpkgs/pkgs/applications/office/pdfmixtool/default.nix
+++ b/nixpkgs/pkgs/applications/office/pdfmixtool/default.nix
@@ -51,6 +51,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "An application to split, merge, rotate and mix PDF files";
+    mainProgram = "pdfmixtool";
     homepage = "https://gitlab.com/scarpetta/pdfmixtool";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ onny ];
diff --git a/nixpkgs/pkgs/applications/office/planify/default.nix b/nixpkgs/pkgs/applications/office/planify/default.nix
index c4a1ab0887d1..537dc979a493 100644
--- a/nixpkgs/pkgs/applications/office/planify/default.nix
+++ b/nixpkgs/pkgs/applications/office/planify/default.nix
@@ -27,13 +27,13 @@
 
 stdenv.mkDerivation rec {
   pname = "planify";
-  version = "4.5.2";
+  version = "4.5.4";
 
   src = fetchFromGitHub {
     owner = "alainm23";
     repo = "planify";
     rev = version;
-    hash = "sha256-huHNcAIwTvKssPQmOGCc6UzPxCh7JP1gM6BGbD0QM/w=";
+    hash = "sha256-Q7QwsMUlejZStmQNRQntclHSCVQl54dtg8hyvXyM4PM=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/office/planner/default.nix b/nixpkgs/pkgs/applications/office/planner/default.nix
index 8dbcd13f1c99..0beb4825ddd4 100644
--- a/nixpkgs/pkgs/applications/office/planner/default.nix
+++ b/nixpkgs/pkgs/applications/office/planner/default.nix
@@ -59,6 +59,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Project management tool for the GNOME desktop";
+    mainProgram = "planner";
     homepage = "https://wiki.gnome.org/Apps/Planner";
     license = lib.licenses.gpl2Plus;
     maintainers = with lib.maintainers; [ amiloradovsky ];
diff --git a/nixpkgs/pkgs/applications/office/portfolio/default.nix b/nixpkgs/pkgs/applications/office/portfolio/default.nix
index b58b0152d41a..7ef353dc1cd0 100644
--- a/nixpkgs/pkgs/applications/office/portfolio/default.nix
+++ b/nixpkgs/pkgs/applications/office/portfolio/default.nix
@@ -27,11 +27,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "PortfolioPerformance";
-  version = "0.67.3";
+  version = "0.68.2";
 
   src = fetchurl {
     url = "https://github.com/buchen/portfolio/releases/download/${version}/PortfolioPerformance-${version}-linux.gtk.x86_64.tar.gz";
-    hash = "sha256-WqWrerEBaaXA9vhpVHEyMZdAxajeOPANFyUeK42cXUU=";
+    hash = "sha256-h/WCfF3jK/pkN911vxPe2xzGUfVY2Xy+3yJwoqBQ5mA=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/office/pympress/default.nix b/nixpkgs/pkgs/applications/office/pympress/default.nix
index 485b83ab7c3a..353e46e067da 100644
--- a/nixpkgs/pkgs/applications/office/pympress/default.nix
+++ b/nixpkgs/pkgs/applications/office/pympress/default.nix
@@ -42,6 +42,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with lib; {
     description = "Simple yet powerful PDF reader designed for dual-screen presentations";
+    mainProgram = "pympress";
     license = licenses.gpl2Plus;
     homepage = "https://cimbali.github.io/pympress/";
     maintainers = [ maintainers.tbenst ];
diff --git a/nixpkgs/pkgs/applications/office/qnotero/default.nix b/nixpkgs/pkgs/applications/office/qnotero/default.nix
index ff7ce4121298..c091f61dffc6 100644
--- a/nixpkgs/pkgs/applications/office/qnotero/default.nix
+++ b/nixpkgs/pkgs/applications/office/qnotero/default.nix
@@ -43,6 +43,7 @@ python3Packages.buildPythonPackage rec {
 
   meta = {
     description = "Quick access to Zotero references";
+    mainProgram = "qnotero";
     homepage = "https://www.cogsci.nl/software/qnotero";
     license = lib.licenses.gpl2;
     platforms = lib.platforms.unix;
diff --git a/nixpkgs/pkgs/applications/office/qownnotes/default.nix b/nixpkgs/pkgs/applications/office/qownnotes/default.nix
index 0ff9312f8b49..4164e493bc8a 100644
--- a/nixpkgs/pkgs/applications/office/qownnotes/default.nix
+++ b/nixpkgs/pkgs/applications/office/qownnotes/default.nix
@@ -19,14 +19,14 @@
 let
   pname = "qownnotes";
   appname = "QOwnNotes";
-  version = "24.3.0";
+  version = "24.3.5";
 in
 stdenv.mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/pbek/QOwnNotes/releases/download/v${version}/qownnotes-${version}.tar.xz";
-    hash = "sha256-NIxRXNawzV6adgf7tCYdn1/Nd2ULodOVGt1QwITpO6Q=";
+    hash = "sha256-s3OeTK6XodIMrNTuImdljbQYX1Abj7SFOZmPJgm2teo=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/office/qpdfview/default.nix b/nixpkgs/pkgs/applications/office/qpdfview/default.nix
index 49e2334c8093..9b0bb09df904 100644
--- a/nixpkgs/pkgs/applications/office/qpdfview/default.nix
+++ b/nixpkgs/pkgs/applications/office/qpdfview/default.nix
@@ -62,6 +62,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "A tabbed document viewer";
+    mainProgram = "qpdfview";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/applications/office/scribus/default.nix b/nixpkgs/pkgs/applications/office/scribus/default.nix
index 00f7d2b51f8b..5f2a11719896 100644
--- a/nixpkgs/pkgs/applications/office/scribus/default.nix
+++ b/nixpkgs/pkgs/applications/office/scribus/default.nix
@@ -74,6 +74,7 @@ stdenv.mkDerivation (finalAttrs: {
       arthsmn
     ];
     description = "Desktop Publishing (DTP) and Layout program";
+    mainProgram = "scribus";
     homepage = "https://www.scribus.net";
     # There are a lot of licenses...
     # https://github.com/scribusproject/scribus/blob/20508d69ca4fc7030477db8dee79fd1e012b52d2/COPYING#L15-L19
diff --git a/nixpkgs/pkgs/applications/office/tagainijisho/default.nix b/nixpkgs/pkgs/applications/office/tagainijisho/default.nix
index 55c84fd2a3d0..6ec176393e3e 100644
--- a/nixpkgs/pkgs/applications/office/tagainijisho/default.nix
+++ b/nixpkgs/pkgs/applications/office/tagainijisho/default.nix
@@ -18,6 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A free, open-source Japanese dictionary and kanji lookup tool";
+    mainProgram = "tagainijisho";
     homepage = "https://www.tagaini.net/";
     license = with licenses; [
       /* program */
diff --git a/nixpkgs/pkgs/applications/office/timeline/default.nix b/nixpkgs/pkgs/applications/office/timeline/default.nix
index 7953badbec4d..9f8bb5b563d5 100644
--- a/nixpkgs/pkgs/applications/office/timeline/default.nix
+++ b/nixpkgs/pkgs/applications/office/timeline/default.nix
@@ -87,6 +87,7 @@ python3.pkgs.buildPythonApplication rec {
     homepage = "https://thetimelineproj.sourceforge.net/";
     changelog = "https://thetimelineproj.sourceforge.net/changelog.html";
     description = "Display and navigate information on a timeline";
+    mainProgram = "timeline";
     license = with licenses; [ gpl3Only cc-by-sa-30 ];
     platforms = with platforms; unix;
     maintainers = with maintainers; [ davidak ];
diff --git a/nixpkgs/pkgs/applications/office/timeular/default.nix b/nixpkgs/pkgs/applications/office/timeular/default.nix
index 8ea89c5b058b..ef6c931bcc6a 100644
--- a/nixpkgs/pkgs/applications/office/timeular/default.nix
+++ b/nixpkgs/pkgs/applications/office/timeular/default.nix
@@ -5,12 +5,12 @@
 }:
 
 let
-  version = "6.7.3";
+  version = "6.7.5";
   pname = "timeular";
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/timeular-desktop-packages/linux/production/Timeular-${version}.AppImage";
-    hash = "sha256-VnjCTf2x3GzmKW9EfNWGsN/aK7DKjTo8DZOF2qqGJ0Q=";
+    hash = "sha256-b/I34f8fGgPr4+fZJ+2cb+Xi/AvotxNHYg7IaLTByPk=";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/nixpkgs/pkgs/applications/office/todofi.sh/default.nix b/nixpkgs/pkgs/applications/office/todofi.sh/default.nix
index afdbceb3417e..5581c3d4f7dc 100644
--- a/nixpkgs/pkgs/applications/office/todofi.sh/default.nix
+++ b/nixpkgs/pkgs/applications/office/todofi.sh/default.nix
@@ -34,6 +34,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Todo-txt + Rofi = Todofi.sh";
+    mainProgram = "todofi.sh";
     homepage = "https://github.com/hugokernel/todofi.sh";
     license = licenses.mit;
     maintainers = with maintainers; [ ewok ];
diff --git a/nixpkgs/pkgs/applications/office/treesheets/default.nix b/nixpkgs/pkgs/applications/office/treesheets/default.nix
index 1fda91523a5e..c10b18a6f64a 100644
--- a/nixpkgs/pkgs/applications/office/treesheets/default.nix
+++ b/nixpkgs/pkgs/applications/office/treesheets/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "treesheets";
-  version = "unstable-2024-01-30";
+  version = "unstable-2024-03-14";
 
   src = fetchFromGitHub {
     owner = "aardappel";
     repo = "treesheets";
-    rev = "f11a3418cb6e403898be215f3efcc2fcb7bc0f19";
-    sha256 = "FOeRfNPX1ER1ZMUWy+4b67XfrATPPZntfhywjaGgDpo=";
+    rev = "4910f91cc067b1022d773a40d5762b0ebd47d0f3";
+    sha256 = "We3+Y2V2izsgem0fJ0/2pPj5tyjXhOEuubP7lIhnEQ0=";
   };
 
   nativeBuildInputs = [
@@ -50,6 +50,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Free Form Data Organizer";
+    mainProgram = "treesheets";
 
     longDescription = ''
       The ultimate replacement for spreadsheets, mind mappers, outliners,
diff --git a/nixpkgs/pkgs/applications/office/tryton/default.nix b/nixpkgs/pkgs/applications/office/tryton/default.nix
index 34c65d4e2fe7..3de19b4d605f 100644
--- a/nixpkgs/pkgs/applications/office/tryton/default.nix
+++ b/nixpkgs/pkgs/applications/office/tryton/default.nix
@@ -21,13 +21,13 @@ with lib;
 
 python3Packages.buildPythonApplication rec {
   pname = "tryton";
-  version = "7.0.5";
+  version = "7.0.7";
 
   disabled = !python3Packages.isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-NAnNBfwnMky0qbtU3P5+kHJwCj6nfIQCtYgu6nXLcaQ=";
+    sha256 = "sha256-NODeDEgmf/nSKrM+RxAUsUwsbVQT7OSDrTOGVBwOzpw=";
   };
 
   nativeBuildInputs = [
@@ -63,6 +63,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = {
     description = "The client of the Tryton application platform";
+    mainProgram = "tryton";
     longDescription = ''
       The client for Tryton, a three-tier high-level general purpose
       application platform under the license GPL-3 written in Python and using
diff --git a/nixpkgs/pkgs/applications/office/vnote/default.nix b/nixpkgs/pkgs/applications/office/vnote/default.nix
index cd118c3c1d88..4394a58bdb3e 100644
--- a/nixpkgs/pkgs/applications/office/vnote/default.nix
+++ b/nixpkgs/pkgs/applications/office/vnote/default.nix
@@ -34,6 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = {
     homepage = "https://vnotex.github.io/vnote";
     description = "A pleasant note-taking platform";
+    mainProgram = "vnote";
     changelog = "https://github.com/vnotex/vnote/releases/tag/${finalAttrs.src.rev}";
     license = lib.licenses.lgpl3Plus;
     maintainers = with lib.maintainers; [ AndersonTorres ];
diff --git a/nixpkgs/pkgs/applications/office/watson/default.nix b/nixpkgs/pkgs/applications/office/watson/default.nix
index 4d5fd8542f2e..0c04b0ddd52e 100644
--- a/nixpkgs/pkgs/applications/office/watson/default.nix
+++ b/nixpkgs/pkgs/applications/office/watson/default.nix
@@ -35,6 +35,7 @@ buildPythonApplication rec {
   meta = with lib; {
     homepage = "https://tailordev.github.io/Watson/";
     description = "A wonderful CLI to track your time!";
+    mainProgram = "watson";
     license = licenses.mit;
     maintainers = with maintainers; [ mguentner nathyong oxzi ];
   };
diff --git a/nixpkgs/pkgs/applications/office/zotero/default.nix b/nixpkgs/pkgs/applications/office/zotero/default.nix
index a5c49591f086..e343790da2c7 100644
--- a/nixpkgs/pkgs/applications/office/zotero/default.nix
+++ b/nixpkgs/pkgs/applications/office/zotero/default.nix
@@ -41,12 +41,12 @@
 
 stdenv.mkDerivation rec {
   pname = "zotero";
-  version = "6.0.30";
+  version = "6.0.35";
 
   src = fetchurl {
     url =
       "https://download.zotero.org/client/release/${version}/Zotero-${version}_linux-x86_64.tar.bz2";
-    hash = "sha256-4XQZ1xw9Qtk3SzHMsEUk+HuIYtHDAOMgpwzbAd5QQpU=";
+    hash = "sha256-HAVLmamEPuFf0548/iEXes+f4XnQ7kU1u9hyOYhVyZ0=";
   };
 
   nativeBuildInputs = [ wrapGAppsHook ];
diff --git a/nixpkgs/pkgs/applications/office/zotero/zotero_7.nix b/nixpkgs/pkgs/applications/office/zotero/zotero_7.nix
index 0de12fb2fd14..4d4ea36c5acf 100644
--- a/nixpkgs/pkgs/applications/office/zotero/zotero_7.nix
+++ b/nixpkgs/pkgs/applications/office/zotero/zotero_7.nix
@@ -144,6 +144,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://www.zotero.org";
     description = "Collect, organize, cite, and share your research sources";
+    mainProgram = "zotero";
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.agpl3Only;
     platforms = [ "x86_64-linux" ];