OpenBSD packages can be installed using 'flavour'. Best example

is vim. It can be installed as vim--no_x11 or vim--gtk2.
This commit is contained in:
Laurent Coustet 2013-11-15 12:20:30 +01:00
parent 009fdbf96a
commit 12e7e3b2f6
2 changed files with 14 additions and 0 deletions

View file

@ -63,6 +63,7 @@ Misc changes:
* Fixes for IPv6 addresses in inventory text files
* name of executable can be passed to pip/gem etc, for installing under *different* interpreters
* copy of ./hacking/env-setup added for fish users, ./hacking/env-setup.fish
* openbsd_pkg can handle "flavoured" packages like vim--no_x11
1.3.4 "Top of the World" (reprise) - October 29, 2013

View file

@ -52,6 +52,9 @@ EXAMPLES = '''
# Make sure nmap is not installed
- openbsd_pkg: name=nmap state=absent
# Make sure vim is installed using no_x11 flavour
- openbsd_pkg name=vim--no_x11 state=present
'''
# Function used for executing commands.
@ -81,13 +84,23 @@ def get_current_name(name, specific_version, module):
return current_name
# Function used to find out if a package is currently installed.
# OpenBSD packages can contain "flavours"
# For example vim is distributed as a "gtk2":
# - vim--gtk2
# and "no_x11" flavour:
# - vim--no_x11
def get_package_state(name, specific_version, module):
info_cmd = 'pkg_info -e'
if specific_version:
syntax = "%s %s"
else:
if "--" in name:
(name, flavour) = name.split("--", 1)
syntax = "%s %s-*"
if flavour:
syntax += "-%s" % (flavour, )
syntax = "%s-"
rc, stdout, stderr = execute_command(syntax % (info_cmd, name), module)