diff --git a/.gitignore b/.gitignore index 29d989c..852717d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,34 +1,2 @@ -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-*.tar.gz +/gnome-commander-*.tar.xz diff --git a/create-gcmd-git-bare-tarball.sh b/create-gcmd-git-bare-tarball.sh new file mode 100644 index 0000000..8326c21 --- /dev/null +++ b/create-gcmd-git-bare-tarball.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +set -x +set -e + +REPONAME=gnome-commander +GITURL=https://gitlab.gnome.org/GNOME/${REPONAME}.git +BRANCH=master + +DATE=$(date '+%Y%m%d') +TIME=$(date '+%H%M') + +TARNAME=${REPONAME}-${DATE}T${TIME}.tar.gz + +PWDDIR=$(pwd) +TMPDIR=$(mktemp -d /var/tmp/${REPONAME}-XXXXXX) +pushd $TMPDIR + +git clone --mirror $GITURL +tar czf ${TARNAME} ${REPONAME}.git/ + +pushd ${REPONAME}.git/ +git log --first-parent --format=fuller ${BRANCH} | head -n 12 +popd + +cp -p ${TARNAME} $PWDDIR +popd +rm -rf $TMPDIR diff --git a/gnome-commander.spec b/gnome-commander.spec index d57c314..19979f7 100644 --- a/gnome-commander.spec +++ b/gnome-commander.spec @@ -1,106 +1,119 @@ -# To use git, follow: -# -# git clone git://git.gnome.org/gnome-commander -# cd gnome-commander/ -# git checkout -b gcmd-1-3 origin/gcmd-1-3 -# git pull -# ... -# cd .. -# ln -sf gcmd-commander gnome-commander-%%{version}-git_%%{git_pull_JST} -# tar cjf gnome-commander-%%{version}-git_%%{git_pull_JST}.tar.xz \ -# gnome-commander-%%{version}-git_%%{git_pull_JST}/./ - -# Source10 is created by: -# svn co http://svn.gnome.org/svn/gnome-commander/branches/gcmd-1-3/tools/mimeedit/ -# cp -p mimeedit/mimeedit.sh mimeedit-rev%%{mimeedit_rev}.sh -# -# ref: http://lists.gnu.org/archive/html/gcmd-devel/2007-11/msg00076.html - # gcmd plugins uses symbols defined in gcmd binary %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 TAGLIB_REQ 1.4 -%global LIBGSF_REQ 1.12.0 -%global POPPLER_REQ 0.8 +%global UNIQUE_REQ 0.9.3 -%global git_pull_JST D20150504 -%global githash 5a4806f7e5789a7d29d62550e9128436ffdef00a -%global shorthash %(c=%{githash}; echo ${c:0:7}) - -%global use_autotool 0 -%global update_po 0 %global if_pre 0 -%global main_release 1 -#%%global extratag %{git_pull_JST}git%{shorthash} -%undefine extratag -%global mimeedit_rev 1958 -%if 0%{?if_pre} > 0 -%global use_autotool 1 -%endif -%if 0%{?use_autotool} < 1 -%global update_po 0 +%global use_gcc_strict_sanitize 0 + +%global use_release 1 +%global use_gitbare 0 + +%if 0%{?use_gitbare} < 1 +# force +%global use_release 1 %endif -# Patch1 updates configure.in -%global use_autotool 1 +%global flagrel %{nil} +%if 0%{?use_gcc_strict_sanitize} >= 1 +%global flagrel %{flagrel}.san +%endif -# Autotool seems still needed to avoid build failure -# under doc/ diretory, need investigating -%global use_autotool 1 +%if 0%{?use_gitbare} +%global gittardate 20240721 +%global gittartime 1636 +%global gitbaredate 20240719 +%global git_rev 95c732e0bda821f4b1eb437d2bc175acd268c9c6 +%global git_short %(echo %{git_rev} | cut -c-8) +%global git_version %{gitbaredate}git%{git_short} -%global fedora_rel %( [ 0%{?if_pre} -gt 0 ] && echo 0. )%{main_release}%{?extratag:.%extratag} +%global if_pre 1 +%global clamp_mtime_to_source_date_epoch 0 +%endif + +%global shortver 1.18 +%global fullver %{shortver}.4 + +%if 0%{?use_release} >= 1 +%global fedoraver %{fullver} +%endif +%if 0%{?use_gitbare} >= 1 +%global fedoraver %{fullver}%{?if_pre:~}%{!?if_pre:^}%{git_version} +%endif Name: gnome-commander -Version: 1.10.3 # Downgrade 3 times, sorry... Epoch: 4 -Release: %{fedora_rel}%{?dist} +Version: %{fedoraver} +Release: 1%{?dist}%{flagrel} 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 -License: GPLv2+ +# 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 URL: http://gcmd.github.io/ -Source0: ftp://ftp.gnome.org/pub/GNOME/sources/%{name}/1.10/%{name}-%{version}%{?extratag:-%extratag}.tar.xz -#Source0: https://git.gnome.org/browse/gnome-commander/snapshot/%{name}-%{githash}.tar.xz +%if 0%{?use_release} +Source0: http://ftp.gnome.org/pub/GNOME/sources/%{name}/%{shortver}/%{name}-%{version}%{?extratag:-%extratag}.tar.xz +%endif +%if 0%{?use_gitbare} +Source0: %{name}-%{gittardate}T%{gittartime}.tar.gz +%endif Source1: gnome-commander.sh -Source10: mimeedit-svn%{mimeedit_rev}.sh +# Source0 is created from Source2 +Source2: create-gcmd-git-bare-tarball.sh Patch1: gnome-commander-1.6.0-path-fedora-specific.patch BuildRequires: gcc-c++ +%if 0%{?use_gcc_strict_sanitize} +BuildRequires: libasan +BuildRequires: libubsan +%endif BuildRequires: desktop-file-utils BuildRequires: gettext BuildRequires: intltool -BuildRequires: scrollkeeper -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(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) +BuildRequires: pkgconfig(unique-1.0) >= %{UNIQUE_REQ} BuildRequires: libICE-devel BuildRequires: libSM-devel -BuildRequires: gnome-doc-utils -BuildRequires: perl(XML::Parser) - -%if %{use_autotool} -BuildRequires: automake +BuildRequires: meson BuildRequires: flex BuildRequires: intltool -BuildRequires: libtool -BuildRequires: gnome-common -%endif +BuildRequires: yelp-tools + +BuildRequires: /usr/bin/git +BuildRequires: /usr/bin/appstream-util + +# %%check +BuildRequires: xorg-x11-server-Xvfb +BuildRequires: pkgconfig(gtest) -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. @@ -131,112 +144,145 @@ Utöver att kunna hantera filer på din egen dator så kan programmet även ansluta till FTP-servrar och SMB-nätverk. %prep -%setup -q -n %{name}-%{version}%{?extratag:-%extratag} -#%%setup -q -n %{name}-%{githash} +%if 0%{?use_release} +%setup -q -%patch1 -p1 -b .path - -%if 0%{use_autotool} > 0 -( export NOCONFIGURE=1 ; sh autogen.sh ) +git init %endif -%{__sed} -i.pylib \ - -e 's|\$PY_EXEC_PREFIX/lib|%{_libdir}|' \ - configure +%if 0%{?use_gitbare} +%setup -q -c -n %{name}-%{fullver}-%{git_version} -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 + +cp -a [A-Z]* .. +cp -a doc .. + +cat > GITHASH < - 4:1.18.4-1 +- 1.18.4 + +* Wed Jul 23 2025 Fedora Release Engineering - 4:1.18.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Thu Jun 26 2025 Mamoru TASAKA - 4:1.18.3-1 +- 1.18.3 + +* Mon Feb 10 2025 Mamoru TASAKA - 4:1.18.2-1 +- 1.18.2 + +* Thu Jan 16 2025 Fedora Release Engineering - 4:1.18.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Sun Sep 15 2024 Mamoru TASAKA - 4:1.18.1-2 +- Require gdk-pixbuf2-modules-extra when available + +* Thu Aug 01 2024 Mamoru TASAKA - 4:1.18.1-1 +- 1.18.1 + +* Tue Jul 23 2024 Mamoru TASAKA - 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 - 4:1.18.0-1 +- 0.18.0 + +* Thu Jul 18 2024 Fedora Release Engineering - 4:1.16.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jun 14 2024 Robert-André Mauchin - 4:1.16.2-2 +- Rebuilt for exiv2 0.28.2 + +* Mon May 20 2024 Mamoru TASAKA - 4:1.16.2-1 +- 1.16.2 + +* Thu Apr 18 2024 Mamoru TASAKA - 4:1.16.1-6 +- Fix double g_error_free call in remote_close_callback (bug 2271363) + +* Sun Jan 28 2024 Mamoru TASAKA - 4:1.16.1-5 +- SPDX migration + +* Wed Jan 24 2024 Fedora Release Engineering - 4:1.16.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 4:1.16.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Wed Jul 19 2023 Fedora Release Engineering - 4:1.16.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Mon Jul 10 2023 Mamoru TASAKA - 4:1.16.1-1 +- 1.16.1 + +* Wed Jan 25 2023 Mamoru TASAKA - 4:1.16.0-1 +- 1.16.0 + +* Thu Jan 19 2023 Fedora Release Engineering - 4:1.14.3-1.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Jul 27 2022 Mamoru TASAKA - 4:1.14.3-1.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sun Jun 19 2022 Mamoru TASAKA - 4:1.14.3-1 +- 1.14.3 + +* Thu Mar 31 2022 Mamoru TASAKA - 4:1.14.2-1 +- 1.14.2 + +* Thu Mar 3 2022 Mamoru TASAKA - 4:1.14.1-1 +- 1.14.1 + +* Sun Feb 6 2022 Mamoru TASAKA - 4:1.14.0-1 +- 1.14.0 + +* Mon Nov 22 2021 Mamoru TASAKA - 4:1.12.3.1-2 +- Fix crash when saving device information on preference + +* Mon Nov 22 2021 Mamoru TASAKA - 4:1.12.3.1-1 +- 1.12.3.1 + +* Sun Nov 21 2021 Mamoru TASAKA - 4:1.12.3-1 +- 1.12.3 +- enable test + +* Fri Aug 13 2021 Mamoru TASAKA - 4:1.12.2-2 +- Drop old scrollkeeper stuff + +* Sun Jul 25 2021 Mamoru TASAKA - 4:1.12.2-1.1 +- Rebuild for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Sat Jun 19 2021 Mamoru TASAKA - 4:1.12.2-1 +- 1.12.2 + +* Mon Apr 19 2021 Mamoru TASAKA - 4:1.12.1-1 +- 1.12.1 + +* Fri Mar 26 2021 Mamoru TASAKA - 4:1.12.0-1 +- 1.12.0 + +* Tue Feb 23 2021 Mamoru TASAKA - 4:1.10.3-3 +- Fix FTBFS wrt std::byte <=> Exiv2::byte confusion, perhaps exposed by glibc 2.33.9000 + +* Tue Feb 23 2021 Mamoru TASAKA - 4:1.10.3-2 +- Backport upstream patch for opening properties popup by keypress issue + (upstream bug 96) + * Tue Jun 30 2020 Mamoru TASAKA - 4:1.10.3-1 - 1.10.3 diff --git a/noautobuild b/noautobuild deleted file mode 100644 index 02c8cc6..0000000 --- a/noautobuild +++ /dev/null @@ -1 +0,0 @@ -Check git later diff --git a/sources b/sources index 87f6afe..d5cd8e1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gnome-commander-1.10.3.tar.xz) = 87c4df1534747f21b15e48141180601aef02152b1eef097986b0f8675a6d24e75a81ccb7d0b41b2df38cd40eadae2b0bd09f8e0274a5e5cd8bbd8d23df6ffd7f +SHA512 (gnome-commander-1.18.4.tar.xz) = 54966719e63a4ca6c9d24cbd1f69dbadd4ac0b7588c2cd1a34635deafcab5976d9e82fdcf6dbc0dc7f1098a25443c9eeaa2400db192b487b6d92d62f62ee23db