I have an RPM package for my application and the path of the installation is /company/application/version.
I am finding this difficult as it is a unix platform and there is no registry concept.
I need few things to be clarified:
How can i check the previous installed version number?
Every time I install my different version application all gets installed (i.e 2.5 and 2.6 both are considered as 2 different softwares because of the installation directory structure.)
How can I stop the newer version when old is already installed?
Without seeing the spec file, this is just shooting in the dark, but I would guess you are probably missing the 'Version' tag in your spec file. See http://www.rpm.org/max-rpm/s1-rpm-inside-tags.html. In general, Maximum RPM is a good resource.
Related
I am aware how to silently install 'R for Windows', but how could I update an existing installation silently to a new version?
Install switches I am currently using:
\\foo\R\R_4.0.5\R-4.0.5-win.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /ALLUSERS /LANGUAGE=en /COMPONENTS="main, x64, translations" /DIR="C:\Program Files\R"
For me, it seems like there is no supported update/upgrade switch. Just installing a new version over an existing one results in just having 2 versions listed in appwiz.cpl.
Forcing the same install dir is not helping either, as you still end up with 2 installations, just in the same folder.
Any hint is appreciated. Thanks in advance.
UPDATE:
I am trying to keep the installations on several machines aligned - therefor it would be helpful to update all machine installations periodically to the latest version and ensure the software inventory solution is not reporting N versions on a single machine.
R is designed so that you can have multiple versions installed simultaneously. This is why each version installs into a different directory.
The canonical way to handle this is to check a registry key for the latest installed version, but if you want to avoid messing with the registry, you can try this:
Install into a custom directory
When it comes to upgrading, move that directory to a temporary location
Install the newer version into the original location
If it works, delete the temp location
If it doesn't, delete the failed install and restore the original
Caveat: untested.
I am planning to upgrade artifactory-pro from 4.14.2 to 5.7. Has anyone done this so far? We use npm, bower, debian, yum repositories. Any recommendation or insight is appreciated.
As I see it, the upgrade depends on two main factors:
Your installation type(ZIP/RPM/RPM OSS/Debian/Docker). Here you can find detailed instructions for each type:
ZIP installation
RPM installation
RPM OSS installation
Debian installation
Docker installation
In case you use an HA cluster, here are the instructions.
While no special operations are required except those are mentioned in the instructions - please pay attention to updates and other special instructions since there are specific instructions to upgrading from Artifactory 4.x to 5.4.x and above. As can be seen here (for example).
Like in any other upgrade process, make sure you have a full system backup (Artifactory configuration, metadata, and artifacts)
I see that the RPM packages are named as below , but then I am confused about how a RPM released with new patch named ?
For e.g
RPM packages typically have file names like foo-1.0-1.i386.rpm.
The file name includes the package name (foo), version (1.0), release (1),
and architecture (i386).
Now I have a unix odbc installed on my box whose version is unixODBC-2.2.14-12.el6_3.x86_64 . There was a bug in unixodbc which was resolved in 2.2.14p2-1 so I am wondering which unixodbc rpm should I be looking for
does 2.2.14p2-1 means unixODBC-2.2.14-21.el6_3.x86_64 or unixODBC-2.2.14-12.el6_3.x86_64 . I know all RPMs created for el6 with this patch and above will have fix but I see the RHEL has just the below three version unixODBC-2.2.14-12.el6_3.x86_64 , unixODBC-2.2.14-11.el6_3.x86_64 and unixODBC-2.2.14-14.el6_3.x86_64 in its repo .
The usual convention is "version"-"release" with an optional "dot-plus-distribution" as part of the release. The version matches upstream; the release is changed by the packager (each time they add a patch or rebuild for other reasons). See also https://fedoraproject.org/wiki/Packaging:Versioning.
In your example, 2.2.14p2-1 would mean unixODBC's version number is "2.2.14p2" and it is the first time the vendor packaged it. That may or may not be included in 2.2.14-14.el6_3, the 14th release of "2.2.14" for CentOS 6.3. I say "maybe" because the "p2" of the upstream could be indicating a patch that CentOS already applies that the upstream has accepted. Or they just haven't downloaded and built the newest version yet.
In pre-buildout-times one would install ZOPE2 by downloading the tarball of http://old.zope.org/Products/Zope/ and do the configure/make/install-procedure.
Since ZOPE version 2.12 releases are made on pypi. Would it still be possible to install newer ZOPE2-versions the same way manually without using buildout?
Perspectively Plone is ment to be put on top ZOPE2, but to narrow down the question for now, an answer only concerning ZOPE2 is very welcome.
I may be late to the party but:
As a starting point: There is the projects installation docs at https://zope.readthedocs.io/en/2.13/INSTALL-virtualenv.html which worked fine (and is without buildout) the last time I tried.
Since I use virtualenv and pip a lot, the above method becomes cumbersome fast (installation from different path than pypi and local equivalent, accidentally upgrading wrong packages when installing more packages) I made an almost pure reference installation and then just did a pip freeze > zope_2.13_requirements.txt.
Now I can just create a new virtualenv and do a quick pip install -r zope_2.13_requirements.txt, can do it directly via pipy and have a fresh installation whenever I need.
The main part of the question probably is that you probably want to use Zope 3 and not legacy Zope 2 (which e.g. Plone still depends on). Zope is not a signle, coherent, entity. What components of Zope stack you want to use (zope.interface, zope.component, ZODB, Medusa web server, Zope management interface, others?) All are individual Python packages and can be used as is in any Python application with normal Python package workflow.
Buildout is nothing but scripts, templates and Python package installer with advanced dependency solving.
You can still install all Zope packages by hand, resulting a lenghty requirements.txt. Zope 2 comes with command line scripts for creating and maintaining databases and you can call these scripts by hand, no need to go through buildout. You can also create configuration files by hand, e.g. looking the examples generated by buildout if you have some specific legacy project in mind.
For example, substanced, a CMS based on Pyramid and ZODB, does not rely on buildout. Pyramid internally uses zope.interface, zope.component and various other packakages.
WampServer is installed on my computer.
I am wishing to install the RMySQL package.
The online documentation of the latter mentions:
Install a MySQL client library from http://www.mysql.com or http://dev.mysql.com. If you already installed a MySQL server, you may want to re-run the install to ensure that you also installed client header and library files. Note that Xampp doesn't include these.
I am confused I don't know which are these required 'header' and 'library' files. And, how do I know whether they are made available by WampServer? If it is not the case, can I simply add them somewhere to a WampServer folder (instead of uninstalling WampServer and installing Apache and its friends separatedly)?
Thanks,
Édouard
OK so I've just gone through the living hell that is installing RMySQL on Windows. But finally succeeded.
Binaries on windows are not supported, so the other answers saying this is "Simple" are wrong. Also a lot of the guides etc out there are outdated, or have broken links.
The best overall answer for MYSQL generally is to look at:
Using MySQL in R for Windows
Basically you have to install RTools in order to be able to compile the packages from source.
However specifically with WAMPServer, it doesn't install the .lib and client files. So what I did was go to MYSQL to find the exact same version of MYSQL as Wampserver had installed. I downloaded the zip file version. I compared the lib directories with a visual difference tool (Beyond Compare) and copied across the missing files into my WAMPServer MYSQL installation.
As per the guide above, I then copied:
libmysql.lib from mysql/lib to mysql/lib/opt to meet dependencies.
libmysql.dll to C:\Program Files\R\R-2.12.1\bin
Finally install.packages('RMySQL',type='source') worked
For people using WampServer in Windows and wanting to install RMySQL, I've adapted the instructions outlined here. I'm assuming you already have WampServer installed. I'll also use the file paths that I used on my computer, but keep in mind that your file paths may differ slightly (due to different versions, installations, etc.)
Install latest RTools from here.
Create a new file called Renviron.site in C:\Program Files\R\R-2.15.1\etc\, open the file in a text editor, and add a line like MYSQL_HOME="C:/wamp/bin/mysql/mysql5.6.12" (path to your mysql files). Make sure to use forward slashes and don't forget the quotes.
Click on your WampServer icon and go to MySQL, then Version. This will tell you what version of MySQL was included in your WampServer distribution.
Go to http://dev.mysql.com/downloads/mysql and download and install the same version of MySQL that is included in your WampServer distribution.
Once you've gone through the complete installation, go to the folder where MySQL installed and copy the file called libmysql.lib, which can be found in the lib\ folder.
Now go to the lib\ folder in your WampServer directory (mine is C:\wamp\bin\mysql\mysql5.6.12\lib) and create a new folder called opt\.
Paste into this new opt folder the libmysql.lib file that you just copied.
You can now uninstall the MySQL server that you just downloaded, since we only needed that one file from it (which is apparently not included in the WampServer distribution).
Under C:\wamp\bin\mysql\mysql5.6.12\lib\, you'll also find libmysql.dll. Copy this to C:\Program Files\R\R-2.15.1\bin\i386\ (This works if you have 36 bit Windows like me. I think if you have 64 bit, you may just put it under the bin\ subdirectory instead of under bin\i386\, but please don't hold me to that.) I also copied the same file (libmysql.dll) to the C:\windows\system32\ directory, but I'm not sure if this is necessary.
In R, run install.packages('RMySQL',type='source') and hopefully the installation completes without any issues. You can then load the package as usual with library(RMySQL).
Note: I'm running 32 bit Windows, R-2.15.1, and a WampServer distribution that includes MySQL 5.6.12.