## START: Set by rpmautospec ## (rpmautospec version 0.8.3) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %global debug_package %{nil} Name: trilium Version: 0.99.3 Release: %autorelease Summary: A free and open-source, cross-platform hierarchical note taking application. License: MIT URL: https://github.com/TriliumNext/Trilium Source0: https://github.com/TriliumNext/Trilium/archive/refs/tags/v%{version}/Trilium-%{version}.tar.gz Source1: trilium.sysusers.conf Source2: trilium-server.service Source3: trilium.sysconfig Source4: build-server.sh BuildRequires: pnpm BuildRequires: nodejs BuildRequires: git BuildRequires: systemd-rpm-macros ExclusiveArch: x86_64 aarch64 %description Trilium is an open-source solution for note-taking and organizing a personal knowledge base. Use it locally on your desktop, or sync it with your self-hosted server to keep your notes everywhere you go. %files %license LICENSE %doc README.md %attr(755, root, root) %{_bindir}/trilium %{_datadir}/trilium/ %package server Summary: Self hosteable version of a hierarchical note taking Requires: nodejs %description server Trilium is an open-source solution for note-taking and organizing a personal knowledge base. Use it locally on your desktop, or sync it with your self-hosted server to keep your notes everywhere you go. This is a hosteable version of the application. %files server %license LICENSE %doc README.md %attr(755, root, root) %{_bindir}/trilium-server %attr(755, trilium, trilium) %{_sharedstatedir}/trilium-server/ %config(noreplace,missingok) %{_sysconfdir}/sysconfig/trilium-server %{_unitdir}/trilium-server.service %{_datadir}/trilium-server/ %prep %setup -q -n Trilium-%{version} mv %{S:4} apps/server/scripts/build-server.sh %build git init git -c user.name='none' -c user.email='' commit --allow-empty -m "." git tag v%{version} pnpm install --frozen-lockfile pnpm run chore:update-build-info pnpm run --filter server package %ifarch x86_64 pnpm run --filter desktop electron-forge:make --arch=x64 --platform=linux --targets=@electron-forge/maker-zip unzip ./apps/desktop/dist/out/make/zip/linux/x64/Trilium\ Notes-linux-x64-%{version}.zip -d ./out-electron mv ./out-electron/Trilium\ Notes-linux-x64/* ./out-electron/ rm -r ./out-electron/Trilium\ Notes-linux-x64/ %endif %ifarch aarch64 pnpm run --filter desktop electron-forge:make --arch=arm64 --platform=linux --targets=@electron-forge/maker-zip unzip ./apps/desktop/dist/out/make/zip/linux/arm64/Trilium\ Notes-linux-arm64-%{version}.zip -d ./out-electron mv ./out-electron/Trilium\ Notes-linux-arm64/* ./out-electron/ rm -r ./out-electron/Trilium\ Notes-linux-arm64/ %endif printf "#!/bin/sh\n/usr/share/trilium/trilium\n" > ./trilium-electron chmod 755 ./trilium-electron %install mkdir -p %{buildroot}%{_sysconfdir}/sysconfig/ mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{_unitdir} mkdir -p %{buildroot}%{_sharedstatedir}/trilium-server/ mkdir -p %{buildroot}%{_datadir} # Install server install -m 755 ./apps/server/dist/trilium.sh %{buildroot}%{_bindir}/trilium-server install -m 755 ./trilium-electron %{buildroot}%{_bindir}/trilium cp -pr ./apps/server/dist %{buildroot}%{_datadir}/trilium-server %ifarch x86_64 aarch64 cp -pr ./out-electron %{buildroot}%{_datadir}/trilium %endif install -m 644 %{S:2} %{buildroot}%{_unitdir}/trilium-server.service install -m 644 %{S:3} -D %{buildroot}%{_sysconfdir}/sysconfig/trilium-server %pre server %sysusers_create_compat %{S:1} %post server %systemd_post trilium-server.service %preun server %systemd_preun trilium-server.service %postun server %systemd_postun_with_restart trilium-server.service %changelog ## START: Generated by rpmautospec * Tue Nov 04 2025 Grillo del Mal - 0.99.3-1 - Initial commit ## END: Generated by rpmautospec