- Update to 5.8
+ Edit account to make it sub account under other account - Update to 5.7 + Bugfixes + Save the Scheduled Transactions number of months + Save the Scheduled Transaction divider position + Move to blank transaction + AutoComplete Only Considers Visible Transactions + Reports calculating net worth incorrectly after stock split + Failed import QIF investment + option account selector fails to include appropriate hidden accounts. + Cannot write a check over $1000 + Crashes when pasting a copied transaction + Import Matcher (CSV) does not compute correctly the share amount based on security price + Deleting a transaction may trigger a crash + Invoice register context menu issue + Shortcut Ctrl-G does not work in the General Journal register for the default date value + Nullpointer exception in gnc_quote_source_s + Crash when there is more than one unknown quote source for commodities + Import Multi-split CSV can duplicate 'Notes' field from one transaction to next + GNUCash Immediately Exits on Startup + Invalid free in gvalue_from_kvp_value() + GnuCash re-opens to incorrect account window if there are transient tabs present when closed. + Stock Assistant closes with its New Account dialog + RFE: Add Document Link for Payments to Owner Report - Drop gnucash-fix-qif-import.patch: merged upstream OBS-URL: https://build.opensuse.org/package/show/Office/gnucash?expand=0&rev=46
This commit is contained in:
commit
c3a80bdff1
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
52
gnucash-4.1-fix-gtest-path.patch
Normal file
52
gnucash-4.1-fix-gtest-path.patch
Normal file
@ -0,0 +1,52 @@
|
||||
--- gnucash-4.1/common/cmake_modules/GncAddTest.cmake.orig 2020-08-02 21:15:33.177983850 +0200
|
||||
+++ gnucash-4.1/common/cmake_modules/GncAddTest.cmake 2020-08-08 10:13:40.567411650 +0200
|
||||
@@ -130,13 +130,17 @@ function(gnc_gtest_configure)
|
||||
unset(GTEST_SRC_DIR CACHE)
|
||||
if (GTEST_ROOT)
|
||||
find_path(GTEST_SRC_DIR src/gtest-all.cc NO_CMAKE_SYSTEM_PATH
|
||||
- PATHS ${GTEST_ROOT}/googletest)
|
||||
+ PATHS ${GTEST_ROOT})
|
||||
endif()
|
||||
if (GTEST_SRC_DIR)
|
||||
- if (EXISTS ${GTEST_SRC_DIR}/include/gtest/gtest.h)
|
||||
- set(GTEST_INCLUDE_DIR ${GTEST_SRC_DIR}/include CACHE PATH "" FORCE)
|
||||
+ if (EXISTS ${GTEST_SRC_DIR}/googletest/include/gtest/gtest.h)
|
||||
+ set(GTEST_INCLUDE_DIR ${GTEST_SRC_DIR}/googletest/include CACHE PATH "" FORCE)
|
||||
else()
|
||||
- message(FATAL_ERROR "GTEST sources found, but it doesn't have 'gtest/gtest.h'")
|
||||
+ if (EXISTS ${GTEST_SRC_DIR}/gtest.h)
|
||||
+ set(GTEST_INCLUDE_DIR ${GTEST_SRC_DIR} CACHE PATH "" FORCE)
|
||||
+ else()
|
||||
+ message(FATAL_ERROR "GTEST sources found, but it doesn't have 'gtest/gtest.h'")
|
||||
+ endif()
|
||||
endif()
|
||||
else()
|
||||
if (GTEST_ROOT)
|
||||
@@ -168,15 +172,24 @@ function(gnc_gtest_configure)
|
||||
|
||||
message(STATUS "Checking for GMOCK")
|
||||
unset(GMOCK_SRC_DIR CACHE)
|
||||
- if (GTEST_ROOT)
|
||||
+ if (GMOCK_ROOT)
|
||||
find_path(GMOCK_SRC_DIR src/gmock-all.cc NO_CMAKE_SYSTEM_PATH
|
||||
- PATHS ${GTEST_ROOT}/googlemock)
|
||||
+ PATHS ${GMOCK_ROOT})
|
||||
+ else()
|
||||
+ if (GTEST_ROOT)
|
||||
+ find_path(GMOCK_SRC_DIR src/gmock-all.cc NO_CMAKE_SYSTEM_PATH
|
||||
+ PATHS ${GTEST_ROOT}/googlemock)
|
||||
+ endif()
|
||||
endif()
|
||||
if (GMOCK_SRC_DIR)
|
||||
if (EXISTS ${GMOCK_SRC_DIR}/include/gmock/gmock.h)
|
||||
set(GMOCK_INCLUDE_DIR ${GMOCK_SRC_DIR}/include CACHE PATH "" FORCE)
|
||||
else()
|
||||
- message(FATAL_ERROR "GMOCK sources found, but it doesn't have 'gmock/gmock.h'")
|
||||
+ if (EXISTS ${GMOCK_SRC_DIR}/gmock.h)
|
||||
+ set(GMOCK_INCLUDE_DIR ${GMOCK_SRC_DIR} CACHE PATH "" FORCE)
|
||||
+ else()
|
||||
+ message(FATAL_ERROR "GMOCK sources found, but it doesn't have 'gmock/gmock.h'")
|
||||
+ endif()
|
||||
endif()
|
||||
else()
|
||||
if (GTEST_ROOT)
|
3
gnucash-5.6.tar.bz2
Normal file
3
gnucash-5.6.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b4b42c626350f3e79f7ca1f2173545cc63ddee1addf2460b1a1f22221bf21bd1
|
||||
size 15110621
|
3
gnucash-5.8.tar.bz2
Normal file
3
gnucash-5.8.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a2c823fb700b9d4598692ec81394959bde388d8ef191efe4ea2c02426bb52593
|
||||
size 14998331
|
45
gnucash-cpan-warning.patch
Normal file
45
gnucash-cpan-warning.patch
Normal file
@ -0,0 +1,45 @@
|
||||
Index: libgnucash/quotes/gnc-fq-update.in
|
||||
===================================================================
|
||||
--- a/libgnucash/quotes/gnc-fq-update.in
|
||||
+++ b/libgnucash/quotes/gnc-fq-update.in
|
||||
@@ -24,11 +24,39 @@
|
||||
use strict;
|
||||
use CPAN;
|
||||
|
||||
+print "\n";
|
||||
+print "WARNING: This program updates several Perl packages to untested latest\n";
|
||||
+print "versions from CPAN. It could potentially cause unexpected failures\n";
|
||||
+print "in any program or future upgrade problems.\n";
|
||||
+print "\n";
|
||||
+print "It is strongly recommended NOT TO USE this program and report possible\n";
|
||||
+print "problems with parsing of stock quotes to http://bugzilla.novell.com/\n";
|
||||
+print "\n";
|
||||
+print "Please use the Perl packages provided by the distribution instead!\n";
|
||||
+print "\n\n";
|
||||
+
|
||||
+print "Do you want to continue? (y/n) ";
|
||||
+
|
||||
+my $input = <STDIN>;
|
||||
+chomp ($input);
|
||||
+
|
||||
+exit 0 if ($input ne "y");
|
||||
+print "\n\n";
|
||||
+print "It invalidates your system certification!\n";
|
||||
+print "\n";
|
||||
+print "Are you absolutely sure? Do you prefer to abort now? (y/n) ";
|
||||
+
|
||||
+my $input = <STDIN>;
|
||||
+chomp ($input);
|
||||
+
|
||||
+exit 0 if ($input ne "n");
|
||||
+
|
||||
+
|
||||
if ($( != 0) {
|
||||
print "\n";
|
||||
print "You probably need to be root before running gnc-fq-update.";
|
||||
print "\n\n";
|
||||
- print "Are you sure, you want to update parts of your Perl library? (y/n) ";
|
||||
+ print "Are you sure, you want to update parts of your Perl library (RECONSIDER - Last warning!)? (y/n) ";
|
||||
|
||||
my $input = <STDIN>;
|
||||
chomp ($input);
|
32
gnucash-fix-qif-import.patch
Normal file
32
gnucash-fix-qif-import.patch
Normal file
@ -0,0 +1,32 @@
|
||||
See https://github.com/Gnucash/gnucash/commit/b33b864c2fa0ba72d1940465e7fa962dd36833c9
|
||||
|
||||
--- gnucash-5.6/gnucash/import-export/qif-imp/qif-to-gnc.scm.orig 2024-04-02 23:12:50.335306666 +0200
|
||||
+++ gnucash-5.6/gnucash/import-export/qif-imp/qif-to-gnc.scm 2024-04-01 23:13:12.071450498 +0200
|
||||
@@ -596,13 +596,6 @@
|
||||
(else
|
||||
(apply xaccTransSetDate gnc-xtn (qif-xtn:date qif-xtn))))
|
||||
|
||||
- (unless qif-action
|
||||
- (qif-import:log progress-dialog "qif-import:qif-xtn-to-gnc-xtn"
|
||||
- (format #f (G_ "Missing QIF investment action for transaction dated ~a.")
|
||||
- (qof-print-date (qif-date-to-time64 qif-date))))
|
||||
- (throw 'missing-action "qif-import:qif-xtn-to-gnc-xtn" "Missing investment action."
|
||||
- #f #f))
|
||||
-
|
||||
;; fixme: bug #105
|
||||
(if qif-payee
|
||||
(xaccTransSetDescription gnc-xtn qif-payee))
|
||||
@@ -743,6 +736,13 @@
|
||||
|
||||
(if (not num-shares) (set! num-shares (gnc-numeric-zero)))
|
||||
|
||||
+ (unless qif-action
|
||||
+ (qif-import:log progress-dialog "qif-import:qif-xtn-to-gnc-xtn"
|
||||
+ (format #f (G_ "Missing QIF investment action for transaction dated ~a.")
|
||||
+ (qof-print-date (qif-date-to-time64 qif-date))))
|
||||
+ (throw 'missing-action "qif-import:qif-xtn-to-gnc-xtn" "Missing investment action."
|
||||
+ #f #f))
|
||||
+
|
||||
;; Determine the extended price of all shares without commission.
|
||||
(if xtn-amt
|
||||
;; Adjust for commission (if any).
|
10
gnucash-libm.patch
Normal file
10
gnucash-libm.patch
Normal file
@ -0,0 +1,10 @@
|
||||
--- gnucash-4.1/libgnucash/app-utils/CMakeLists.txt.orig 2020-08-02 23:12:50.335306666 +0200
|
||||
+++ gnucash-4.1/libgnucash/app-utils/CMakeLists.txt 2020-08-02 23:13:12.071450498 +0200
|
||||
@@ -88,6 +88,7 @@ set(app_utils_ALL_LIBRARIES
|
||||
${LIBXML2_LDFLAGS}
|
||||
${LIBXSLT_LDFLAGS}
|
||||
${STANDARD_MATH_LIBRARY}
|
||||
+ -lm
|
||||
)
|
||||
|
||||
set(app_utils_ALL_INCLUDES
|
7
gnucash-rpmlintrc
Normal file
7
gnucash-rpmlintrc
Normal file
@ -0,0 +1,7 @@
|
||||
# This line is mandatory to access the configuration functions
|
||||
from Config import *
|
||||
|
||||
addFilter("gnucash.* devel-file-in-non-devel-package .*/usr/lib.*\.so")
|
||||
addFilter("gnucash.* non-executable-script .*/usr/share/gnucash/python/pycons/.*\.py")
|
||||
# Splitting the shared libs is not desired at the moment
|
||||
addFilter("gnucash.* shlib-policy-missing-suffix")
|
2911
gnucash.changes
Normal file
2911
gnucash.changes
Normal file
File diff suppressed because it is too large
Load Diff
224
gnucash.spec
Normal file
224
gnucash.spec
Normal file
@ -0,0 +1,224 @@
|
||||
#
|
||||
# spec file for package gnucash
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define __builder ninja
|
||||
|
||||
# Define used guile version
|
||||
%if 0%{?suse_version} > 1500
|
||||
%define guile_version 3.0
|
||||
%else
|
||||
%if 0%{?sle_version} >= 150200
|
||||
%define guile_version 2.0
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1600
|
||||
%bcond_without python
|
||||
%else
|
||||
%bcond_with python
|
||||
%endif
|
||||
|
||||
Name: gnucash
|
||||
Version: 5.8
|
||||
Release: 0
|
||||
Summary: Personal Finance Manager
|
||||
License: SUSE-GPL-2.0-with-openssl-exception OR SUSE-GPL-3.0-with-openssl-exception
|
||||
Group: Productivity/Office/Finance
|
||||
URL: http://www.gnucash.org/
|
||||
Source: https://github.com/Gnucash/gnucash/releases/download/%{version}/%{name}-%{version}.tar.bz2
|
||||
Source1: %{name}-rpmlintrc
|
||||
## Cpan-warning patch must always be applied.
|
||||
# PATCH-FIX-UPSTREAM gnucash-cpan-warning.patch -- Add a warning about the danger of using gnc-fq-update to update the perl modules used by GnuCash.
|
||||
Patch0: gnucash-cpan-warning.patch
|
||||
# PATCH-FIX-UPSTREAM gnucash-libm.patch gh#gnucash/gnucash#632 dimstar@opensuse.org -- Link libm: gnucash uses e.g. log10 without explicitly requesting libm
|
||||
Patch1: gnucash-libm.patch
|
||||
Patch2: gnucash-4.1-fix-gtest-path.patch
|
||||
|
||||
BuildRequires: cmake >= 3.14
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: gcc-c++
|
||||
%if 0%{?suse_version} == 1500
|
||||
BuildRequires: gcc13-PIE
|
||||
BuildRequires: gcc13-c++
|
||||
%endif
|
||||
BuildRequires: gmock >= 1.8.0
|
||||
BuildRequires: gtest >= 1.8.0
|
||||
BuildRequires: guile-devel
|
||||
BuildRequires: libboost_date_time-devel-impl >= 1.67.0
|
||||
BuildRequires: libboost_filesystem-devel-impl >= 1.67.0
|
||||
BuildRequires: libboost_headers-devel-impl >= 1.67.0
|
||||
BuildRequires: libboost_locale-devel-impl >= 1.67.0
|
||||
BuildRequires: libboost_program_options-devel-impl >= 1.67.0
|
||||
BuildRequires: libboost_regex-devel-impl >= 1.67.0
|
||||
BuildRequires: libboost_system-devel-impl >= 1.67.0
|
||||
BuildRequires: libdbi-drivers-dbd-sqlite3
|
||||
BuildRequires: libicu-devel
|
||||
BuildRequires: makeinfo
|
||||
BuildRequires: ninja
|
||||
BuildRequires: pkgconfig
|
||||
%if %{with python}
|
||||
BuildRequires: python3-devel >= 3.8
|
||||
%endif
|
||||
BuildRequires: swig >= 3.0.12
|
||||
BuildRequires: xsltproc
|
||||
BuildRequires: pkgconfig(aqbanking) >= 6.0.0
|
||||
BuildRequires: pkgconfig(dbi) >= 0.8.3
|
||||
BuildRequires: pkgconfig(gdk-pixbuf-2.0)
|
||||
BuildRequires: pkgconfig(gio-2.0)
|
||||
BuildRequires: pkgconfig(glib-2.0) >= 2.56.1
|
||||
BuildRequires: pkgconfig(gmodule-2.0) >= 2.40
|
||||
BuildRequires: pkgconfig(gnome-keyring-1) >= 0.6
|
||||
BuildRequires: pkgconfig(gobject-2.0) >= 2.40
|
||||
BuildRequires: pkgconfig(gthread-2.0) >= 2.40
|
||||
BuildRequires: pkgconfig(gtk+-3.0) >= 3.22.29
|
||||
BuildRequires: pkgconfig(gwenhywfar) >= 3.99.20
|
||||
BuildRequires: pkgconfig(icu-i18n)
|
||||
BuildRequires: pkgconfig(icu-uc)
|
||||
BuildRequires: pkgconfig(ktoblzcheck)
|
||||
BuildRequires: pkgconfig(libglade-2.0)
|
||||
BuildRequires: pkgconfig(libofx) >= 0.9.0
|
||||
BuildRequires: pkgconfig(libsecret-1) >= 0.18
|
||||
BuildRequires: pkgconfig(libxml-2.0) >= 2.9.4
|
||||
BuildRequires: pkgconfig(libxslt)
|
||||
BuildRequires: pkgconfig(webkit2gtk-4.1)
|
||||
Recommends: %{name}-docs
|
||||
# For translation of currency names
|
||||
Recommends: iso-codes
|
||||
%if %{with python}
|
||||
Recommends: python3-gnucash = %{version}
|
||||
%endif
|
||||
# Optional perl modules for online price retrieval
|
||||
Recommends: perl(Date::Manip)
|
||||
Recommends: yelp
|
||||
Recommends: perl(Finance::Quote)
|
||||
BuildRequires: pkgconfig(gwengui-gtk3)
|
||||
|
||||
%description
|
||||
GnuCash is a personal finance manager. A check book-like register GUI
|
||||
allows you to enter and track bank accounts, stocks, income, and even
|
||||
currency trades.
|
||||
|
||||
Feature Highlights:
|
||||
|
||||
* Double-Entry Accounting;
|
||||
* Stock/Bond/Mutual Fund Accounts;
|
||||
* Small-Business Accounting;
|
||||
* Reports, Graphs;
|
||||
* QIF/OFX/HBCI Import, Transaction Matching;
|
||||
* Scheduled Transactions;
|
||||
* Financial Calculations.
|
||||
|
||||
%if %{with python}
|
||||
%package -n python3-gnucash
|
||||
Summary: Python bindings for GnuCash
|
||||
Group: Development/Libraries/Python
|
||||
Requires: %{name} = %{version}
|
||||
|
||||
%description -n python3-gnucash
|
||||
This package provides the Python 3 bindings for development of GnuCash,
|
||||
a personal finance manager.
|
||||
%endif
|
||||
|
||||
%package devel
|
||||
Summary: Development files for GnuCash
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %{name} = %{version}
|
||||
|
||||
%description devel
|
||||
This package provides all the necessary files for development of GnuCash,
|
||||
a personal finance manager.
|
||||
|
||||
%lang_package
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n %{name}-%{version}
|
||||
|
||||
%build
|
||||
%define _lto_cflags %{nil}
|
||||
%define __builder ninja
|
||||
%if 0%{?suse_version} == 1500
|
||||
export CXX=g++-13
|
||||
%endif
|
||||
%cmake \
|
||||
-DCMAKE_SKIP_INSTALL_RPATH:BOOL=OFF \
|
||||
-DCMAKE_SKIP_RPATH=OFF \
|
||||
-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \
|
||||
-DCMAKE_INSTALL_DOCDIR=%{_docdir}/%{name} \
|
||||
-DGMOCK_ROOT=%{_includedir}/gmock \
|
||||
-DGTEST_ROOT=%{_includedir}/gtest \
|
||||
%if %{with python}
|
||||
-DWITH_PYTHON=ON \
|
||||
%else
|
||||
-DWITH_PYTHON=OFF \
|
||||
%endif
|
||||
-DCOMPILE_GSCHEMAS=OFF \
|
||||
-DCMAKE_CXX_FLAGS=-Wno-error
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
%find_lang %{name} %{?no_lang_C}
|
||||
%fdupes %{buildroot}%{_libdir}
|
||||
%fdupes %{buildroot}%{_datadir}
|
||||
# Remove MS-Windows-related files and auto-installed LICENSE file
|
||||
rm %{buildroot}%{_docdir}/%{name}/LICENSE
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%{_bindir}/gnc-fq-*
|
||||
%{_bindir}/finance-quote-wrapper
|
||||
%{_bindir}/gnucash
|
||||
%{_bindir}/gnucash-cli
|
||||
%{_bindir}/gnucash-valgrind
|
||||
%dir %{_datadir}/metainfo
|
||||
%{_datadir}/metainfo/gnucash.appdata.xml
|
||||
%{_datadir}/applications/*.desktop
|
||||
%{_datadir}/glib-2.0/schemas/org.gnucash.*.xml
|
||||
%{_datadir}/gnucash/
|
||||
%{_datadir}/icons/hicolor/*/apps/gnucash-icon.png
|
||||
%{_datadir}/icons/hicolor/scalable/apps/gnucash-icon.svg
|
||||
%dir %{_datadir}/guile/site/%{guile_version}
|
||||
%{_datadir}/guile/site/%{guile_version}/gnucash
|
||||
%doc %{_docdir}/%{name}
|
||||
%{_libdir}/*.so
|
||||
%{_libdir}/gnucash
|
||||
%dir %{_libdir}/guile/%{guile_version}/site-ccache
|
||||
%{_libdir}/guile/%{guile_version}/site-ccache/gnucash
|
||||
%{_mandir}/man?/*%{?ext_man}
|
||||
%dir %{_sysconfdir}/gnucash
|
||||
%config %{_sysconfdir}/gnucash/environment
|
||||
%exclude %{_datadir}/gnucash/python
|
||||
|
||||
%if %{with python}
|
||||
%files -n python3-gnucash
|
||||
%{_datadir}/gnucash/python
|
||||
%dir %{python3_sitearch}/gnucash
|
||||
%{python3_sitearch}/gnucash
|
||||
%endif
|
||||
|
||||
%files devel
|
||||
%doc ChangeLog README
|
||||
%{_includedir}/gnucash/
|
||||
|
||||
%files lang -f %{name}.lang
|
||||
|
||||
%changelog
|
Loading…
Reference in New Issue
Block a user