Compare commits

...

9 Commits

Author SHA1 Message Date
5ac31130d0 misc: bump daemon
Change-Id: I882b0e074ec7e1f780d112dcd9c1e543a9f67b40
2025-09-06 08:53:37 -04:00
9c11ec6233 update version name to "Atlas"
Change-Id: Ia399907ddc18a733ae5524a29a1067b0407dbb07
2025-09-06 08:51:49 -04:00
c9ab1a8e24 donations: schedule 2025 campaign
Set donation campaign from 15 September to 15 November

Change-Id: Ifee0ed347ab786fe0d20f1545bfb02563ac09541
2025-09-06 08:51:30 -04:00
76e1bd9eb1 resources: fix stale images
This patch skips disk caching for qrc images, so images
could be updated. Currently welcome background, welcome logo,
and plugin image resources are stored. Need to be investigated
as it should not be intended to store.

Change-Id: I800649278cdb38dc0a0c732d1d5ec0760a844137
2025-09-06 08:31:04 -04:00
ffb20d6767 update welcome images
Change-Id: I47c7045714787123395daaddb8708c8a8b47eb63
2025-09-05 15:48:21 -04:00
87e63724c3 packaging: fix Linux build
GitLab: #2090
Change-Id: I7621264bebb683ed06294d9bee0bf15bddf3f0cd
2025-09-04 16:41:52 -04:00
9fad769040 macOS: bump minimum version to 12
Set the minimum deployment target to macOS 12,
as required for Qt 6.8.

Change-Id: Idb3b551567c39889020663caa1e5735983e3d05e
2025-09-04 09:32:41 -04:00
4106b8c752 snap: fix runtime issues
This commit updates LD_LIBRARY_PATH and the gnome plug in snapcraft.yaml
in order to fix runtime issues that were introduced when switching from
core20 to core22 as the Jami snap's base. It also replaces the
deprecated project variable CRAFT_ARCH_TRIPLET by
CRAFT_ARCH_TRIPLET_BUILD_FOR as recommended in snap's documentation:
https://documentation.ubuntu.com/snapcraft/stable/reference/architectures/

GitLab: #2087
Change-Id: If14efb39979af3bddf5575dc7d0d9fd66c8d3ec2
2025-09-02 13:30:15 -04:00
fd6e733433 misc: bump daemon
Change-Id: I5cae20449c9e33c40870e72dd0d85b95464168d1
2025-09-02 12:58:19 -04:00
18 changed files with 39 additions and 32 deletions

View File

@ -58,10 +58,8 @@ else()
set(DAEMON_DIR ${PROJECT_SOURCE_DIR}/daemon)
endif()
# For now only MSVC is supported for building Jami-core within the
# client cmake.
if(JAMICORE_AS_SUBDIR)
add_subdirectory(${DAEMON_DIR})
add_subdirectory(${DAEMON_DIR} EXCLUDE_FROM_ALL)
set(LIBJAMI_LIB jami-core)
endif()

View File

@ -295,12 +295,12 @@ Once the build has finished, you should then be able to use the Visual Studio So
**Set up**
- macOS minimum version 11.0
- macOS minimum version 12.0
- install python3
- download xcode
- install Qt 6.6
- install Qt 6.8
Qt 6.6 can be installed via brew
Qt 6.8 can be installed via brew
```bash
brew install qt

2
daemon

Submodule daemon updated: 7e2e18ff7b...2b0a6bf7d8

View File

@ -95,6 +95,7 @@ override_dh_auto_build:
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIBJAMI_BUILD_DIR=$(CURDIR)/daemon/src \
-DENABLE_LIBWRAP=true \
-DBUILD_TESTING=Off \
$(CMAKE_OPTIONS) ..
make -C build -j$(NO_CPUS) VERBOSE=1

View File

@ -75,6 +75,7 @@ cd %{_builddir}/jami-%{version} && \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_VERSION=${BUILD_VERSION} \
-DCMAKE_PREFIX_PATH=%{QT_JAMI_PREFIX} \
-DBUILD_TESTING=Off \
..
make -C %{_builddir}/jami-%{version}/build %{_smp_mflags} VERBOSE=1

View File

@ -101,10 +101,10 @@ grade: stable
base: core22
plugs:
gnome-3-38-2004:
gnome-42-2204:
interface: content
target: $SNAP/gnome-platform
default-provider: gnome-3-38-2004:gnome-3-38-2004
default-provider: gnome-42-2204
gtk-3-themes:
interface: content
target: $SNAP/data-dir/themes
@ -129,8 +129,8 @@ slots:
name: cx.ring.Ring
layout:
/usr/lib/$CRAFT_ARCH_TRIPLET/alsa-lib:
bind: $SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/alsa-lib
/usr/lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR/alsa-lib:
bind: $SNAP/usr/lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR/alsa-lib
/usr/share/alsa:
bind: $SNAP/usr/share/alsa
/usr/share/X11/xkb:
@ -139,7 +139,7 @@ layout:
environment:
XDG_CURRENT_DESKTOP: Unity
QT_BASE_DIR: "/usr/lib/libqt-jami"
LD_LIBRARY_PATH: "${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$SNAP$QT_BASE_DIR/lib"
LD_LIBRARY_PATH: "${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$SNAP$QT_BASE_DIR/lib:$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR:$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR/pulseaudio"
apps:
jami:
@ -153,8 +153,8 @@ apps:
desktop: usr/share/applications/net.jami.Jami.desktop
environment:
PIPEWIRE_CONFIG_NAME: "$SNAP/usr/share/pipewire/pipewire.conf"
PIPEWIRE_MODULE_DIR: "$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/pipewire-0.3"
SPA_PLUGIN_DIR: "$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/spa-0.2"
PIPEWIRE_MODULE_DIR: "$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR/pipewire-0.3"
SPA_PLUGIN_DIR: "$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR/spa-0.2"
slots:
- dbus-jami
- dbus-ring
@ -295,7 +295,8 @@ parts:
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH=$QT_BASE_DIR \
-DBUILD_VERSION=BUILD_VERSION_PLACEHOLDER
-DBUILD_VERSION=BUILD_VERSION_PLACEHOLDER \
-DBUILD_TESTING=Off
make -j$CRAFT_PARALLEL_BUILD_COUNT
DESTDIR=$CRAFT_PART_INSTALL make install
build-packages:
@ -388,6 +389,6 @@ parts:
- -usr/lib/libqt-jami/bin/
- -usr/lib/libqt-jami/docs/
- -usr/lib/libqt-jami/examples/
- -usr/lib/$CRAFT_ARCH_TRIPLET/libLLVM-*.so*
- -usr/lib/$CRAFT_ARCH_TRIPLET/libclang-*.so*
- -usr/lib/$CRAFT_ARCH_TRIPLET/libflite*.so*
- -usr/lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR/libLLVM-*.so*
- -usr/lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR/libclang-*.so*
- -usr/lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR/libflite*.so*

View File

@ -20,8 +20,8 @@ meson install -C builddir
# The files installed by the previous command are only for the "Build" step of the snap
# creation process (https://snapcraft.io/docs/how-snapcraft-builds). In order to ensure
# that PipeWire is installed in the final snap archive, we also need to copy all the
# required files under the $SNAPCRAFT_PART_INSTALL directory.
meson configure builddir -Dprefix=$SNAPCRAFT_PART_INSTALL/usr/
# required files under the $CRAFT_PART_INSTALL directory.
meson configure builddir -Dprefix=$CRAFT_PART_INSTALL/usr/
meson install -C builddir
# Cleanup

View File

@ -34,7 +34,7 @@ cat << EOFILE > ${REPO_FOLDER}/${SPARKLE_FILE}
<pubDate>$DATE_RFC2822</pubDate>
<sparkle:version>${BUILD}</sparkle:version>
<sparkle:shortVersionString>${VERSION}</sparkle:shortVersionString>
<sparkle:minimumSystemVersion>11.0</sparkle:minimumSystemVersion>
<sparkle:minimumSystemVersion>12.0</sparkle:minimumSystemVersion>
<enclosure url="${REPO_URL}/$(basename ${PACKAGE})" type="application/octet-stream" $(./sign_update ${PACKAGE}) />
</item>
$(echo -e "${ITEMS}")

View File

@ -17,7 +17,7 @@
<key>CFBundleShortVersionString</key>
<string>${MACOSX_BUNDLE_SHORT_VERSION_STRING}</string>
<key>LSMinimumSystemVersion</key>
<string>11.0</string>
<string>12.0</string>
<key>CFBundleVersion</key>
<string>${MACOSX_BUNDLE_BUNDLE_VERSION}</string>
<key>LSApplicationCategoryType</key>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 522 KiB

After

Width:  |  Height:  |  Size: 298 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 528 KiB

After

Width:  |  Height:  |  Size: 410 KiB

View File

@ -84,9 +84,9 @@ extern const QString defaultDownloadPath;
// Additional key-value pairs for non-APPSTORE builds including donation
// related settings.
#define KEYS COMMON_KEYS \
X(Donation2023VisibleDate, "2023-11-27 05:00") \
X(Donation2025StartDate, "2025-09-15 00:00") \
X(IsDonationVisible, true) \
X(Donation2023EndDate2, "2024-04-01 00:00")
X(Donation2025EndDate, "2025-11-16 00:00")
#endif
/*

View File

@ -84,6 +84,12 @@ Item {
}
function updateImageSource(downloadUrl, localPath, defaultImage) {
// TODO: this is a temporary fix to load bundled resources directly from qrc
// we need to investigate why we use a cached image for bundled resources
if (downloadUrl.startsWith("qrc:")) {
image.source = downloadUrl;
return;
}
if (downloadUrl === "") {
image.source = defaultImage;
return;

View File

@ -32,7 +32,7 @@ Control {
// Calculate the time 7 days from now
var futureDate = new Date(new Date().getTime() + 7 * 24 * 60 * 60 * 1000);
var formattedDate = Qt.formatDateTime(futureDate, "yyyy-MM-dd hh:mm");
UtilsAdapter.setAppValue(Settings.Key.Donation2023VisibleDate, formattedDate);
UtilsAdapter.setAppValue(Settings.Key.Donation2025StartDate, formattedDate);
}
MouseArea {

View File

@ -103,8 +103,8 @@ Item {
// The banner is visible if the current date is after the date set in the settings and before the end date
// And if the donation toggle is checked
const isVisible = UtilsAdapter.getAppValue(Settings.Key.IsDonationVisible);
const endDate = Date.parse(UtilsAdapter.getAppValue(Settings.Key.Donation2023EndDate2));
const startDate = Date.parse(UtilsAdapter.getAppValue(Settings.Key.Donation2023VisibleDate));
const endDate = Date.parse(UtilsAdapter.getAppValue(Settings.Key.Donation2025EndDate));
const startDate = Date.parse(UtilsAdapter.getAppValue(Settings.Key.Donation2025StartDate));
const now = new Date();
return isVisible && now < endDate && now >= startDate;
}

View File

@ -46,7 +46,7 @@ Item {
property string buildID: qsTr("Build ID")
property string version: qsTr("Version")
property string declarationYear: "Copyright © 20152025"
property string slogan: "Εἰρήνη"
property string slogan: "Atlas"
property string declaration: qsTr('Jami, a GNU package, is software for universal and distributed peer-to-peer communication that respects the freedom and privacy of its users. Visit <a href="https://jami.net" style="color: ' + JamiTheme.buttonTintedBlue + '">jami.net</a>' + ' to learn more.')
property string noWarranty: qsTr('This program comes with absolutely no warranty. See the <a href="https://www.gnu.org/licenses/gpl-3.0.html" style="color: ' + JamiTheme.buttonTintedBlue + '">GNU General Public License</a>, version 3 or later for details.')
property string contribute: qsTr('Contribute')

View File

@ -92,7 +92,7 @@ SettingsPageBase {
onSwitchToggled: {
UtilsAdapter.setAppValue(Settings.Key.IsDonationVisible, checked);
if (checked) {
UtilsAdapter.setToDefault(Settings.Key.Donation2023VisibleDate);
UtilsAdapter.setToDefault(Settings.Key.Donation2025StartDate);
}
}
}
@ -246,7 +246,7 @@ SettingsPageBase {
UtilsAdapter.setToDefault(Settings.Key.LANG);
UtilsAdapter.setToDefault(Settings.Key.EnableExperimentalSwarm);
UtilsAdapter.setToDefault(Settings.Key.IsDonationVisible);
UtilsAdapter.setToDefault(Settings.Key.Donation2023VisibleDate);
UtilsAdapter.setToDefault(Settings.Key.Donation2025StartDate);
enableDonation.checked = Qt.binding(() => UtilsAdapter.getAppValue(Settings.Key.IsDonationVisible));
}
}

View File

@ -100,8 +100,8 @@ UtilsAdapter::setAppValue(const Settings::Key key, const QVariant& value)
#if !APPSTORE
// Any donation campaign-related keys can trigger a donation campaign check
else if (key == Settings::Key::IsDonationVisible
|| key == Settings::Key::Donation2023VisibleDate
|| key == Settings::Key::Donation2023EndDate2)
|| key == Settings::Key::Donation2025StartDate
|| key == Settings::Key::Donation2025EndDate)
Q_EMIT donationCampaignSettingsChanged();
#endif
}