diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 3b18d19..c5fd461 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -112,19 +112,10 @@ jobs: "${{ env.WSPACE }}/nui-sftp/${{ env.BUILD_DIR }}" \ --config "${{ env.BUILD_TYPE }}" - - name: Download and extract icons - run: | - ICONS_DIR="${{ env.WSPACE }}/nui-sftp/dependencies/icons" - mkdir -p "$ICONS_DIR" - curl -L "https://s3.g.s4.mega.io/jgemkib4a5fte35rktt5wxrwkw4ejk4ybemkf/nui-scp/icons.tar.gz" -o "$ICONS_DIR/icons.tar.gz" - tar -xzf "$ICONS_DIR/icons.tar.gz" -C "$ICONS_DIR" --strip-components=0 - rm "$ICONS_DIR/icons.tar.gz" - # Output lands in ${{ env.WSPACE }}/nui-sftp/build/install - name: Run deploy script env: BUILD_DIR: ${{ env.WSPACE }}/nui-sftp/${{ env.BUILD_DIR }} - ICONS_SOURCE: ${{ env.WSPACE }}/nui-sftp/dependencies/icons run: | cd "${{ env.WSPACE }}/nui-sftp" && bash scripts/deploy.sh diff --git a/PKGBUILD b/PKGBUILD index e51d660..3be9579 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Tim Ebbeke pkgname=nui-sftp -pkgver=1.4.0 +pkgver=1.5.1 pkgrel=1 pkgdesc="NUI-based SFTP application" arch=('x86_64') @@ -36,13 +36,11 @@ source=( "$pkgname::git+$url.git#tag=v${pkgver//_/-}" "https://s3.g.s4.mega.io/jgemkib4a5fte35rktt5wxrwkw4ejk4ybemkf/nui-scp/images/NUI-SFTP_Logo-01_nopad.svg" "https://github.com/5cript/nui-sftp/releases/download/v${pkgver}/nui-sftp-linux-frontend_${pkgver}.tar.gz" - "https://s3.g.s4.mega.io/jgemkib4a5fte35rktt5wxrwkw4ejk4ybemkf/nui-scp/icons.tar.gz" ) sha256sums=( - '71f7d4cec28c57790e0a65acd627bb1c1d65a61922d387d954b80d15ed83b9e1' + 'b182a8ec9529632da1e123c2e74360d07ad593bc4ee2205c82ce5117b8c42ae6' 'cf0fc442069dfd28bd8b7769da6dfdca92111044ea9817197716ed9bfada3869' - '84777ed08bd9b689e78a2d855d714dee25620f6fbb97edffd8d45d12bede9294' - '30ffa48c3a509e878db31a1e5d80376242852e34d9c2aa3b44d2e3d1da2ce32e' + '9fa37d3f3056b049c9a998755ae7fbefcb26348ca533d7298b3b2964e1df5102' ) prepare() { @@ -86,7 +84,6 @@ package() { cp -r "$srcdir/$pkgname/static/assets" "$pkgdir"/opt/"$pkgname"/ install -m644 "$srcdir/$pkgname/LICENSE" "$pkgdir"/opt/"$pkgname"/LICENSE cp -r "$srcdir/$pkgname/themes/." "$pkgdir"/opt/"$pkgname"/themes/ - tar -xzf "$srcdir/icons.tar.gz" -C "$pkgdir"/opt/"$pkgname"/assets/icons --strip-components=0 # Desktop install -Dm644 "$srcdir/$pkgname/org.nuicpp.nui_sftp.desktop" "$pkgdir"/usr/share/applications/"$pkgname".desktop diff --git a/appimage/Dockerfile b/appimage/Dockerfile index c52b8ab..a4808b9 100644 --- a/appimage/Dockerfile +++ b/appimage/Dockerfile @@ -5,7 +5,7 @@ FROM ubuntu:22.04 ARG DEBIAN_FRONTEND=noninteractive ARG LLVM_VERSION=22 ARG BOOST_VERSION=1.90.0 -ARG LIBSSH_TAG=libssh-0.11.4 +ARG LIBSSH_TAG=libssh-0.12.2 ARG FMT_TAG=12.1.0 ARG JSON_TAG=v3.12.0 ARG INTERVAL_TREE_TAG=v3.1.1 diff --git a/appimage/build_inner.sh b/appimage/build_inner.sh index 1d4c810..014db5f 100755 --- a/appimage/build_inner.sh +++ b/appimage/build_inner.sh @@ -24,7 +24,6 @@ git clone --depth 1 --branch "v${VERSION}" --recurse-submodules \ # Same external inputs the PKGBUILD uses. cd "${BUILD_DIR}" wget -q "https://github.com/5cript/nui-sftp/releases/download/v${VERSION}/${PKGNAME}-linux-frontend_${VERSION}.tar.gz" -wget -q "https://s3.g.s4.mega.io/jgemkib4a5fte35rktt5wxrwkw4ejk4ybemkf/nui-scp/icons.tar.gz" wget -q "https://s3.g.s4.mega.io/jgemkib4a5fte35rktt5wxrwkw4ejk4ybemkf/nui-scp/images/NUI-SFTP_Logo-01_nopad.svg" # Build (mirrors the PKGBUILD build() flags). @@ -59,7 +58,6 @@ install -m755 "${SRC_DIR}/build/bin/${PKGNAME}" "${APPDIR}/opt/${PKGNAME}/bin/${ cp -r "${SRC_DIR}/static/assets/." "${APPDIR}/opt/${PKGNAME}/assets/" install -m644 "${SRC_DIR}/LICENSE" "${APPDIR}/opt/${PKGNAME}/LICENSE" cp -r "${SRC_DIR}/themes/." "${APPDIR}/opt/${PKGNAME}/themes/" -tar -xzf "${BUILD_DIR}/icons.tar.gz" -C "${APPDIR}/opt/${PKGNAME}/assets/icons" install -Dm644 "${BUILD_DIR}/NUI-SFTP_Logo-01_nopad.svg" \ "${APPDIR}/opt/${PKGNAME}/assets/icons/nui-sftp-logo.svg" diff --git a/arch b/arch index 824c131..7b170ba 160000 --- a/arch +++ b/arch @@ -1 +1 @@ -Subproject commit 824c13156a901c9c1b410fa1bd91408a49252342 +Subproject commit 7b170ba2ab556f9ca85b6e9a103f7afd4665f239 diff --git a/flathub b/flathub index 12c4913..ba9e078 160000 --- a/flathub +++ b/flathub @@ -1 +1 @@ -Subproject commit 12c4913a75665836f86111a6fa0a5175e77071af +Subproject commit ba9e078f18f2270ca70554e8c17b1696a86dc928 diff --git a/org.nuicpp.nui_sftp.metainfo.xml b/org.nuicpp.nui_sftp.metainfo.xml index 55fb69a..92a00e3 100644 --- a/org.nuicpp.nui_sftp.metainfo.xml +++ b/org.nuicpp.nui_sftp.metainfo.xml @@ -36,6 +36,43 @@ + + +

What's Changed

+

Adds a small fix onto the history and snippets feature

+
    +
  • Stopped Enter in the snippet variable form from also sending a newline by @5cript in https://github.com/5cript/nui-sftp/pull/208
  • +
+

+ + Full Changelog + : https://github.com/5cript/nui-sftp/compare/v1.5.0…v1.5.1 +

+
+
+ + +

THIS RELEASE IS NOT COMPLETE (MISSING ARTIFACTS), USE 1.5.1

+

What's Changed

+

Brings the new snippet and command history feature. +Replaces icons that were of unknown license origin with proper attributed open source icons. +And fixes many many issues.

+
    +
  • History and snippets by @5cript in https://github.com/5cript/nui-sftp/pull/198
  • +
  • Version in gui by @5cript in https://github.com/5cript/nui-sftp/pull/199
  • +
  • More Localization by @5cript in https://github.com/5cript/nui-sftp/pull/200
  • +
  • Settings search by @5cript in https://github.com/5cript/nui-sftp/pull/202
  • +
  • Snippet import by @5cript in https://github.com/5cript/nui-sftp/pull/204
  • +
  • Fix windows icons by @5cript in https://github.com/5cript/nui-sftp/pull/205
  • +
  • Fix command store and icons by @5cript in https://github.com/5cript/nui-sftp/pull/206
  • +
+

+ + Full Changelog + : https://github.com/5cript/nui-sftp/compare/v1.4.0…v1.5.0 +

+
+

Bulk Uploads and Downloads now can have concurrency (moving multiple files at the same time). @@ -416,6 +453,11 @@ Also improved the buttons in the toolbar and gave the "add server" but

The CMake version script no longer fails on -beta or +build suffixes.

+ + +

Initial feature onset.

+
+
\ No newline at end of file diff --git a/org.nuicpp.nui_sftp.yml b/org.nuicpp.nui_sftp.yml index 3279a41..75a1698 100644 --- a/org.nuicpp.nui_sftp.yml +++ b/org.nuicpp.nui_sftp.yml @@ -41,8 +41,8 @@ modules: sources: - type: git url: https://git.libssh.org/projects/libssh.git/ - tag: libssh-0.11.4 - commit: ca9c055d7c78ce357346ac7c2b14047568d47aa1 + tag: libssh-0.12.2 + commit: 07430deb9b97b751ec5ea5a7fc307f40bf042e0a - name: interval-tree buildsystem: simple @@ -70,8 +70,8 @@ modules: - cp -r * /app/frontend sources: - type: archive - url: https://github.com/5cript/nui-sftp/releases/download/v1.4.0/nui-sftp-linux-frontend_1.4.0.tar.gz - sha256: 84777ed08bd9b689e78a2d855d714dee25620f6fbb97edffd8d45d12bede9294 + url: https://github.com/5cript/nui-sftp/releases/download/v1.5.1/nui-sftp-linux-frontend_1.5.1.tar.gz + sha256: 9fa37d3f3056b049c9a998755ae7fbefcb26348ca533d7298b3b2964e1df5102 - name: nui-sftp buildsystem: cmake-ninja @@ -96,13 +96,9 @@ modules: - -DCMAKE_EXPORT_COMPILE_COMMANDS=ON - -DOFFLINE_BUILD=ON - -DJSON_Diagnostics=ON - - -DFORCED_PROJECT_VERSION=1.1.0 + - -DFORCED_PROJECT_VERSION=1.5.1 post-install: - OMIT_FRONTEND=true BUILD_DIRECTORY="$(pwd)" ../scripts/deploy.sh - # Copy icons to assets/icons dir - - mkdir -p /app/assets/icons - - cp -r ../dependencies/icons/* /app/assets/icons/ - - cp ../dependencies/icons/os_folders/windows/11/folder_main.png /app/assets/icons/folder_main.png # Rename the desktop Icon= entry to the reverse-DNS app id used by Flatpak. # Upstream ships "Icon=nui_sftp" because the icon filename differs across # packaging formats. @@ -116,13 +112,8 @@ modules: sources: - type: git url: https://github.com/5cript/nui-sftp - tag: v1.4.0 - commit: 92996b0dfb5f4713e7d5c6ef7460044958f9c22e - - type: archive - url: https://s3.g.s4.mega.io/jgemkib4a5fte35rktt5wxrwkw4ejk4ybemkf/nui-scp/icons.tar.gz - sha256: 30ffa48c3a509e878db31a1e5d80376242852e34d9c2aa3b44d2e3d1da2ce32e - dest: 'dependencies/icons' - strip-components: 0 + tag: v1.5.1 + commit: 99aa41d3f10aa799693324d2e476a4f601897e25 - type: git url: https://github.com/5cript/nui-sftp-deploy tag: flatpak/1.1.0_1 diff --git a/scripts/prepare_release.mjs b/scripts/prepare_release.mjs index a0e1c27..5563af0 100755 --- a/scripts/prepare_release.mjs +++ b/scripts/prepare_release.mjs @@ -7,11 +7,11 @@ import { updateReleasesInMetainfoXml, parseMetainfoXml } from "./update_scripts/ import { updateFlatpakYaml } from "./update_scripts/flatpak.mjs"; import { updateAppImageDockerfile } from "./update_scripts/appimage.mjs"; import { updateInnoSetup } from "./update_scripts/innosetup.mjs"; -import { version } from "./update_scripts/args.mjs"; +import { parsedVersion } from "./update_scripts/version.mjs"; const repoUrl = 'https://github.com/5cript/nui-sftp.git'; -await updateRepo(repoUrl, nuiSftpRepoDir, version).catch((err) => { +await updateRepo(repoUrl, nuiSftpRepoDir, parsedVersion().tag).catch((err) => { console.error('Error updating repository:', err); process.exit(1); }); diff --git a/scripts/update_scripts/flatpak.mjs b/scripts/update_scripts/flatpak.mjs index a610198..b4f1050 100644 --- a/scripts/update_scripts/flatpak.mjs +++ b/scripts/update_scripts/flatpak.mjs @@ -9,7 +9,7 @@ import { promisify } from 'node:util'; const execAsync = promisify(exec); async function setFunctionOnForcedVersionCmakeOptions(yamlLines) { - const { lineIndex, match } = findLineIndexMatching(yamlLines, /^(\s*)-DFORCED_PROJECT_VERSION=.*$/); + const { lineIndex, match } = findLineIndexMatching(yamlLines, /^(\s*-\s*)-DFORCED_PROJECT_VERSION=.*$/); if (lineIndex === -1) { console.warn('Could not find line with DFORCED_PROJECT_VERSION in flatpak YAML, skipping...'); return yamlLines; diff --git a/scripts/update_scripts/github.mjs b/scripts/update_scripts/github.mjs index a39de82..5fd1df6 100644 --- a/scripts/update_scripts/github.mjs +++ b/scripts/update_scripts/github.mjs @@ -6,16 +6,25 @@ const getReleases = async (repo) => { if (releasesMemo) { return releasesMemo; } - const response = await fetch(`https://api.github.com/repos/${repo}/releases`, { - headers: { - 'Accept': 'application/vnd.github+json', - 'X-Github-Api-Version': '2022-11-28' + // The API pages its results (30 per page by default), so collect every page. + const releases = []; + for (let page = 1; ; ++page) { + const response = await fetch(`https://api.github.com/repos/${repo}/releases?per_page=100&page=${page}`, { + headers: { + 'Accept': 'application/vnd.github+json', + 'X-Github-Api-Version': '2022-11-28' + } + }); + if (!response.ok) { + throw new Error(`Failed to fetch releases for repo ${repo}: ${response.status} ${response.statusText}`); + } + const pageReleases = await response.json(); + releases.push(...pageReleases); + if (pageReleases.length < 100) { + break; } - }); - if (!response.ok) { - throw new Error(`Failed to fetch releases for repo ${repo}: ${response.status} ${response.statusText}`); } - releasesMemo = await response.json(); + releasesMemo = releases; return releasesMemo; } diff --git a/windows/nui-sftp.iss b/windows/nui-sftp.iss index 12ccfd1..dfc4eea 100644 --- a/windows/nui-sftp.iss +++ b/windows/nui-sftp.iss @@ -15,7 +15,7 @@ ; `prepare_release.mjs --version X.Y.Z` invocation. Do not edit by hand; bump ; via prepare_release.mjs so it stays in lockstep with PKGBUILD/flatpak/appimage. #ifndef MyAppVersion - #define MyAppVersion "1.4.0" + #define MyAppVersion "1.5.1" #endif #ifndef SourceDir #define SourceDir "..\..\nui-sftp\build\install"