Accepting request 827606 from home:mkittler:branches:network

- Prevent the build system to download Go modules which would require an
  internet connection during the build
- Update to 1.8.0
  - The 1.8.0 release
    - adds the experimental copyRangeMethod config on folders, for use on
      filesystems with copy-on-write support. Please see
      https://docs.syncthing.net/advanced/folder-copyrangemethod.html for
      details.
    - adds TCP hole punching, used to establish high performance TCP
      connections in certain NAT scenarios where only relay or QUIC
      connections could be used previously.
    - adds a configuration to file versioning for how often to run cleanup.
      This defaults to once an hour, but is configurable from very
      frequently to never.
  - The 1.7.0 release performs a database migration to optimize for clusters
    with many devices.
  - The 1.6.0 release performs a database schema migration, and adds the
    BlockPullOrder, DisableFsync and MaxConcurrentWrites folder
    options to the configuration schema. The LocalChangeDetected event no
    longer has the action set to added for new files, instead showing modified
    for all local file changes.
  - The 1.5.0 release changes the default location for the index database under
    some circumstances. Two new flags can also be used to affect the
    location of the configuration (-config) and database (-data)
    separately. The old -home flag is equivalent to setting both of these
    to the same directory. When no flags are given the following logic is
    used to determine the data location:
    If a database exists in the old default location, that location is
    still used. This means existing installations are not affected by this
    change.
    If $XDG_DATA_HOME is set, use $XDG_DATA_HOME/syncthing.
    If ~/.local/share/syncthing exists, use that location.
    Use the old default location.

OBS-URL: https://build.opensuse.org/request/show/827606
OBS-URL: https://build.opensuse.org/package/show/network/syncthing?expand=0&rev=193
This commit is contained in:
Alexei Sorokin
2020-08-18 15:47:35 +00:00
committed by Git OBS Bridge
parent 8a07ce741e
commit dcaf84bba5
6 changed files with 69 additions and 30 deletions

View File

@@ -17,7 +17,7 @@
Name: syncthing
Version: 1.4.2
Version: 1.8.0
Release: 0
Summary: Continuous File Synchronisation
License: MPL-2.0
@@ -51,31 +51,32 @@ joined to the syncthing relay pool or private.
%setup -q -n %{name}
%build
export BUILD_USER=abuild
export BUILD_HOST=openSUSE
mkdir -p build/src/ build/vendor/
export GOPATH="$PWD/build:$PWD/build/vendor"
# move source archive which is extracted as "syncthing" to be "src/github.com/syncthing/syncthing"
cd ..
install -d "src/github.com/syncthing/"
mv %{name} "src/github.com/syncthing/"%{name}
mkdir syncthing
cd "$PWD/src/github.com/syncthing/"%{name}
mkdir -p build/src/github.com/%{name}/%{name}
ls | sed '/^build$/d' | xargs cp -at build/src/github.com/%{name}/%{name}
cp -a vendor build/vendor/src
# set build environment, in particular use "-mod=vendor" to use the Go modules from the source archive's vendor dir
export BUILD_USER=abuild BUILD_HOST=openSUSE
export CGO_CPPFLAGS="${CPPFLAGS}" CGO_CFLAGS="${CFLAGS}" CGO_CXXFLAGS="${CXXFLAGS}" CGO_LDFLAGS="${LDFLAGS}"
export GOFLAGS="-trimpath -mod=vendor"
pushd build/src/github.com/%{name}/%{name}/
# build and install stcli which has no dedicated target and can not be built with -no-upgrade
go run build.go -version v%{version} install all
# build and install syncthing without automatic updates
go run build.go -no-upgrade -version v%{version} install
# build and install strelaysrv without automatic updates
go run build.go -no-upgrade -version v%{version} install strelaysrv
popd
%install
install -Dpm 0755 build/src/github.com/%{name}/%{name}/bin/%{name} \
%{buildroot}%{_bindir}/%{name}
install -Dpm 0755 build/src/github.com/%{name}/%{name}/bin/stcli \
%{buildroot}%{_bindir}/stcli
install -Dpm 0755 build/src/github.com/%{name}/%{name}/bin/strelaysrv \
%{buildroot}%{_bindir}/strelaysrv
st_dir=$PWD
cd ../src/github.com/syncthing/%{name}
mv LICENSE AUTHORS CONDUCT.md CONTRIBUTING.md README.md "$st_dir"
install -Dpm 0755 bin/%{name} %{buildroot}%{_bindir}/%{name}
install -Dpm 0755 bin/stcli %{buildroot}%{_bindir}/stcli
install -Dpm 0755 bin/strelaysrv %{buildroot}%{_bindir}/strelaysrv
install -dm 0750 %{buildroot}/%{_localstatedir}/lib/strelaysrv
install -Dpm 0644 cmd/strelaysrv/etc/linux-systemd/strelaysrv.service \
%{buildroot}%{_unitdir}/strelaysrv.service