On Jun 10, 2014, at 2:44 PM, Manuel Wolfshant <wolfy at nobugconsulting.ro> wrote: > On 06/10/2014 10:37 PM, Fred Smith wrote: >> On Tue, Jun 10, 2014 at 10:28:26PM +0300, Manuel Wolfshant wrote: >>> On 06/10/2014 06:28 PM, Daniel Ankers wrote: >>> >>> On 10 June 2014 16:19, Fred >>> Smith <[1]fredex at fcshome.stoneham.ma.us> wrote: >>> >>> Hi all! >>> I think it was on this list, in the last week or so I saw some >>> comment >>> about how some apps may grope the contents of /etc/redhat-release >>> when >>> installing themselves, so as to figure how which OS they're running >>> on, >>> and there was some mention of this not being the best of all >>> possible >>> ideas. >>> >>> Hi Fred, >>> I would have thought that "lsb_release -a" would be far more portable >>> across varying different distributions and versions. >>> Regards, >>> Dan >> Dan, this app is installed only on RHEL or Centos systems, so cross- >> distribution issues don't come up (if yu try to run the installer on, >> say, SUSE, it'll just error out with "unknown/incorrect distribution" >> or something similar.) >> >> So the pain comes simply in telling which RHEL or centos it is. While >> I'm sure someone smarter could parse /etc/redhat-release in fewer lines >> of code than I have, it's still a pain and prone to breakage with each >> new version. that's where lsb_release -i -r should make life simpler. > rpm -q should make life much easier if you already know you are on > centos/RHEL. just rpm -q --qf "%{vendor}\n" kernel or glibc or > filesystem any other mandatory package to discriminate between the two > families of distributions and then rpm -q --qf "apropriate fields here " > centos-release / redhat-release to find out anything else you need. > We've been cursing this week that we didn't now about lsb_release. Just the same, our trick was similar to yours: rpm -qf --queryformat '%{VERSION}\n' /etc/redhat-release Which gets me the distro version, regardless of what RHEL derivative I'm querying. Yes, you're out of luck on SUSE but luckily that wasn't in my problem set. Todd