Compare commits

..

No commits in common. "rawhide" and "f34" have entirely different histories.

6 changed files with 270 additions and 161 deletions

42
.gitignore vendored
View file

@ -1,2 +1,40 @@
/gnome-commander-*.tar.gz
/gnome-commander-*.tar.xz
gnome-commander-1.2.8.6.tar.bz2
gnome-commander-1.2.8.7.tar.bz2
/gnome-commander-1.2.8.8.tar.bz2
/gnome-commander-1.2.8.9.tar.bz2
/gnome-commander-1.2.8.10.tar.bz2
/gnome-commander-1.2.8.11.tar.bz2
/gnome-commander-1.2.8.12.tar.bz2
/gnome-commander-1.2.8.13.tar.bz2
/gnome-commander-1.2.8.14.tar.bz2
/gnome-commander-1.2.8.15.tar.xz
/gnome-commander-1.2.8.16.tar.xz
/gnome-commander-1.2.8.17.tar.xz
/gnome-commander-1.4.0.tar.xz
/gnome-commander-1.4.1.tar.xz
/gnome-commander-1.4.2.tar.xz
/gnome-commander-1.4.3.tar.xz
/gnome-commander-1.4.4.tar.xz
/gnome-commander-1.4.5.tar.xz
/gnome-commander-5a4806f7e5789a7d29d62550e9128436ffdef00a.tar.xz
/gnome-commander-1.4.6.tar.xz
/gnome-commander-1.4.7.tar.xz
/gnome-commander-1.4.8.tar.xz
/gnome-commander-1.4.9.tar.xz
/gnome-commander-1.6.0.tar.xz
/gnome-commander-1.6.1.tar.xz
/gnome-commander-1.6.2.tar.xz
/gnome-commander-1.6.3.tar.xz
/gnome-commander-1.6.4.tar.xz
/gnome-commander-1.8.0.tar.xz
/gnome-commander-1.8.1.tar.xz
/gnome-commander-1.10.0.tar.xz
/gnome-commander-1.10.1.tar.xz
/gnome-commander-1.10.2.tar.xz
/gnome-commander-1.10.3.tar.xz
/gnome-commander-20210319T1025.tar.gz
/gnome-commander-1.12.0.tar.xz
/gnome-commander-1.12.1.tar.xz
/gnome-commander-1.12.2.tar.xz
/gnome-commander-1.12.3.tar.xz
/gnome-commander-1.12.3.1.tar.xz

View file

@ -0,0 +1,64 @@
From 9723c65d0295baedeb6ee4cb85b35ab51ef22376 Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Mon, 22 Nov 2021 17:04:36 +0900
Subject: [PATCH] GnomeCmdData::save_devices: place GVariantBuilder structure
on stack initially
As written on:
https://www.freedesktop.org/software/gstreamer-sdk/data/docs/latest/glib/glib-GVariant.html#g-variant-builder-new
when calling g_variant_builder_init(), GVariantBuilder structure must be placed on stack first
and the reference to the memory must be passed to the function, instead of
passing nullptr.
---
src/gnome-cmd-data.cc | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/src/gnome-cmd-data.cc b/src/gnome-cmd-data.cc
index 51407cc..b38f96a 100644
--- a/src/gnome-cmd-data.cc
+++ b/src/gnome-cmd-data.cc
@@ -1722,23 +1722,24 @@ void GnomeCmdData::save_devices()
devices = gnome_cmd_con_list_get_all_dev (gnome_cmd_data.priv->con_list);
if (devices && g_list_length(devices) > 0)
{
- GVariantBuilder *gVariantBuilder = nullptr;
+ GVariantBuilder gVariantBuilder;
+ gboolean device_added_p = false;
for (; devices; devices = devices->next)
{
auto *device = GNOME_CMD_CON_DEVICE (devices->data);
if (device && !gnome_cmd_con_device_get_autovol (device))
{
- if (!gVariantBuilder)
+ if (!device_added_p)
{
- g_variant_builder_init (gVariantBuilder, G_VARIANT_TYPE_ARRAY);
+ g_variant_builder_init (&gVariantBuilder, G_VARIANT_TYPE_ARRAY);
}
-
+ device_added_p = true;
gchar *icon_path = g_strdup (gnome_cmd_con_device_get_icon_path (device));
if (!icon_path || icon_path[0] == '\0')
icon_path = g_strdup ("");
- g_variant_builder_add (gVariantBuilder, GCMD_SETTINGS_DEVICES_FORMAT_STRING,
+ g_variant_builder_add (&gVariantBuilder, GCMD_SETTINGS_DEVICES_FORMAT_STRING,
gnome_cmd_con_device_get_alias (device),
gnome_cmd_con_device_get_device_fn (device),
gnome_cmd_con_device_get_mountp (device),
@@ -1747,9 +1748,9 @@ void GnomeCmdData::save_devices()
}
}
- if (gVariantBuilder)
+ if (device_added_p)
{
- devicesToStore = g_variant_builder_end (gVariantBuilder);
+ devicesToStore = g_variant_builder_end (&gVariantBuilder);
g_settings_set_value(options.gcmd_settings->general, GCMD_SETTINGS_DEVICES, devicesToStore);
return;
}
--
2.33.1

View file

@ -5,7 +5,7 @@ set -e
REPONAME=gnome-commander
GITURL=https://gitlab.gnome.org/GNOME/${REPONAME}.git
BRANCH=master
BRANCH=gcmd-1-12
DATE=$(date '+%Y%m%d')
TIME=$(date '+%H%M')

View file

@ -2,12 +2,15 @@
%undefine _strict_symbol_defs_build
%global EXIV2_REQ 0.14
%global GLIB_REQ 2.70.0
%global LIBGSF_REQ 1.14.26
%global POPPLER_REQ 0.18
%global GLIB_REQ 2.44.0
%global LIBGSF_REQ 1.12.0
%global POPPLER_REQ 0.8
%global TAGLIB_REQ 1.4
%global UNIQUE_REQ 0.9.3
%global mimeedit_rev 1958
%global use_autotool 0
%global update_po 0
%global if_pre 0
%global use_gcc_strict_sanitize 0
@ -26,41 +29,51 @@
%endif
%if 0%{?use_gitbare}
%global gittardate 20240721
%global gittartime 1636
%global gitbaredate 20240719
%global git_rev 95c732e0bda821f4b1eb437d2bc175acd268c9c6
%global gittardate 20210319
%global gittartime 1025
%global gitbaredate 20210318
%global git_rev 3ebb680e6a181d1dc6f7c3a188f3d5d90ff26d32
%global git_short %(echo %{git_rev} | cut -c-8)
%global git_version %{gitbaredate}git%{git_short}
%global git_version D%{gitbaredate}git%{git_short}
%global if_pre 1
%global clamp_mtime_to_source_date_epoch 0
%endif
%global shortver 1.18
%global fullver %{shortver}.4
%global shortver 1.12
%global fullver %{shortver}.3.1
%global mainrel 2
%if 0%{?use_release} >= 1
%global fedoraver %{fullver}
%global fedorarel %{?prever:0.}%{mainrel}%{?prever:.%{prerpmver}}
%endif
%if 0%{?use_gitbare} >= 1
%global fedoraver %{fullver}%{?if_pre:~}%{!?if_pre:^}%{git_version}
%global fedorarel %{mainrel}.%{git_version}
%endif
%if 0%{?if_pre} > 0
%global use_autotool 1
%endif
%if 0%{?use_autotool} < 1
%global update_po 0
%endif
# Patch1 updates configure.in
%global use_autotool 1
# Autotool seems still needed to avoid build failure
# under doc/ diretory, need investigating
%global use_autotool 1
Name: gnome-commander
# Downgrade 3 times, sorry...
Epoch: 4
Version: %{fedoraver}
Release: 1%{?dist}%{flagrel}
Version: %{fullver}
Release: %{fedorarel}%{flagrel}%{?dist}
Summary: A nice and fast file manager for the GNOME desktop
Summary(pl): Menadżer plików dla GNOME oparty o Norton Commander'a (TM)
Summary(sv): GNOME Commander är en snabb och smidig filhanderare för GNOME
# Overall GPL-2.0-or-later
# data/org.gnome.gnome-commander.appdata.xml.in CC0-1.0
# doc/C/legal.xml GFDL-1.1-or-later
# SPDX confirmed
License: GPL-2.0-or-later AND GFDL-1.1-or-later AND CC0-1.0
License: GPLv2+
URL: http://gcmd.github.io/
%if 0%{?use_release}
Source0: http://ftp.gnome.org/pub/GNOME/sources/%{name}/%{shortver}/%{name}-%{version}%{?extratag:-%extratag}.tar.xz
@ -71,7 +84,10 @@ Source0: %{name}-%{gittardate}T%{gittartime}.tar.gz
Source1: gnome-commander.sh
# Source0 is created from Source2
Source2: create-gcmd-git-bare-tarball.sh
Source10: mimeedit-svn%{mimeedit_rev}.sh
Patch1: gnome-commander-1.6.0-path-fedora-specific.patch
# Must send to be upstream
Patch101: 0001-GnomeCmdData-save_devices-place-GVariantBuilder-stru.patch
BuildRequires: gcc-c++
%if 0%{?use_gcc_strict_sanitize}
@ -83,37 +99,40 @@ BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: intltool
BuildRequires: chmlib-devel
BuildRequires: pkgconfig(exiv2) >= %{EXIV2_REQ}
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(gtk+-2.0)
BuildRequires: pkgconfig(gnome-vfs-2.0)
BuildRequires: pkgconfig(libgsf-1) >= %{LIBGSF_REQ}
BuildRequires: pkgconfig(poppler-glib) >= %{POPPLER_REQ}
BuildRequires: pkgconfig(taglib) >= %{TAGLIB_REQ}
BuildRequires: pkgconfig(unique-1.0) >= %{UNIQUE_REQ}
BuildRequires: pkgconfig(unique-1.0)
BuildRequires: libICE-devel
BuildRequires: libSM-devel
BuildRequires: meson
BuildRequires: gnome-doc-utils
BuildRequires: perl(XML::Parser)
%if %{use_autotool}
BuildRequires: automake
BuildRequires: flex
BuildRequires: intltool
BuildRequires: yelp-tools
BuildRequires: /usr/bin/git
BuildRequires: /usr/bin/appstream-util
BuildRequires: libtool
BuildRequires: gnome-common
%endif
BuildRequires: make
BuildRequires: %{_bindir}/git
BuildRequires: %{_bindir}/appstream-util
# %%check
BuildRequires: xorg-x11-server-Xvfb
BuildRequires: pkgconfig(gtest)
BuildRequires: gtest-devel
Requires: gnome-vfs2-smb
Requires: meld
Requires: gnome-icon-theme-legacy
%if 0%{?fedora} >= 41
BuildRequires: gdk-pixbuf2-modules-extra
Requires: gdk-pixbuf2-modules-extra%{?_isa}
%endif
%description
GNOME Commander is a nice and fast file manager for the GNOME desktop.
@ -151,22 +170,11 @@ git init
%endif
%if 0%{?use_gitbare}
%setup -q -c -n %{name}-%{fullver}-%{git_version} -T -a 0
%setup -q -c -T -a 0
git clone ./%{name}.git/
cd %{name}
git checkout -b %{fullver}-fedora %{git_rev}
# Restore timestamps
set +x
echo "Restore timestamps"
git ls-tree -r --name-only HEAD | while read f
do
unixtime=$(git log -n 1 --pretty='%ct' -- $f)
touch -d "@${unixtime}" $f
done
set -x
git checkout -b %{version}-fedora %{git_rev}
cp -a [A-Z]* ..
cp -a doc ..
@ -182,43 +190,63 @@ done
%endif
git config user.name "%{name} Fedora maintainer"
git config user.email "%{name}-maintainer@fedoraproject.org"
git config user.email "%{name}-owner@fedoraproject.org"
%if 0%{?use_release}
cat > .gitignore <<EOF
Makefile.in
*/Makefile.in
*/*/Makefile.in
ChangeLog-*
INSTALL
aclocal.m4
config.guess
config.h.in
config.sub
configure
compile
depcomp
install-sh
ltmain.sh
m4
missing
test-driver
ylwrap
EOF
git add .
git commit -m "base" -q
%endif
%patch -P1 -p1 -b .path
%patch1 -p1 -b .path
git commit -m "Apply Fedora specific path configuration" -a
%if 0%{?use_release}
cat %PATCH101 | git am
%if 0%{use_autotool} > 0
( export NOCONFIGURE=1 ; sh autogen.sh )
%endif
# Tweak samba detection
sed -i meson.build \
-e 's|^\(samba = dependency\)|# \1|' \
-e 's|^\(have_samba = .*\)$|have_samba = true|' \
%{nil}
git commit -m "Tweak samba detection" -a
# Don't install unneeded files
sed -i doc/meson.build \
-e '\@install_data@,\@^)$@s|^\(.*\)$|# \1|' \
%{nil}
git commit -m "Don't install header files, static archives, documentation" -a
%{__sed} -i.pylib \
-e 's|\$PY_EXEC_PREFIX/lib|%{_libdir}|' \
configure
%if 0%{?use_gitbare}
pushd ..
%endif
# gzip
#gzip -9 ChangeLog-*
gzip -9 ChangeLog-*
mkdir TMPBINDIR
cd TMPBINDIR
ln -sf /bin/true ./update-mime-database
%if 0%{?use_gitbare}
popd
%endif
%build
export PATH=$(pwd)/TMPBINDIR:$PATH
export BUILD_TOP_DIR=$(pwd)
%set_build_flags
@ -233,27 +261,86 @@ pushd %{name}
# Install wrapper script, and move binaries to
# %%{_libexecdir}/%%{name}
%meson \
mkdir _builddir || :
# For debuginfo issue
find . -name \*.cc | while read f
do
dirn=$(dirname $f)
%{__cat} $f | %{__sed} -n -e 's|^#line.*[ \t][ \t]*\"\(.*\)"$|\1|p' | \
sort | uniq | while read g
do
%{__mkdir_p} _builddir/$dirn
%{__cp} -p $dirn/$g _builddir/$dirn
done
done
pushd _builddir
ln -sf ../configure
%configure \
--srcdir=$(pwd)/.. \
--bindir=%{_libexecdir}/%{name} \
--disable-Werror \
--disable-scrollkeeper \
%{nil}
%meson_build --ninja-args "-k 0"
%{__cp} -p README ${BUILD_TOP_DIR}
%if %{update_po}
%{__make} -C po gnome-commander.pot update-po
%endif
# First make po without _smp_mflags, so that messages
# won't be mixed up
# Second doc/, parallel make seems to fail
%{__make} -C po GMSGFMT="msgfmt --statistics"
%{__make} -C doc
%{__make} %{?_smp_mflags} -k
popd # from _builddir
%if 0%{?use_gitbare}
popd
%endif
%install
%{__rm} -rf %{buildroot}
export PATH=$(pwd)/TMPBINDIR:$PATH
%if 0%{?use_gitbare}
pushd %{name}
%endif
%meson_install
pushd _builddir
%{__make} \
INSTALL="%{__install} -c -p" \
DESTDIR=%{buildroot} \
install
popd # from _builddir
# Desktop file
desktop-file-install \
--delete-original \
--vendor '' \
--remove-category Application \
--dir %{buildroot}%{_datadir}/applications \
%{buildroot}%{_datadir}/applications/%{name}.desktop
# Install wrapper
%{__mkdir_p} %{buildroot}%{_bindir}
%{__install} -cpm 0755 %SOURCE1 %{buildroot}%{_bindir}/%{name}
# install gnome-file-types-properties (bug 458667)
%if 0
%{__install} -cpm 0755 mimeedit.sh \
%{buildroot}%{_libexecdir}/%{name}/gnome-file-types-properties
%endif
%{__rm} -f %{buildroot}%{_libdir}/%{name}/*.{a,la}
%{__rm} -f %{buildroot}%{_libdir}/%{name}/*/*.{a,la}
%if 0%{?use_gitbare}
popd
%endif
@ -261,16 +348,14 @@ popd
%find_lang %{name}
%check
desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.%{name}.desktop
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/org.gnome.%{name}.appdata.xml
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%{name}.appdata.xml
%if 0%{?use_gitbare}
pushd %{name}
%endif
export ASAN_OPTIONS=detect_leaks=0
xvfb-run sh -c \
"%meson_test -v"
pushd _builddir
make check
%if 0%{?use_gitbare}
popd
@ -280,9 +365,10 @@ popd
%defattr(-,root,root,-)
%doc AUTHORS
%doc BUGS
%license COPYING
%doc ChangeLog*
%doc COPYING
%doc NEWS
%doc README.md
%doc README
%doc TODO
%doc doc/*.txt
@ -291,97 +377,17 @@ popd
%{_libdir}/%{name}/
%{_mandir}/man1/%{name}.1*
%{_datadir}/glib-2.0/schemas/org.gnome.*xml
%dir %{_datadir}/%{name}
#%%{_datadir}/%{name}/*.txt
%{_datadir}/%{name}/icons/
%{_datadir}/applications/org.gnome.%{name}.desktop
%{_metainfodir}/org.gnome.%{name}.appdata.xml
%{_datadir}/applications/%{name}.desktop
%{_metainfodir}/%{name}.appdata.xml
%{_datadir}/help/*/%{name}/
%{_datadir}/glib-2.0/schemas/org.gnome.*xml
%{_datadir}/icons/hicolor/scalable/apps/%{name}*.svg
%{_datadir}/pixmaps/%{name}.svg
%{_datadir}/pixmaps/%{name}/
%changelog
* Thu Oct 02 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.18.4-1
- 1.18.4
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4:1.18.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jun 26 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.18.3-1
- 1.18.3
* Mon Feb 10 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.18.2-1
- 1.18.2
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4:1.18.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sun Sep 15 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.18.1-2
- Require gdk-pixbuf2-modules-extra when available
* Thu Aug 01 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.18.1-1
- 1.18.1
* Tue Jul 23 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.18.0-2
- Apply upstream PR for workaround for segfault with leaving tab pointing to
invalid directory
* Mon Jul 22 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.18.0-1
- 0.18.0
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4:1.16.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Jun 14 2024 Robert-André Mauchin <zebob.m@gmail.com> - 4:1.16.2-2
- Rebuilt for exiv2 0.28.2
* Mon May 20 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.16.2-1
- 1.16.2
* Thu Apr 18 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.16.1-6
- Fix double g_error_free call in remote_close_callback (bug 2271363)
* Sun Jan 28 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.16.1-5
- SPDX migration
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4:1.16.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4:1.16.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4:1.16.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Mon Jul 10 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.16.1-1
- 1.16.1
* Wed Jan 25 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.16.0-1
- 1.16.0
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4:1.14.3-1.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Jul 27 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.14.3-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sun Jun 19 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.14.3-1
- 1.14.3
* Thu Mar 31 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.14.2-1
- 1.14.2
* Thu Mar 3 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.14.1-1
- 1.14.1
* Sun Feb 6 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.14.0-1
- 1.14.0
* Mon Nov 22 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 4:1.12.3.1-2
- Fix crash when saving device information on preference

1
noautobuild Normal file
View file

@ -0,0 +1 @@
Check git later

View file

@ -1 +1 @@
SHA512 (gnome-commander-1.18.4.tar.xz) = 54966719e63a4ca6c9d24cbd1f69dbadd4ac0b7588c2cd1a34635deafcab5976d9e82fdcf6dbc0dc7f1098a25443c9eeaa2400db192b487b6d92d62f62ee23db
SHA512 (gnome-commander-1.12.3.1.tar.xz) = 1206d545493deeb2237af6b9026baf6faab2a8f6ae86eb1abb5c2e5ceb6212ad66382d3abd07c89f14271ac8709d14548f0bfe68fb0e11b1779e0c061e0272e5