All,
Here is a new one, I built tdesdk using autoconf (builds fine) but on install, it fails due to conflicting files from tdesvn. The error on install is:
loading packages... resolving dependencies... looking for inter-conflicts...
Targets (1): tde-tdesdk-3513_tqt-1
Total Installed Size: 141.97 MiB
Proceed with installation? [Y/n] (1/1) checking package integrity [#######################################] 100% (1/1) loading package files [#######################################] 100% (1/1) checking for file conflicts [#######################################] 100% error: failed to commit transaction (conflicting files) tde-tdesdk: /opt/trinity/share/services/svn+file.protocol exists in filesystem tde-tdesdk: /opt/trinity/share/services/svn+http.protocol exists in filesystem tde-tdesdk: /opt/trinity/share/services/svn+https.protocol exists in filesystem tde-tdesdk: /opt/trinity/share/services/svn+ssh.protocol exists in filesystem tde-tdesdk: /opt/trinity/share/services/svn.protocol exists in filesystem Errors occurred, no packages were upgraded.
Checking ownership of the existing files, it is tdesvn that provides the conflicting files. How should we handle this? Only one package should provide the files. I'll check for existing bug reports and if I can't find one I'll file it.
I would welcome suggestions for how we handle this. Obviously tdesvn needs to provide the files if tdesdk isn't installed and vice-versa, but they both can't provide them...
On 03/24/2012 11:27 PM, David C. Rankin wrote: <snip>
Checking ownership of the existing files, it is tdesvn that provides the conflicting files. How should we handle this? Only one package should provide the files. I'll check for existing bug reports and if I can't find one I'll file it.
<snip>
http://bugs.pearsoncomputing.net/show_bug.cgi?id=929
Checking ownership of the existing
files, it is tdesvn that provides the conflicting files. How should we handle this? Only one package should provide the files. I'll check for existing bug reports and if I can't find one I'll file it.
<snip>
I don't know whether this will help but a quick check on the web shows the problem is a packaging issue:
http://www.google.com/search?q=kdesdk+kdesvn&ie=utf-8&oe=utf-8&a...
Darrell
On 03/24/2012 11:45 PM, Darrell Anderson wrote:
I don't know whether this will help but a quick check on the web shows the problem is a packaging issue:
http://www.google.com/search?q=kdesdk+kdesvn&ie=utf-8&oe=utf-8&a...
Darrell
It does,
I'm also going to check the code of the tdesvn and tdesdk version of the same files to see if that may not be where some issues are arising with kio on various protocols.
I think the latest stable release of openssl just killed fish://. If so, that means we currently have no sftp:// or fish:// in tde... bummer. I know those aren't the protocols at issue, but it will be interesting to see if the tdesvn and tdesdk files are consistent...
On 03/25/2012 12:11 AM, David C. Rankin wrote:
It does,
I'm also going to check the code of the tdesvn and tdesdk version of the same files to see if that may not be where some issues are arising with kio on various protocols.
I think the latest stable release of openssl just killed fish://. If so, that means we currently have no sftp:// or fish:// in tde... bummer. I know those aren't the protocols at issue, but it will be interesting to see if the tdesvn and tdesdk files are consistent...
OK,
First, fish:// is fine with openssh-5.9p1-8 and openssl-1.0.1-1, but sftp is still dead. Second, what we will do for the conflicting files is split the files out of both packages into a third package 'tde-svnservices' and make that a dependency of both tdesvn and tdesdk.
That raises another question. Since the svn+file.protocol, ... files are not exactly the same between the two packages -- which one should we use?
tdesvn files use the ksvn_kio service while tdesdk uses the svn_kio service. I think both are functionally equivalent, but I don't know which would be better or if it matters.
Is there somebody on the list familiar with the kio files and the difference between ksvn_kio and svn_kio that could shed some light on the situation??
On 03/25/2012 12:31 PM, David C. Rankin wrote:
On 03/25/2012 12:11 AM, David C. Rankin wrote:
It does,
I'm also going to check the code of the tdesvn and tdesdk version of the same files to see if that may not be where some issues are arising with kio on various protocols.
I think the latest stable release of openssl just killed fish://. If so, that means we currently have no sftp:// or fish:// in tde... bummer. I know those aren't the protocols at issue, but it will be interesting to see if the tdesvn and tdesdk files are consistent...
OK,
First, fish:// is fine with openssh-5.9p1-8 and openssl-1.0.1-1, but sftp is still dead. Second, what we will do for the conflicting files is split the files out of both packages into a third package 'tde-svnservices' and make that a dependency of both tdesvn and tdesdk.
That raises another question. Since the svn+file.protocol, ... files are not exactly the same between the two packages -- which one should we use?
tdesvn files use the ksvn_kio service while tdesdk uses the svn_kio service. I think both are functionally equivalent, but I don't know which would be better or if it matters.
Is there somebody on the list familiar with the kio files and the difference between ksvn_kio and svn_kio that could shed some light on the situation??
OK,
Here is what I've done. I split the tdesvn package into two packages 'tde-tdesvn' and 'tde-kiosvn' making tde-kiosvn a dependency of tde-tdesvn and of tde-tdesdk. Now the conflict is gone and both tdesvn and tdesdk will pull in kiosvn. The only remaining question is whether there is any functional difference in the kio_svn and kio_ksvn calls. Confirmation of the packaging:
14:08 nirvana:~/tde/bld/tde-tdesvn> diff tdesvn-full.txt tdesvn-nokio.txt 398,402d397 < tde-tdesvn /opt/trinity/share/services/svn+file.protocol < tde-tdesvn /opt/trinity/share/services/svn+http.protocol < tde-tdesvn /opt/trinity/share/services/svn+https.protocol < tde-tdesvn /opt/trinity/share/services/svn+ssh.protocol < tde-tdesvn /opt/trinity/share/services/svn.protocol 14:08 nirvana:~/tde/bld/tde-tdesvn> pacman -Qpl tde-kiosvn-3513_tqt-1-x86_64.pkg.tar.xz tde-kiosvn /opt/ tde-kiosvn /opt/trinity/ tde-kiosvn /opt/trinity/share/ tde-kiosvn /opt/trinity/share/services/ tde-kiosvn /opt/trinity/share/services/svn+file.protocol tde-kiosvn /opt/trinity/share/services/svn+http.protocol tde-kiosvn /opt/trinity/share/services/svn+https.protocol tde-kiosvn /opt/trinity/share/services/svn+ssh.protocol tde-kiosvn /opt/trinity/share/services/svn.protocol
Here is what I've done. I split the tdesvn package into two packages 'tde-tdesvn' and 'tde-kiosvn' making tde-kiosvn a dependency of tde-tdesvn and of tde-tdesdk. Now the conflict is gone and both tdesvn and tdesdk will pull in kiosvn. The only remaining question is whether there is any functional difference in the kio_svn and kio_ksvn calls. Confirmation of the packaging:
14:08 nirvana:~/tde/bld/tde-tdesvn> diff tdesvn-full.txt tdesvn-nokio.txt 398,402d397 < tde-tdesvn /opt/trinity/share/services/svn+file.protocol < tde-tdesvn /opt/trinity/share/services/svn+http.protocol < tde-tdesvn /opt/trinity/share/services/svn+https.protocol < tde-tdesvn /opt/trinity/share/services/svn+ssh.protocol < tde-tdesvn /opt/trinity/share/services/svn.protocol 14:08 nirvana:~/tde/bld/tde-tdesvn> pacman -Qpl tde-kiosvn-3513_tqt-1-x86_64.pkg.tar.xz tde-kiosvn /opt/ tde-kiosvn /opt/trinity/ tde-kiosvn /opt/trinity/share/ tde-kiosvn /opt/trinity/share/services/ tde-kiosvn /opt/trinity/share/services/svn+file.protocol tde-kiosvn /opt/trinity/share/services/svn+http.protocol tde-kiosvn /opt/trinity/share/services/svn+https.protocol tde-kiosvn /opt/trinity/share/services/svn+ssh.protocol tde-kiosvn /opt/trinity/share/services/svn.protocol
Are you discussing how to handle building both packages on Arch or proposing Tim create a new dependency package in the GIT source tree?
Darrell
On 03/25/2012 02:23 PM, Darrell Anderson wrote:
Are you discussing how to handle building both packages on Arch or proposing Tim create a new dependency package in the GIT source tree?
Darrell
Just for Arch. This is a TDE problem, but it can be addressed by packaging right now as long a kio_svn and kio_ksvn are interchangeable (still have to test).
This IS a TDE problem though that will need to be fixed. We can't have two independent TDE packages (tdesvn and tdesdk) that produce the same five files:
/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
I looked at bit at the tdesvn code (kiosvn.cpp) and it doesn't look like too much of a problem to fix internally. I think the proper long-term solution IS to split the packages in TDE to create something like 'tde-kiosvn' since we have two packages that require the same capabilities.
It looks like the reason we currently have tdesvn producing what are effectively duplicate protocol files in its build was from some earlier attempt to get rid of the file conflicts with tdesdk in the first place:
/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
I'll have to confirm further, but initially it looks like the svn+*.protocol should have been dropped when the ksvn+*.protocol files were added to begin with. Now those files essentially duplicate each other.
Checking my opensuse 3.5.10 install, svn+*.protocol is provided by kdesvn while kdesdk provides NO .protocol files at all.
Another way to do this is just to make tdesvn a dependency of tdesdk and drop the protocol files from tdesdk altogether. (I like that idea) No split package and the tdesvn overhead is small:
1848392 Mar 25 13:44 tde-tdesvn-3513_tqt-2-x86_64.pkg.tar.xz
1.8M - no biggie.
What do you think? Which option do you like the best?
(1) create a 3rd package with the common files to prevent conflict. (2) simply drop the .protocol files from tdesdk and making tdesvn a dependency of tdesdk.
Just for Arch. This is a TDE problem, but it can be addressed by packaging right now as long a kio_svn and kio_ksvn are interchangeable (still have to test).
This IS a TDE problem though that will need to be fixed. We can't have two independent TDE packages (tdesvn and tdesdk) that produce the same five files:
/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
I looked at bit at the tdesvn code (kiosvn.cpp) and it doesn't look like too much of a problem to fix internally. I think the proper long-term solution IS to split the packages in TDE to create something like 'tde-kiosvn' since we have two packages that require the same capabilities.
It looks like the reason we currently have tdesvn producing what are effectively duplicate protocol files in its build was from some earlier attempt to get rid of the file conflicts with tdesdk in the first place:
/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
I'll have to confirm further, but initially it looks like the svn+*.protocol should have been dropped when the ksvn+*.protocol files were added to begin with. Now those files essentially duplicate each other.
Checking my opensuse 3.5.10 install, svn+*.protocol is provided by kdesvn while kdesdk provides NO .protocol files at all.
Another way to do this is just to make tdesvn a dependency of tdesdk and drop the protocol files from tdesdk altogether. (I like that idea) No split package and the tdesvn overhead is small:
1848392 Mar 25 13:44 tde-tdesvn-3513_tqt-2-x86_64.pkg.tar.xz
1.8M - no biggie.
What do you think? Which option do you like the best?
(1) create a 3rd package with the common files to prevent conflict. (2) simply drop the .protocol files from tdesdk and making tdesvn a dependency of tdesdk.
Seems to me the configure process of both should check for the files and build appropriately on-the-fly.
Darrell
On 03/25/2012 04:29 PM, Darrell Anderson wrote:
Seems to me the configure process of both should check for the files and build appropriately on-the-fly.
Yes, but I don't think that would work. Since neither are a dependency of the other a user could choose to install either and for the packager, there is no way to know the user's choice at build time. So it has to be handled from a TDE or packaging standpoint. Preferably from a TDE standpoint. I still think it needs to be a:
(2) drop .protocol files from tdesdk and make tdesvn a dependency of tdesdk.
- or to keep completely independent packages - a proper, but painful
(3) rewrite the tdesdk code to use and install svnsdk+file.protocol, etc..
On 03/24/2012 11:45 PM, Darrell Anderson wrote:
Checking ownership of the existing
files, it is tdesvn that provides the conflicting files. How should we handle this? Only one package should provide the files. I'll check for existing bug reports and if I can't find one I'll file it.
<snip>
I don't know whether this will help but a quick check on the web shows the problem is a packaging issue:
http://www.google.com/search?q=kdesdk+kdesvn&ie=utf-8&oe=utf-8&a...
Darrell
To unsubscribe, e-mail: trinity-devel-unsubscribe@lists.pearsoncomputing.net For additional commands, e-mail: trinity-devel-help@lists.pearsoncomputing.net Read list messages on the web archive: http://trinity-devel.pearsoncomputing.net/ Please remember not to top-post: http://trinity.pearsoncomputing.net/mailing_lists/#top-posting
Oh,
The interesting part is 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
I wonder if we can just do a name change for either tdesvn or tdesdk to something like:
/opt/trinity/share/services/sdksvn+file.protocol /opt/trinity/share/services/sdksvn+http.protocol /opt/trinity/share/services/sdksvn+https.protocol /opt/trinity/share/services/sdksvn+ssh.protocol /opt/trinity/share/services/sdksvn.protocol
On 03/25/2012 12:14 AM, David C. Rankin wrote:
On 03/24/2012 11:45 PM, Darrell Anderson wrote:
Checking ownership of the existing
files, it is tdesvn that provides the conflicting files. How should we handle this? Only one package should provide the files. I'll check for existing bug reports and if I can't find one I'll file it.
<snip>
I don't know whether this will help but a quick check on the web shows the problem is a packaging issue:
http://www.google.com/search?q=kdesdk+kdesvn&ie=utf-8&oe=utf-8&a...
Darrell
<snip>
I wonder if we can just do a name change for either tdesvn or tdesdk to something like:
/opt/trinity/share/services/sdksvn+file.protocol /opt/trinity/share/services/sdksvn+http.protocol /opt/trinity/share/services/sdksvn+https.protocol /opt/trinity/share/services/sdksvn+ssh.protocol /opt/trinity/share/services/sdksvn.protocol
The primary difference (aside from translation Description differences) is that tdesdk files use 'exec=kio_svn' while tdesvn files use 'exec=kio_ksvn'. So they are not 1-for-1 replacements:
for i in tdesdkSvcs/*; do echo -e "\ndiff $i tdesvnSvcs/${i##*/}\n"; diff $i tdesvnSvcs/${i##*/}; done
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 wonder if we can just do a name
change for either tdesvn or tdesdk to
something like:
/opt/trinity/share/services/sdksvn+file.protocol /opt/trinity/share/services/sdksvn+http.protocol /opt/trinity/share/services/sdksvn+https.protocol /opt/trinity/share/services/sdksvn+ssh.protocol /opt/trinity/share/services/sdksvn.protocol
The primary difference (aside from translation Description differences) is that tdesdk files use 'exec=kio_svn' while tdesvn files use 'exec=kio_ksvn'. So they are not 1-for-1 replacements:
When you decide how to best resolve this, there is a section the wiki developer's page where we can add a snippet about building both on the same system.
Darrell
On 03/25/2012 12:47 AM, Darrell Anderson wrote:
When you decide how to best resolve this, there is a section the wiki developer's page where we can add a snippet about building both on the same system.
Darrell
OK,
I've decided to repackage tdesdk and remove the conflicting files. We will drop a note about the requirement to install tdesvn for the svn kio capability. The tdesvn package provides the same capabilities so we should be fine. I'll just list tdesvn as a dependency of tdesdk.
When you decide how to best resolve this, there is a section the wiki developer's page where we can add a snippet about building both on the same system.
Darrell
Done:
NOTE: tdesvn and tdesdk provide conflicting files for svn-kio services. Neither package is a dependency of the other. If tdesdk or tdesvn will be installed without the other, then no change is required. However if both tdesdk and tdesvn are to be installed, then the following files must be removed from one of the files before packaging to avoid filesystem conflicts:
/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
Since tdesvn uses the ksvn kio exclusively, while tdesdk uses the svn kio, I would recommend removing the conflicting files from tdesdk to eliminate the same services relying on multiple kio service files.