From 539dbaca41935925d8979dbea4c15b33e4d717cc Mon Sep 17 00:00:00 2001 From: Raboneko <119771935+raboneko@users.noreply.github.com> Date: Wed, 24 Jun 2026 18:27:37 -0500 Subject: [PATCH] add: ente ensu (#13110) (#13349) (cherry picked from commit 0068efdca3970d6544d3aa6c619fe204745ce83b) Co-authored-by: madomado --- anda/apps/ente/cli/anda.hcl | 5 ++ .../ente/cli/golang-github-ente-io-cli.spec | 75 +++++++++++++++++++ anda/apps/ente/cli/update.rhai | 10 +++ anda/apps/ente/ensu/anda.hcl | 5 ++ anda/apps/ente/ensu/ensu.desktop | 9 +++ anda/apps/ente/ensu/ensu.spec | 58 ++++++++++++++ anda/apps/ente/ensu/update.rhai | 10 +++ 7 files changed, 172 insertions(+) create mode 100644 anda/apps/ente/cli/anda.hcl create mode 100644 anda/apps/ente/cli/golang-github-ente-io-cli.spec create mode 100644 anda/apps/ente/cli/update.rhai create mode 100644 anda/apps/ente/ensu/anda.hcl create mode 100644 anda/apps/ente/ensu/ensu.desktop create mode 100644 anda/apps/ente/ensu/ensu.spec create mode 100644 anda/apps/ente/ensu/update.rhai diff --git a/anda/apps/ente/cli/anda.hcl b/anda/apps/ente/cli/anda.hcl new file mode 100644 index 0000000000..96db180116 --- /dev/null +++ b/anda/apps/ente/cli/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "golang-github-ente-io-cli.spec" + } +} diff --git a/anda/apps/ente/cli/golang-github-ente-io-cli.spec b/anda/apps/ente/cli/golang-github-ente-io-cli.spec new file mode 100644 index 0000000000..5b4e8455a1 --- /dev/null +++ b/anda/apps/ente/cli/golang-github-ente-io-cli.spec @@ -0,0 +1,75 @@ +# Generated by go2rpm 1.19.0 +%bcond check 0 +%bcond bootstrap 0 + +%if %{with bootstrap} +%global debug_package %{nil} +%endif + +%if %{with bootstrap} +%global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^golang\\(.*\\)$ +%endif + +# https://github.com/ente-io/ente +%global goipath github.com/ente-io/ente/cli +%global tag cli-v0.2.3 +Version: %(echo %tag | sed 's/^cli-v//') + +%gometa -f + +%global common_description %{expand: +The Ente CLI is a Command Line Utility for exporting data from Ente. It also does a few more things, for example, you can use it to decrypt the export from Ente Auth.} + +%global golicenses LICENSE +%global godocs CODE_OF_CONDUCT.md CONTRIBUTING.md cli/README.md SECURITY.md SUPPORT.md +Name: ente +Release: 1%?dist +Summary: 💚 End-to-end encrypted cloud for everything +Packager: madonuko + +License: AGPL-3.0-only +URL: ente.com +Source: %{gosource} + +%description %{common_description} + +%gopkg + +%prep +%goprep -A +%autopatch -p1 + +%if %{without bootstrap} +%build +%global gomodulesmode GO111MODULE=on +cd cli +%gobuild -o %{gobuilddir}/bin/ente . +%endif + +%install +cd cli +%gopkginstall +%if %{without bootstrap} +install -m 0755 -vd %{buildroot}%{_bindir} +install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/ +%endif + +%if %{without bootstrap} +%if %{with check} +%check +%gocheck +%endif +%endif + +%if %{without bootstrap} +%files +%license LICENSE +%doc CODE_OF_CONDUCT.md CONTRIBUTING.md README.md SECURITY.md SUPPORT.md cli/README.md +%{_bindir}/ente +%endif + +%gopkgfiles + +%changelog +* Tue Jun 16 2026 madonuko - 0.2.3-1 +- Initial package. diff --git a/anda/apps/ente/cli/update.rhai b/anda/apps/ente/cli/update.rhai new file mode 100644 index 0000000000..47355348ba --- /dev/null +++ b/anda/apps/ente/cli/update.rhai @@ -0,0 +1,10 @@ +let tagobjs = get("https://api.github.com/repos/ente-io/ente/tags").json_arr(); +for tagobj in tagobjs { + if tagobj.name.starts_with("cli-v") { + rpm.global("tag", tagobj.name); + if rpm.changed() { + rpm.release(); + break; + } + } +} diff --git a/anda/apps/ente/ensu/anda.hcl b/anda/apps/ente/ensu/anda.hcl new file mode 100644 index 0000000000..cd4f3517a0 --- /dev/null +++ b/anda/apps/ente/ensu/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "ensu.spec" + } +} diff --git a/anda/apps/ente/ensu/ensu.desktop b/anda/apps/ente/ensu/ensu.desktop new file mode 100644 index 0000000000..28d1a36c20 --- /dev/null +++ b/anda/apps/ente/ensu/ensu.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Ensu +Comment=Ensu Desktop App +Exec=Ensu +Icon=io.ente.ensu +Terminal=false +Type=Application +Categories=Utility; +StartupNotify=true diff --git a/anda/apps/ente/ensu/ensu.spec b/anda/apps/ente/ensu/ensu.spec new file mode 100644 index 0000000000..19f568bbeb --- /dev/null +++ b/anda/apps/ente/ensu/ensu.spec @@ -0,0 +1,58 @@ +%global tag ensu-v0.1.17 +%global appid io.ente.ensu +%global developer "Ente" +%global org "io.ente" +%global appstream_component desktop-application + + +# the original version of %%_package_note_flags expects cc/gcc to parse the ld flags, +# but for wasm the `lld -flavor wasm` linker is called directly +%dnl --package-metadata={\\"type\\":\\"rpm\\",\\"name\\":\\"%name\\",\\"version\\":\\"%version-%release\\",\\"architecture\\":\\"$RPM_ARCH\\",\\"osCpe\\":\\"cpe:/o:fedoraproject:fedora:%fedora\\"} +%define _package_note_flags %nil +%undefine _package_note_status +%define terra_rustflags %build_rustflags +%bcond_with mold +%global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ +%global _distro_extra_cxxflags -fno-permissive + +Name: ensu +Version: %(echo %tag | sed 's/^ensu-v//') +Release: 1%?dist +Summary: Private, personal LLM app that runs on your device and grows with you over time +License: AGPL-3.0-only +URL: https://ente.com/ensu +Source0: https://github.com/ente-io/ente/archive/refs/tags/%tag.tar.gz +Source1: ensu.desktop +Packager: madonuko +BuildRequires: cmake %tauri_buildrequires +BuildRequires: rust-std-static-wasm32-unknown-unknown +BuildRequires: clang-devel + +%description +%summary. + +%prep +%autosetup -n ente-%tag +pushd web +npm ci +popd +cd rust/apps/ensu +%tauri_prep + +%build +cd rust/apps/ensu +%npm_build -Bc + +%install +install -Dpm755 rust/target/rpm/Ensu -t %buildroot%_bindir +%desktop_file_install %{S:1} +install -Dpm644 rust/apps/ensu/src-tauri/icons/icon.png %buildroot%_hicolordir/1024x1024/apps/ensu.png +%terra_appstream + +%files +%doc README.md CONTRIBUTING.md CODE_OF_CONDUCT.md SECURITY.md SUPPORT.md +%license LICENSE +%_bindir/Ensu +%_appsdir/ensu.desktop +%_hicolordir/*/apps/ensu.png +%_metainfodir/%appid.metainfo.xml diff --git a/anda/apps/ente/ensu/update.rhai b/anda/apps/ente/ensu/update.rhai new file mode 100644 index 0000000000..684ad7048e --- /dev/null +++ b/anda/apps/ente/ensu/update.rhai @@ -0,0 +1,10 @@ +let tagobjs = get("https://api.github.com/repos/ente-io/ente/tags").json_arr(); +for tagobj in tagobjs { + if tagobj.name.starts_with("ensu-v") { + rpm.global("tag", tagobj.name); + if rpm.changed() { + rpm.release(); + break; + } + } +}