Skip to content

Device configuration

Juha Erkkilä edited this page Oct 13, 2017 · 4 revisions

Device Configuration

Puavo OS devices can be centrally configured usin the Puavo-web interface. Currently the configuration system is in transition and therefore a bit messy. Configuration can be done mainly via Puavo Conf system and Kernel parameters.

Puavo Conf

In Puavo OS the key component for configuration is Puavo Conf which is the main configuration system on client devices. It consists of a parameter database, a C library (libpuavoconf) and a set of programs (puavo-conf, puavo-conf-daemon and puavo-conf-update) manipulating the database through the library. Parameters define how various Puavo OS components behave and can be tuned from multiple sources.

To use define the Puavo Conf parameters from the Puavo web interface there are currently three main ways to do it at the devices settings page.

  • Standard configuration fields (such as xrandr)
  • Tags field (support for legacy tags)
  • Kernel parameters field (to set any Puavo Conf parameter using puavo.parameter=value)

puavo-conf from the command line

Puavo-conf is a command line tool to get and set Puavo Configuration parameters. Parameters are KEY-VALUE pairs.

List available parameters and their current values. $ puavo-conf

List of Puavo Conf parameters

Puavo Conf Parameter Functionality
puavo.acpi.wakeup.enabled
puavo.admin.personally_administered
puavo.admin.primary_user
puavo.audio.pa.default_sink
puavo.audio.pa.default_source
puavo.autopilot.enabled
puavo.autopilot.mode
puavo.autopilot.password
puavo.autopilot.username
puavo.autopoweroff.daytime_end_hour
puavo.autopoweroff.daytime_start_hour
puavo.autopoweroff.enabled
puavo.autopoweron.enabled
puavo.desktop.background
puavo.desktop.dconf.settings
puavo.desktop.devilspie.scripts
puavo.desktop.environment
puavo.desktop.keyboard.layout
puavo.desktop.keyboard.variant
puavo.desktop.vendor.logo
puavo.graphics.driver
puavo.greeter.background.default
puavo.greeter.background.firstlogin
puavo.greeter.background.mode
puavo.greeter.background.random.subdir
puavo.guestlogin.enabled
puavo.guestlogin.mode
puavo.hosttype
puavo.hw-tools.hpfancontrol.enabled
puavo.image.automatic_updates
puavo.image.download.ratelimit
puavo.image.overlay
puavo.image.path
puavo.image.preferred
puavo.image.series.urls
puavo.kernel.arguments
puavo.kernel.modules.blacklist
puavo.kernel.version
puavo.l10n.locale
puavo.mounts.by_user_from_bootserver.enabled
puavo.mounts.extramounts
puavo.mounts.nethomes.enabled
puavo.nonfree.smartboard.enabled
puavo.nonfree.ti_nspire_cx_cas.enabled
puavo.onscreenkeyboard.enabled
puavo.pm.lidsuspend.enabled
puavo.pm.nmi_watchdog.enabled
puavo.pm.sata_alpm.enabled
puavo.pm.suspend.enabled
puavo.pm.wireless.enabled
puavo.printing.default_printer
puavo.printing.default_uri
puavo.printing.dnssd.enabled
puavo.printing.jetpipe.enabled
puavo.profiles.list
puavo.serialconsole.enabled
puavo.service.ModemManager.enabled
puavo.service.NetworkManager.enabled
puavo.service.avahi-daemon.enabled
puavo.service.nscd.enabled
puavo.service.nslcd.enabled
puavo.service.puavo-vpn-client-dnsmasq.enabled
puavo.service.puavo-vpn-client-openvpn.enabled
puavo.service.rpc-gssd.enabled
puavo.support.image_changelog_url
puavo.support.new_bugreport_browser
puavo.support.new_bugreport_url
puavo.support.show_accesscontrols_for
puavo.support.ssh_access_timeout
puavo.support.vino_network_interface
puavo.swap.local.enabled
puavo.time.timezone
puavo.vpn.client.remote_servers
puavo.webmenu.feedback.enabled
puavo.wireless.ap.channels
puavo.wireless.ap.reconf_interval
puavo.wireless.ap.report_interval
puavo.wireless.ap.rssi_kick.interval
puavo.wireless.ap.rssi_kick.threshold
puavo.wireless.ap.tx.power
puavo.wireless.ap.tx.power.2g
puavo.wireless.ap.tx.power.5g
puavo.www.apiserver
puavo.www.homepage
puavo.xbacklight.brightness
puavo.xbacklight.enabled
puavo.xorg.inputs.hitachi.calibration
puavo.xorg.intel_backlight
puavo.xorg.noaccel
puavo.xorg.server
puavo.xrandr.args
puavo.xrandr.forced
puavo.xsessions.default
puavo.xsessions.locked

Kernel parameters

Kernel parameters can be set using the devices configuration page and the Kernel parameter field.

The following kernel parameters are found to be useful with certain netboot devices or laptops. They are usually used to fix device-specific problems or to add debug functionality.

Kernel parameters can be set via Puavo device settings to all device types except bootserver.

Kernel parameter Device model Functionality
puavo.parameter=value * Set Puavo Conf parameter for a device.
crashkernel=128M * Activate kernel crash dumping over SSH to bootservers. Should only be used on netboot devices with 2GB+ RAM
snd-hda-intel.position_fix=1 Epatec etc-2500 Fixes audio problems and makes pulseaudio stable.
acpi=force via-rhine.avoid_D3=1 Epatec etc-3800 Fixes problems with shutdown and pxe boot after device reboot.
reboot=b Dell Optiplex 780 Fixes the problem with software reboot
modprobe.blacklist=ath9k Zotac ID11 & ID12 Inactivate internal wifi chip.
modprobe.blacklist=r8169 (some devices) Do not use the r8169 (wired network driver) module, use r8168 instead (r8168 is normally blacklisted).

Device Tags

Device tags are a legacy way of configuring the Puavo devices. In Puavo OS, tags are converted as puavo-conf parameters. Tags can be set via Puavo device settings to all device types other than boot servers. You can also set tags to all the devices under one school by editing the school settings.

Tag Functionality
autopilot:MODE:USERNAME:PASSWORD MODE ∊ {stress, smoke}. Set device to login automatically with a specified user account into a given test mode.
blacklist_bcmwl Blacklist the closed Broadcom wireless driver (bcmwl).
dconf_scaling_factor:NUM Set dconf-scaling-factor to NUM, where NUM is typically 0 or 1, but might be some other non-negative integer.
default_xsession:NAME Set the default xsession to NAME, which must be the basename of one of the .desktop files in /usr/share/xsessions directory.
desktop_background:FILEPATH Set path to default desktop wallpaper image file (inside the folder /usr/share/backgrounds)
disable-acpi-wakeup Turn of Acpi wakeups (fixes issues such as computer turning on randomly e.g. HP Elitebook 820)
enable_all_xsessions Enable selecting xsession via lightdm.
enable_webmenu_feedback Activate feedback form to the Log out screen on desktop
force_puavo_xrandr Forces the xrandr display settings set to the specific device. This will prevent gnome-settings-daemon from operation.
force_release_keys:KEYLIST Tell the kernel to force release of some keys on a keyboard. KEYLIST is a comma-separated list of keys. An example to fix some Lenovo Thinkpad volume keys: force_release_keys:a0,ae,b0
greeter_background:FILEPATH Set path to wallpaper image file (inside the folder /usr/share/backgrouds/puavo-greeter)
greeter_background_firstlogin:FILEPATH Set path to wallpaper image file (inside the folder /usr/share/backgrouds/puavo-greeter), but this is effective only when no logins have been done on this host (overrides greeter_background on first login). ((In some old versions this tag was named greeter_firstlogin_background:FILEPATH, this is deprecated.)).
greeter_background_mode:dynamic Set dynamic login screen wallpaper defined by the tag greeter_background
greeter_background_mode:random Set random login screen wallpaper from the folder /usr/share/backgrounds/puavo-greeter
greeter_background_random_subdir:DIRPATH Set path to the folder with wallpaper images to be shown randomly. DIRPATH is a path under the folder /usr/share/backgrounds/puavo-greeter.
hitachicalib:NUM1:NUM2:NUM3:NUM4 Set xinput_calibrator values for Hitachi Projectors.
imagedownload-rate-limit:[0-9]+k Set the device image download rate (rdiff-file) when updating the system versio on a laptop or a WiFi Base Station. Example: imagedownload-rate-limit:5000k 5000kbytes/s
intel-backlight käyttää X:n jotain erillistä tapaa säätää taustavalon kirkkautta, jos acpin kautta toimiva normitapa ei toimi huonon acpin takia
jetpipe Enables activating jetpipe on all the device types (normally this is active only on fat clients and thin clients)
no-disable-acpi-wakeup Opposite behaviour to the no-disable-acpi-wakeup tag
no-intel-backlight
no-wifi-powersave Disables power save for wifi interfaces.
no_blacklist_bcmwl Do not blacklist the closed Broadcom wireless driver (bcmwl).
no_force_puavo_xrandr Opposite behaviour to the tag force_puavo_xrandr.
no_nokeyboard Revert the effect of nokeyboard.
no_nolidsuspend Revert the effect of nolidsuspend.
no_noremoteassistanceapplet Revert the effect of noremoteassistanceapplet.
no_nosuspend Revert the effect of no_suspend.
no_sharedir_mounts Do not mount homedir and shared folders from the bootserver to the laptop.
no_trusty_xorg_drivers Revert the effect of trusty_xorg_drivers.
no_use_remotemounts Do not mount homedir and shared folders from the bootserver to the laptop. Only in images after 29.1.2015
noaccel Disables graphics card 2D acceleration. Meant to be used with Epatec etc-3800 thin client that have stability issues with e.g. Wine (Windows applications).
nokeyboard Activate functionality so that device can be used without a keyboard (show virtual keyboard, maybe other things).
nolidsuspend Do not suspend when laptop lid closes. User can not override this setting.
noremoteassistanceapplet Do not run puavo-remote-assistance-applet.
nosuspend Do not allow suspending a device, no matter what.
rm_session_service:SERVICE_NAME Remove desktop session service SERVICE_NAME.
rm_system_service:SERVICE_NAME Remove system service SERVICE_NAME.
smartboard Use smartboard software on this host (use smartboard license).
use_puavo_printer_permissions Configure printers according to settings in Puavo. Default on fatclients, but with this tag also applies other types of hosts.
use_remotemounts Mount homedir and shared folders from the boot server to the laptop. Even if no_use_remotemounts is defined, only in images after 29.1.2015
use_sharedir_mounts Mount homedir and shared folders from the boot server to the laptop.
wlanap_channels:CH[:CH]... Manual channel selection. Radios will be tuned to given channels. If the list has fewer channels than the host has radios, leftover radios will use automatic channel selection.
wlanap_reconf_interval:SECONDS Make puavo-wlanap reconfigure itself (i.e. fetch tags etc. from Puavo and apply new values) once per every SECONDS.
wlanap_report_interval:SECONDS Make puavo-wlanap report its status to the controller once per every SECONDS.
wlanap_tx_power:VALUE VALUE ∊ {0..20} dBm. Set WiFi base station transmit power (dBm) for all frequencies.
wlanap_tx_power_2g:VALUE VALUE ∊ {0..20} dBm. Set WiFi base station transmit power (dBm) for 2.4GHz frequencies. Has precedence over wlanap_tx_power tag.
wlanap_tx_power_5g:VALUE VALUE ∊ {0..20} dBm. Set WiFi base station transmit power (dBm) for 5GHz frequencies. Has precedence over wlanap_tx_power tag.
wlanap_rssi_kick_interval:VALUE VALUE ∊ {0..INF} seconds. Defines how often stations with low RSSI will be kicked.
wlanap_rssi_kick_threshold:VALUE VALUE ∊ {-99..-1} dBm. Kick stations with RSSI lower than VALUE.
xbacklight:VALUE VALUE ∊ {0..100}. Set display backlight brightness to defined percentage value.
autopoweron Wake-on-LAN at 07:30 local time.
no_autopoweron Revert the effect of autopoweron.