--
You received this message because you are subscribed to the Google Groups "munki-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to munki-dev+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
This is exactly what I am looking for.Will be testing shortly
--
I'm still not totally sold on the utility of this,
but I wanted to try a task to direct folks to the MacAppStore with a simple
It works... but it's weird to have a 45 second+ lag after folks click 'run' (since we are configured to check for Apple Updates through Munki as well), and I even feel like pre-flight tasks could potentially be unnecessary in this use case. It's not very 'onDemand' if a relatively unrelated progress bar appears and seemingly out of nowhere an action occurs.
Allister
On Monday, March 16, 2015 at 9:58:59 AM UTC-4, gregn...@mac.com wrote:In case you missed it this weekend, I've started a feature branch to explore a possible new Munki feature, which would allow Munki admins to create items for optional_installs that performed some task as root. Together with Managed Software Center, this would allow admins to offer tools for their users to perform basic maintenance tasks (that would usually require root or admin permissions) on their own.Initial stab at this functionality is here:This adds support for a new key in pkginfo items: "OnDemand" (I'm not married to this key name and may well change it in the future)If this key is present:1) The item is never considered installed. This means Munki will never think it needs to be removed, either (because it's not installed!)2) If you add such an item to a regular manifest:a) In managed_installs: you are likely to be sad, as Munki will try to install it over and over and over since it is never considered installed.b) In managed_updates: it will never be updated, since it is never considered installed.c) in managed_uninstalls: it will never be removed, since it is never considered installed.d) In optional_installs: congratulations, you made the only functional choice!3) If chosen by the user for optional install, the item will be installed, then removed from the local SelfServeManifest, making it available for a future re-install.This new functionality implies some additional nice-to-have changes, for example, specifying some alternate labels for the "Install" button in MSC.app; perhaps something like "Run" and "Running"; of course that then opens localization issues...But this is a start. Play with it and give me your feedback.-Greg
This is exactly what I've been looking for in Munki. I've dabbled a bit on getting a "Self Help" package to work (can't get it to stay "uninstalled") for users to be able to trouble shoot their own computer before calling IT. I know JAMF has a feature like this (got to help implement that at my last job), and would be an excellent feature to have in Munki.Here's the Install Script I was working on, just the start of a few cleanup items I thought would be useful (runs the default cleanup logs and caches, repairs disk permissions and reboot, so basically your typical "Have you tried turning it off and on again"):#!/bin/bashperiodic daily weekly monthlydiskutil reapirPermissions /osascript -e 'tell application "System Events" to restart'Looking forward to testing out the OnDemand feature, I think it could be amazingly useful. Thanks.
There are several things to be decided.
Currently the button for all items reads "Install" . When you click it, the label changes to "Cancel" and a "Downloading" message is displayed near the button.
Once the item is downloaded, the button label changes to "Installing".
Any alternate labeling would at a minimum, have to specify replacements for "Install" and "Installing".
Additionally, MSC.app is localized into many languages, and the "Install" and "Installing" labels are currently translated into the appropriate languages. It would be expected, I think, to have this localization happen for the replacement labels.
Finally, it's not clear to me that a hard-coded replacement label of "Run/Running" or "Execute/Executing" will be appropriate for all possible uses of the on-demand tasks; one might expect that the admin would be able to choose a set of labels.
Given that this will any items will trigger managedsoftwareupdate, we still need to keep the Cancel and Downloading phrases. While it may not make as much sense, the behavior is consistent to the user. I agree that "Install" could be changed to "Execute" and "Installing" can be "Executing".
Additionally, MSC.app is localized into many languages, and the "Install" and "Installing" labels are currently translated into the appropriate languages. It would be expected, I think, to have this localization happen for the replacement labels.Sounds about right.
Finally, it's not clear to me that a hard-coded replacement label of "Run/Running" or "Execute/Executing" will be appropriate for all possible uses of the on-demand tasks; one might expect that the admin would be able to choose a set of labels.
Sounds like a lot of unneeded overhead. :). While it would possibly be a nice feature to dynamically change the labels at a pkginfo level, I can't see myself using the feature that often.
I haven’t tested it yet, want to… but as for labels, I’d use Run and Running. Execute sounds like a Dalek.Now if it can be Exterminate and play a sound file when you click it, then THAT!Dynamic labels sounds weird in a multi-lingual environment like my own. Would we have to make the labels in both languages, possibly the third if I ever get around to localizing for that language (last I checked, Munki didn’t have Hebrew).
Sorry, I guess I’m confused, or didn’t state it properly.I imagine that if we have a singular phrase, then that can be handled with the standard localization, allowing our users to select their own language.If we have a custom phrase that can be enacted in the pkginfo file, would that not be unilingual; literally saying what is typed in the key?
That was my entire point: if we allow admins to specify custom terms/labels/phrases, we'd also need to provide localization options.
Am 27.03.2015 um 18:06 schrieb Gregory Neagle <gregn...@mac.com>:That was my entire point: if we allow admins to specify custom terms/labels/phrases, we'd also need to provide localization options.We don't have those localization options for the categories as well. But - in fact - they would be great!
This sounds rather complex...An admin would need to create an array of some kind for every pkginfo file if they wanted to support this with localization.
Doesn't it make more sense to just have a set of phrases (as currently setup)?
--
On Apr 15, 2015, at 12:07 PM, Stefan Vogel <s.v...@powersolutions.ch> wrote:Dear GregI tried to test it now, as you have implemented it to the builds. I guess the one from today has it? Nevertheless, I downloaded it, installed it on my testclient (thanks to Allister!). On the server I produced the following pkg-plist, which shows up on the client as optional install, but as "already installed". So unfortunately, I can't install it again. Is there something else that needs to be configured?o-o Stefan<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict><key>catalogs</key><array><string>basecatalog</string></array><key>category</key><string>Support</string><key>description</key><string>Bereinigung von Logs. Reparatur von Zugriffsrechten. Neustart.</string><key>display_name</key><string>Systemputz</string><key>name</key><string>Systemputz</string><key>OnDemand</key><string></string>
<key>minimum_os_version</key><string>10.7.0</string><key>installer_type</key><string>nopkg</string><key>postinstall_script</key><string>#!/bin/bash# Run default cleanup logs and cachesperiodic daily weekly monthly# Repair permissions on bootvolumediskutil reapirPermissions /# Restart macosascript -e 'tell application "System Events" to restart'</string><key>version</key><string>1.0</string></dict></plist>
On Apr 15, 2015, at 2:36 PM, Stefan Vogel <s.v...@powersolutions.ch> wrote:Perfect - thanks. I extended the script a bit with caches cleaning and a restart definition in the pkg info manifest. So far so good.One problem I encountered is a preinstall info, that I intended to set in the pkg info manifest. As soon as it is set, I can't hit the installation button on the client. It looks like installable, but there is no effect when clicking on it.
o-o Stefan