| Summary: | Build issue: tdesdk conflicts with tdesvn - share/services/svn+*.protocol | ||
|---|---|---|---|
| Product: | TDE | Reporter: | David C. Rankin <trin> |
| Component: | tdesdk | Assignee: | Timothy Pearson <kb9vqf> |
| Status: | NEW --- | ||
| Severity: | major | CC: | albator78, bugwatch |
| Priority: | P5 | ||
| Version: | R14.0.x [Trinity] | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Compiler Version: | TDE Version String: | ||
| Application Version: | Application Name: | ||
|
Description
David C. Rankin
2012-03-24 23:35:17 CDT
Additional investigation shows the files are NOT 1-for-1 replacements for each other. The primary difference (aside from translation Description differences) is that tdesdk files use 'exec=kio_svn' while tdesvn files use 'exec=kio_ksvn'. So it looks like some name changing was done somewhere along the way. tdesvn provides: /opt/trinity/share/services/ksvn+file.protocol /opt/trinity/share/services/ksvn+http.protocol /opt/trinity/share/services/ksvn+https.protocol /opt/trinity/share/services/ksvn+ssh.protocol /opt/trinity/share/services/ksvn.protocol /opt/trinity/share/services/svn+file.protocol /opt/trinity/share/services/svn+http.protocol /opt/trinity/share/services/svn+https.protocol /opt/trinity/share/services/svn+ssh.protocol /opt/trinity/share/services/svn.protocol while tdesdk provides: /opt/trinity/share/services/svn+file.protocol /opt/trinity/share/services/svn+http.protocol /opt/trinity/share/services/svn+https.protocol /opt/trinity/share/services/svn+ssh.protocol /opt/trinity/share/services/svn.protocol Here is a look at the differences between the same files provided by tdesdk and tdesvn: diff tdesdkSvcs/svn+file.protocol tdesvnSvcs/svn+file.protocol 2c2 < exec=kio_svn --- > exec=kio_ksvn 11a12 > deleteRecursive=true diff tdesdkSvcs/svn+http.protocol tdesvnSvcs/svn+http.protocol 2c2 < exec=kio_svn --- > exec=kio_ksvn 11a12 > deleteRecursive=true diff tdesdkSvcs/svn+https.protocol tdesvnSvcs/svn+https.protocol 2c2 < exec=kio_svn --- > exec=kio_ksvn 11a12 > deleteRecursive=true diff tdesdkSvcs/svn.protocol tdesvnSvcs/svn.protocol 2c2 < exec=kio_svn --- > exec=kio_ksvn 11a12 > deleteRecursive=true 24d24 diff tdesdkSvcs/svn+ssh.protocol tdesvnSvcs/svn+ssh.protocol 2c2 < exec=kio_svn --- > exec=kio_ksvn 11a12 > deleteRecursive=true I don't know the significance of the differences yet, but I don't think I could just force and overwrite without causing further issues. Hello, on RHEL build, I'm using the "alternatives" mechanism to handle these files.
1) In both tdesdk and tdesvn, rename the conflicting files with a different suffix that helps to identify them . The resulting files do not conflict anymore:
Ex in tdesdk: mv svn+file.protocol svn+file.protocol_tdesdk
Ex in tdesvn: mv svn+file.protocol svn+file.protocol_tdesvn
2) In both packages post-installation, use the alternatives command to installs one of these files as current version.
In tdesvn postinstall (set priority 20, higher than tdesdk):
alternatives --install \
/opt/trinity/share/services/svn+file.protocol \
svn+file.protocol \
/opt/trinity/share/services/svn+file.protocol_tdesvn \
20
In tdesdk postinstall (set priority 10, lower than tdesvn):
alternatives --install \
/opt/trinity/share/services/svn+file.protocol \
svn+file.protocol \
/opt/trinity/share/services/svn+file.protocol_tdesdk \
10
And the tdesvn postuninstall
alternatives --remove \
svn+file.protocol \
/opt/trinity/share/services/svn+file.protocol_tdesvn
And the tdesdk postuninstall
alternatives --remove \
svn+file.protocol \
/opt/trinity/share/services/svn+file.protocol_tdesdk
|