summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Bocken2024-04-19 09:41:38 +0200
committerAlexander Bocken2024-04-19 09:41:38 +0200
commit41e9ea0f4e7043d1b93869f5ad43201898903eb1 (patch)
tree8c3c0dfb9ee4a6e93661828a4e4b2d5fa484aea7
parenta9d9fc8bcdac7af123c2c6f02adfe1c8451f8505 (diff)
downloadaur-41e9ea0f4e7043d1b93869f5ad43201898903eb1.tar.gz
bump to 24.04.1
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD34
-rw-r--r--anki.changelog49
-rw-r--r--disable-git-checks.patch30
-rw-r--r--strip-python-pip-system-certs.patch16
5 files changed, 45 insertions, 105 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 6d3ca7caf908..8d64261c562a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = anki-qt5
pkgdesc = Helps you remember facts (like words/phrases in a foreign language) - Qt5 Build
- pkgver = 23.12.1
- pkgrel = 2
+ pkgver = 24.04.1
+ pkgrel = 1
url = https://apps.ankiweb.net/
changelog = anki-qt5.changelog
arch = x86_64
@@ -14,6 +14,7 @@ pkgbase = anki-qt5
makedepends = python-wheel
makedepends = nodejs>=18
makedepends = yarn
+ makedepends = mold
depends = python>=3.9
depends = python-beautifulsoup4
depends = python-waitress>=2.0.0
@@ -39,21 +40,21 @@ pkgbase = anki-qt5
conflicts = anki
conflicts = anki-bin
conflicts = anki-git
- source = anki-qt5-23.12.1.tar.gz::https://github.com/ankitects/anki/archive/refs/tags/23.12.1.tar.gz
- source = anki-core-i18n-fb301cc62da3b7a83b4ea266d9a2e70cfc1a8418.tar.gz::https://github.com/ankitects/anki-core-i18n/archive/fb301cc62da3b7a83b4ea266d9a2e70cfc1a8418.tar.gz
- source = anki-desktop-ftl-8c2191a7c797747cec767e3953bbbcc50acc5246.tar.gz::https://github.com/ankitects/anki-desktop-ftl/archive/8c2191a7c797747cec767e3953bbbcc50acc5246.tar.gz
- source = disable-git-checks.patch
+ source = anki-qt5-24.04.1.tar.gz::https://github.com/ankitects/anki/archive/refs/tags/24.04.1.tar.gz
+ source = anki-core-i18n-e3af3c983241448a239871ca573c9dd2fa5e8619.tar.gz::https://github.com/ankitects/anki-core-i18n/archive/e3af3c983241448a239871ca573c9dd2fa5e8619.tar.gz
+ source = anki-desktop-ftl-45155310c3302cbbbe645dec52ca196894422463.tar.gz::https://github.com/ankitects/anki-desktop-ftl/archive/45155310c3302cbbbe645dec52ca196894422463.tar.gz
source = no-update.patch
source = strip-formatter-deps.patch
source = strip-type-checking-deps.patch
source = force_qt5.patch
- sha256sums = 2da86351d03339f0baaa9371b3f2db80ac22d22b787086468f32a726b06a1552
- sha256sums = 3af5866ec4ec429465c63ac0484e3cacf6b0326ae30da07c715968d68c7e37d8
- sha256sums = d07dfb1453a131943dde29d1683746432b0d4af04534deeda5daf9bceb31a87a
- sha256sums = 94d8b6d6541ce0c00ab1ddc88d2f384a6535e9849891f30a02bb07bd60178086
+ source = strip-python-pip-system-certs.patch
+ sha256sums = 7cebd7745830392f9b6ec62c2300f3c45c934969b47f25275ecee0ee53f9aa68
+ sha256sums = 91dcc310b265a2d2b43d99a4af6b04790049b9f7fc927d4f68ba24db60c6025c
+ sha256sums = 32dd2158dc12a3e672862723715e5e775794412b96b7755066be8c823defa6b8
sha256sums = cc546f4e5af642af89f82be0375800c2721dd904c0a212cf46f6459495b75bff
sha256sums = 9858fefa254812980d252b29fc6f32bd19bb83ee7e5a96d72c707626ed5193a7
sha256sums = 198bc2ec14439e3ba41a03c4823f07df4b0c559c1dcbdaf678416ed12a720c2e
sha256sums = 02767ace172813cb2e8196838905dbc5fc7e26f853e988b9ff0bfc5276645a31
+ sha256sums = 2506cf9d5b0c47a2c519ec4bb0ef87e7921dca8db5cae39b0dae265d01e253b3
pkgname = anki-qt5
diff --git a/PKGBUILD b/PKGBUILD
index 19097ce9794b..58b03968a954 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -9,9 +9,9 @@
# anki -> git rev-parse --short=8 $pkgver
# ftl -> git submodule
declare -gA _tags=(
- [ftl_core]="fb301cc62da3b7a83b4ea266d9a2e70cfc1a8418"
- [ftl_desktop]="8c2191a7c797747cec767e3953bbbcc50acc5246"
- [anki]="1a1d4d54"
+ [ftl_core]="e3af3c983241448a239871ca573c9dd2fa5e8619"
+ [ftl_desktop]="45155310c3302cbbbe645dec52ca196894422463"
+ [anki]="832d7b16"
)
declare -gA _caches=(
[yarn]="yarn-cache"
@@ -19,8 +19,8 @@ declare -gA _caches=(
)
pkgname=anki-qt5
-pkgver=23.12.1
-pkgrel=2
+pkgver=24.04.1
+pkgrel=1
pkgdesc="Helps you remember facts (like words/phrases in a foreign language) - Qt5 Build"
url="https://apps.ankiweb.net/"
license=('AGPL3')
@@ -61,6 +61,7 @@ makedepends=(
'python-wheel'
'nodejs>=18'
'yarn'
+ 'mold'
)
optdepends=(
'lame: record sound'
@@ -72,20 +73,20 @@ changelog="$pkgname.changelog"
source=("$pkgname-$pkgver.tar.gz::https://github.com/ankitects/anki/archive/refs/tags/${pkgver}.tar.gz"
"anki-core-i18n-${_tags[ftl_core]}.tar.gz::https://github.com/ankitects/anki-core-i18n/archive/${_tags[ftl_core]}.tar.gz"
"anki-desktop-ftl-${_tags[ftl_desktop]}.tar.gz::https://github.com/ankitects/anki-desktop-ftl/archive/${_tags[ftl_desktop]}.tar.gz"
- "disable-git-checks.patch"
"no-update.patch"
"strip-formatter-deps.patch"
"strip-type-checking-deps.patch"
"force_qt5.patch"
+ "strip-python-pip-system-certs.patch"
)
-sha256sums=('2da86351d03339f0baaa9371b3f2db80ac22d22b787086468f32a726b06a1552'
- '3af5866ec4ec429465c63ac0484e3cacf6b0326ae30da07c715968d68c7e37d8'
- 'd07dfb1453a131943dde29d1683746432b0d4af04534deeda5daf9bceb31a87a'
- '94d8b6d6541ce0c00ab1ddc88d2f384a6535e9849891f30a02bb07bd60178086'
+sha256sums=('7cebd7745830392f9b6ec62c2300f3c45c934969b47f25275ecee0ee53f9aa68'
+ '91dcc310b265a2d2b43d99a4af6b04790049b9f7fc927d4f68ba24db60c6025c'
+ '32dd2158dc12a3e672862723715e5e775794412b96b7755066be8c823defa6b8'
'cc546f4e5af642af89f82be0375800c2721dd904c0a212cf46f6459495b75bff'
'9858fefa254812980d252b29fc6f32bd19bb83ee7e5a96d72c707626ed5193a7'
'198bc2ec14439e3ba41a03c4823f07df4b0c559c1dcbdaf678416ed12a720c2e'
'02767ace172813cb2e8196838905dbc5fc7e26f853e988b9ff0bfc5276645a31'
+ '2506cf9d5b0c47a2c519ec4bb0ef87e7921dca8db5cae39b0dae265d01e253b3'
)
prepare() {
@@ -95,14 +96,13 @@ prepare() {
patch -p1 < "$srcdir/no-update.patch"
patch -p1 < "$srcdir/strip-formatter-deps.patch"
patch -p1 < "$srcdir/strip-type-checking-deps.patch"
- patch -p1 < "$srcdir/disable-git-checks.patch"
+ patch -p1 < "$srcdir/strip-python-pip-system-certs.patch"
sed -i 's/opt-level = 1$/opt-level= 3/' Cargo.toml # optimize more
sed -i 's/channel = "[0-9\.]*"$/channel = "stable"/' rust-toolchain.toml # use most recent stable rust toolchain
# Build process wants .git/HEAD to be present. Workaround to be able to use tarballs
- # (together with disable-git-checks.patch)
- mkdir -p .git
+ mkdir -p out .git
touch .git/HEAD
- sed -i "s/MY_REV/${_tags[anki]}/" build/runner/src/build.rs
+ echo "${_tags[anki]}" > out/buildhash # manually write the buildhash into out/buildhash to avoid git dependency in build
# place translations in build dir
rm -r ftl/core-repo ftl/qt-repo
@@ -140,8 +140,10 @@ build() {
export RELEASE=2 # anki-internal variable for optimization
# use fat LTO objects, allows for LTO, needed for rust crate "ring"
# See https://gitlab.archlinux.org/archlinux/packaging/packages/pacman/-/issues/20 and https://github.com/briansmith/ring/issues/1444
- export CFLAGS+=' -ffat-lto-objects'
- ./ninja wheels -v
+ # export CFLAGS+=' -ffat-lto-objects'
+ # ./ninja wheels -v
+ export OFFLINE_BUILD=1 # do not download anything, disables git checks
+ mold -run ./ninja wheels -v
}
package() {
diff --git a/anki.changelog b/anki.changelog
deleted file mode 100644
index 0db9318b3a55..000000000000
--- a/anki.changelog
+++ /dev/null
@@ -1,49 +0,0 @@
-# 2.1.65-1
- * Default to current deck in csv import if settings allow it.
- * Disable Toggle Bury when nothing is selected (thanks to Abdo).
- * Fix broken window styling when installation path includes certain Latin1 chars on Windows.
- * Fix illegible tooltips when system in dark mode on some Linux installs.
- * Fix incorrect font sizes on X11 when fractional scaling in use.
- * If the old Anki uninstaller fails, allow installation to proceed.
- * Improve phrasing in dialog that asks which deck's options should be shown (thanks to
- chrissy0).
- * Fix some add-on installation errors not being reported (thanks to Abdo)
- * Add add-on installation hooks (thanks to Abdo).
-
-PKGBUILD:
- * When using rustup as the system cargo provider, force an update before compilation to use most recent stable branch. This way, builds using rust or rustup should be more easily recreatable
- * added this changelog
-
-# 2.1.64-1
-Functional changes:
-
- * The Windows installer no longer requires admin access (thanks to Martin). The first time you update, you'll need to run the installer again after uninstall completes.
- * Allow the user to configure answer keys in the preferences, fixing conflicts (thanks to Ren).
- * Preload embedded fonts to prevent flicker, and tweak wait time for image preloading (thanks to Hikaru).
- * Add the ability to search for FSRS scheduling properties, eg. prop:cdn:d>0.5 to search for the difficulty > 0.5.
- * Window positions, state and browser headers are now reset each time the Qt version changes, which should fix a number of crashes that users were reporting.
- * Add-on shortcuts will now override Anki defaults (thanks to Ren).
-
-Fixes:
-
- * Fix media files being imported incorrectly when importing an .apkg file exported without support for older Anki versions.
- * Increase the number of supported fields in the editor (thanks to Hikaru).
- * Attempt to work around intermittent color setting failures in Qt6.5 on macOS.
- * Fix ugly text rendering on Wayland when using fractional scaling.
- * Fix inability to import csv when path contains single quote.
- * Show an error pop-up when csv import screen fails to load.
- * Don't disable animations on card templates when reduce motion is on.
- * Fix an error in the console when resizing windows (thanks to Austin)
- * Fix a panic when user sets a huge learning step.
- * Fix page scrolling when input box loses focus (thanks to Hikaru).
- * Fix failure to start on Windows when path contains non-Latin text.
- * Fix due/ivl prop queries not working in filtered decks.
- * Make some collection methods public in the Rust API (thanks to Joel).
-
-PKGBUILD changes:
- * major overhaul. All fetching is now done in prepare() the latest. build() can be run offline
- * moved back to tarballs, patching .git folder manually
- * all typecheck/formatting dependencies are stripped out as this is only required for development
- * pip-sync is masked during build as we provide dependencies ourselves
- * we use the most recent stable rust toolchain in the build
- * yarn and cargo store their cache in $srcdir, a `yay/paru -Sc` will now more reliably reset the build environment
diff --git a/disable-git-checks.patch b/disable-git-checks.patch
deleted file mode 100644
index 905e641b78e7..000000000000
--- a/disable-git-checks.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-We provide source tarballs without git functionality.
-'MY_REV' gets replaced with the corresponding revision in prepare().
---- a/build/ninja_gen/src/git.rs
-+++ b/build/ninja_gen/src/git.rs
-@@ -13,7 +13,7 @@ pub struct SyncSubmodule {
-
- impl BuildAction for SyncSubmodule {
- fn command(&self) -> &str {
-- "git -c protocol.file.allow=always submodule update --init $path"
-+ "true"
- }
-
- fn files(&mut self, build: &mut impl build::FilesHandle) {
---- a/build/runner/src/build.rs
-+++ b/build/runner/src/build.rs
-@@ -161,13 +161,7 @@ fn maybe_update_buildhash(build_root: &Utf8Path) {
- }
-
- fn get_buildhash() -> String {
-- let output = Command::new("git")
-- .args(["rev-parse", "--short=8", "HEAD"])
-- .output()
-- .expect("git");
-- assert!(output.status.success(),
-- "Invoking 'git' failed. Make sure you're building from a clone of the git repo, and that 'git' is installed.");
-- String::from_utf8(output.stdout).unwrap().trim().into()
-+ String::from("MY_REV").trim().into()
- }
-
- fn write_if_changed(path: &Utf8Path, contents: &str) {
diff --git a/strip-python-pip-system-certs.patch b/strip-python-pip-system-certs.patch
new file mode 100644
index 000000000000..4b6cd4b09f61
--- /dev/null
+++ b/strip-python-pip-system-certs.patch
@@ -0,0 +1,16 @@
+Remove pip_system_certs import as Arch provides this in python-requests
+--- a/qt/aqt/__init__.py 2024-04-15 20:34:08.000000000 +0200
++++ b/qt/aqt/__init__.py 2024-04-15 20:34:58.526822612 +0200
+@@ -6,13 +6,6 @@
+ import logging
+ import sys
+
+-try:
+- import pip_system_certs.wrapt_requests
+-except ModuleNotFoundError:
+- print(
+- "Python module pip_system_certs is not installed. System certificate store and custom SSL certificates may not work. See: https://github.com/ankitects/anki/issues/3016"
+- )
+-
+ if sys.version_info[0] < 3 or sys.version_info[1] < 9:
+ raise Exception("Anki requires Python 3.9+")