Force bazaar client protocol to use servers protocol 2? - bazaar

I got ubuntu 12.04 with bazaar 2.5.1 and want to access a repository on a bazaar 1.5 server.
The server understands only bazaars protocol version 2 ,but the client tries to connect with version 3. How can i force the client to use version 2 of the protocol?
error-message:
Server does not understand Bazaar network protocol 3, reconnecting. (Upgrade the server to avoid this.)
It seems after several reconnects bazaar switches automatical to the lower version (as mentioned by bialix in his comment) but afterwards it just complains about the branch-format:
'error', "Unknown branch format: 'Bazaar Branch Format 7 (needs bzr 1.6)
So nothin really gained. Isn't there a way to tell the newer client to behave like an older?

The reository format might solve the problem. Try this :
bzr init-repo --pack-0.92 myRepo
bzr branch my1.5branch myRepo

Related

requested datatype filelists not available in yum update

In order to patch RedHat 7 machines to version 7.9, I've created an RPM repository with RPMs extracted from a DVD.iso file of the patch (example source guide), and updated said machines using yum.
The patch has succeeded with many of the machines (RHEL 7.7 only), but the rest (7.0, 7.2 and some 7.7 as well) have failed the with the following error:
Error: requested datatype filelists not available
I've also tried to gradualize the process and patch the 7.0 and 7.2 ones to 7.7 first by the same process, but yielded the same result. I've made sure I got each and every file in the Packages folder.
It is rather puzzling for me that some succeed and some fail, especially those with the same version. But I'm assuming they were created differently as I don't have the information to say otherwise. So my best direction would be to go by the error.
In this github post, lr1980 says:
https://blog.packagecloud.io/eng/2015/07/20/yum-repository-internals/
this means the "filelists.xml.gz" is missing on repo => it's a packager.io problem
Indeed, browsing my repository's repodata folder reveals only other.xml.gz and primary.xml.gz files, which are also the only files pointed to in the repomd.xml.
I've tried uploading the filelists.xml.gz file from the dvd.iso and reindexing, but it gets removed (admittedly am not familiar with this area of knowledge.. at all). What does "it's a packager.io problem" mean?
How can I force the repo to have such a file, assuming that's what I need? Or what can I do to solve this issue otherwise?
Many thanks

How to create a RedHat repository with a reduced set of packages

Dears,
I am managing a pool of servers running under RHEL 7.6, I created a local repository of RHEL packages to be able to udpated the other servers by limiting the internet access to the server hosting the local repository.
I used the reposync command to populate my repository but I am downloading a huge number of rpms packages!
I would like to reduce the set of packages to download to the ones already deployed on all the severs, I can do the list using the rpm command, (~750 packages).
I read that there is an includepkgs directive to be used with the reposync command.
How is it working, what is the required format?
I know it is possible to use the yumdownloader command to update the local repository, how is it possible to populate the repository for the first time ?
Any help advice would be appreciated
Regards
Fdv
It seems that the best option is to limit to the last version of the packages by using the option :
-n, --newest-only Download only newest packages per-repo

Is it posssible to add default repository/repositories to SLES when the original repository is unavailable?

I've got a SLES server installed by someone who is not available.
I've checked /etc/zypp/repos.d , there is a repo file SUSE-Linux-Enterprise-Server-11-SP4 11.4.4-1.109.repo
It's content is:
[SUSE-Linux-Enterprise-Server-11-SP4 11.4.4-1.109]
name=SUSE-Linux-Enterprise-Server-11-SP4 11.4.4-1.109
enabled=1
autorefresh=0
baseurl=cd:///?devices=/dev/sr0
path=/
type=yast2
keeppackages=0
The CD repository (/dev/sr0) is not available.
I would like to add default net repository/repositories to it (such as e.g. this, which zypper puts to /etc/zypp/repos.d). However after searching a lot, I could not find how to do that.
I know how to add a repository, but I don't know how to add default repositories.
Could you please provide a zypper addrepo/zypper ar command for these?
EDIT: This question can be applied generically to any version of SLES, not just for SLES 11 SP4 as when it was originally asked.
The "default" repositories of suse are listed here. I guess you might at least want to add Official Repositories > OSS.
zypper addrepo http://download.opensuse.org/distribution/11.4/repo/oss/ oss
For SLES, you simply register the server:
suse_register -a regcode-sles=yourRegistrationCode -a email=you#email.com -L /root/.suse_register.log
Then, the repos will be added automatically. You can also log into your account here and click on Base and Extension Products. I will give you one of the URLs I see there, but it will be useless to you because the repos require authentication before you can connect and also because I'm using the Itanium version. Here is an example repo.
The repos listed in this other answer by Clerenz are not the official SLES repos, but only openSUSE repos. The difference is explained in this answer.
From How to add SLES repository on SLES server:
Repositories are added to SLES automatically when a system is
registered to the SUSE Customer Center (SCC), SUSE Manager, or
SMT/RMT. If you need to manually add a repository or iso as a
repository:
Please make sure to have the SLES ISO or DVD to add as a
repository to the server.
Launch YaST | Software | Software Repositories
Select Add
Select Media Type and press Next
Browse to the ISO or insert the DVD and press Next
Finish adding the repository, and close YaST
Explanation
See the cd:///?devices=/dev/sr0 - it means zypper is looking for repo from virtual cd (mounted ISO). Mount it again and zypper will be good. FYI, you can use yast2 utility to add/remove repos from ISO into zypper configuration.
I suggest to not use openSuSE (suggested by accepted answer) as that is a freely distributed OS while SLES is developed by SuSE on top of openSuSE. So all packages from the repos of openSUSE may not work very well with the SLES.
I found out that in YaST2 you can add following repository for accessing packages of SLES 11:
https://nu.novell.com/repo/$RCE/SLES11-SP4-Pool/sle-11-x86_64
Change "SP4" if you have a different SP.
When asked for credentials insert the ones you can find on SUSE Customer Center > Organization > Organization Credentials.
I don't know if you need to register your SLES or not for this to work (I did it).

Mercurial hg no suitable response from remote hg error

Trying setup mercurial SVM on my windows server (2008 RC) from last couple of hours. I am stuck on this error when I try to clone my repo from the client machine.
Error: no suitable response from remote hg
The server that I am running has SSH access (SSH running on port 1667). I also have a remote access to it.
I tried to clone using command as well as with the help of tortoisehg gui client. Commands I tried is:
hg clone ssh://myuser#myremoteip:1667//D:/Mercurial Projects/testproj E:\Mercurial\testproj-clone
hg clone --remotecmd D:/Program Files/TortoiseHg/hg --verbose -- ssh://myuser#myremoteip:1667//D:/Mercurial Projects/testproj E:\Mercurial\testproj-clone
but no success so far.
I also added following line in global setting at client side to give remote path of hg on server but no luck:
[ui]
remotecmd = D:/Program Files/TortoiseHg/hg
Please help me...
I had a similar problem and in my case it was that the computer had both TortoiseSVN and TortoiseHG installed. Both TortoiseHG and TortoiseSVN have a command TortoisePlink.exe that they use. However, due to the PATH, TortoiseHG was using TortoiseSVN's TortoisePlink.exe.
Uninstalling TortoiseSVN solved the problem for me.
You may open a "cmd" window and type:
where TortoisePlink.exe
to check what TortoisePlink.exe is used.
I think the problem was that my Python version was older than the one I needed. I was trying to set it up with Python 2.6. I followed another tutorial with Python 2.7 and latest Mercurial version (2.8.1)
Anyone with Windows Server 2008 and IIS 7+ should follow this tutorial.
I run into this problem after updating TortoiseHg. It turned out the location of TortoisePlink.exe has changed. I had it set explicitly to C:\Program Files\TortoiseHg\TortoisePlink.exe in mercurial.ini and I had to change it to C:\Program Files\TortoiseHg\lib\TortoisePlink.exe.

apachebench aborts with a strange error message

I run a very simple php file on apache. Then I benchmark apache, using
ab -n 10000 -c 5 http://localhost/~me/hello.php?name=Niko
But I get this error message, depending on c (for c=1, things are fine):
apr_socket_connect(): Operation already in progress (37)
I'm using ApacheBench, Version 2.3 on OSX 10.5.7.
The very simple PHP file would be this one:
<h1>Hello <?=$_REQUEST['name']?></h1>
This might be connected with http://www.nabble.com/ab(1)-fix-(Operation-already-in-progress-(37))-td22821642.html.
This might be it. The post says:
fixed in trunk
Changes were significant, so I have no
plans to propose for backport to the
2.2.x branch in the short term. With some testing/everyday use in trunk on
various platforms, it may be
appropriate to backport later.
Well. That means I would have to wait for 2.3 or work straight with the trunk. I'm just doing hobby stuff, so: no thanks.