├── .gitignore
├── Duo
├── Duo Desktop.png
├── Duo Desktop.install.recipe
├── Duo Desktop.pkg.recipe
├── Duo Desktop.download.recipe
└── Duo Desktop.munki.recipe
├── README.md
├── CarbonCopyCloner
├── CarbonCopyCloner.install.recipe
├── CarbonCopyCloner.download.recipe
├── CarbonCopyCloner.pkg.recipe
└── CarbonCopyCloner.munki.recipe
├── osquery
├── osquery.install.recipe
├── osquery.munki.recipe
└── osquery.download.recipe
├── GoogleTalkPlugin
├── GoogleTalkPlugin.download.recipe
├── MunkiPkginfoReceiptsEditor.py
└── GoogleTalkPlugin.munki.recipe
├── Zulip
├── Zulip.download.recipe
└── Zulip.munki.recipe
├── Colloquy
├── Colloquy.download.recipe
└── Colloquy.munki.recipe
├── ParallelsDesktop
├── ParallelsDesktop.download.recipe
├── ParallelsDesktop6.munki.recipe
├── ParallelsDesktop7.munki.recipe
├── ParallelsDesktop8.munki.recipe
├── ParallelsDesktop9.munki.recipe
├── ParallelsDesktop10.munki.recipe
└── ParallelsURLProvider.py
├── Panic
├── Coda.download.recipe
├── Unison.download.recipe
├── Coda2.download.recipe
├── Transmit.download.recipe
├── Coda.munki.recipe
├── Coda2.munki.recipe
├── Unison.munki.recipe
└── Transmit.munki.recipe
├── Handbrake
├── Handbrake.download.recipe
└── Handbrake.munki.recipe
├── PrimateLabs
├── Wiinote.download.recipe
├── Geekbench2.download.recipe
├── Wiinote.munki.recipe
└── Geekbench2.munki.recipe
├── CoRD
├── CoRD.download.recipe
└── CoRD.munki.recipe
├── SublimeText
├── SublimeText3.install.recipe
├── SublimeText2.download.recipe
├── SublimeText2.munki.recipe
├── SublimeText3.munki.recipe
└── SublimeText3.download.recipe
├── Chicken
├── Chicken.download.recipe
└── Chicken.munki.recipe
├── Xslimmer
├── Xslimmer.download.recipe
└── Xslimmer.munki.recipe
├── InsomniaX
├── InsomniaX.download.recipe
└── InsomniaX.munki.recipe
├── gfxCardStatus
├── gfxCardStatus.download.recipe
└── gfxCardStatus.munki.recipe
├── Mailplane
├── Mailplane3.download.recipe
└── Mailplane3.munki.recipe
├── smcFanControl
├── smcFanControl.download.recipe
└── smcFanControl.munki.recipe
├── StarTech
├── StarTechUSBDriver.download.recipe
└── StarTechUSBDriver.munki.recipe
├── Opera
├── Opera.install.recipe
├── Opera.download.recipe
├── Opera.munki.recipe
└── OperaURLProvider.py
├── Quicksilver
├── Quicksilver.munki.recipe
└── Quicksilver.download.recipe
├── SurteesStudios
├── Bartender.download.recipe
└── Bartender.munki.recipe
├── Twocanoes
├── WinclonePro4.download.recipe
└── WinclonePro4.munki.recipe
├── CordlessDog
├── Stay.munki.recipe
└── Stay.download.recipe
├── Bjango
├── iStatMenus.munki.recipe
└── iStatMenus.download.recipe
├── iTerm2
├── iTerm2.download.recipe
└── iTerm2.munki.recipe
├── Github
├── Github.download.recipe
├── Github.munki.recipe
└── GitHub.pkg.recipe
├── FileZilla
├── FileZilla.munki.recipe
├── FileZilla_nightly.munki.recipe
├── FileZilla_nightly.download.recipe
├── FileZilla_beta.munki.recipe
└── FileZilla.download.recipe
├── StuffIt
├── StuffItExpander.download.recipe
└── StuffItExpander.munki.recipe
├── Flux
├── Flux.download.recipe
└── Flux.munki.recipe
├── Caffeine
├── Caffeine.munki.recipe
└── Caffeine.download.recipe
└── LICENSE
/.gitignore:
--------------------------------------------------------------------------------
1 | # .DS_Store files!
2 | .DS_Store
3 |
4 | # don't track .pyc files
5 | *.pyc
6 |
--------------------------------------------------------------------------------
/Duo/Duo Desktop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/autopkg/keeleysam-recipes/HEAD/Duo/Duo Desktop.png
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | keeleysam's cookbook of autopkg recipes
2 | =======
3 |
4 | These are a bunch of recipes for [autopkg](https://github.com/autopkg/autopkg/)!
5 |
6 | You can add this repo to your autopkg install with the following command:
7 | ```
8 | autopkg repo-add keeleysam-recipes
9 | ```
10 |
--------------------------------------------------------------------------------
/Duo/Duo Desktop.install.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.keeleysam.recipes.install.DuoDesktop
7 | Input
8 |
9 | NAME
10 | Duo Desktop
11 |
12 | ParentRecipe
13 | com.keeleysam.recipes.download.DuoDesktop
14 | Process
15 |
16 |
17 | Processor
18 | Installer
19 | Arguments
20 |
21 | pkg_path
22 | %pathname%
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/CarbonCopyCloner/CarbonCopyCloner.install.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Installs the current release version of CarbonCopyCloner.
7 | Identifier
8 | com.github.keeleysam.recipes.CarbonCopyCloner.install
9 | Input
10 |
11 | NAME
12 | CarbonCopyCloner
13 |
14 | MinimumVersion
15 | 0.4.0
16 | ParentRecipe
17 | com.github.keeleysam.recipes.pkg.CarbonCopyCloner
18 | Process
19 |
20 |
21 | Processor
22 | Installer
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Duo/Duo Desktop.pkg.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.keeleysam.recipes.pkg.DuoDesktop
7 | Input
8 |
9 | NAME
10 | Duo Desktop
11 |
12 | ParentRecipe
13 | com.keeleysam.recipes.download.DuoDesktop
14 | Process
15 |
16 |
17 | Processor
18 | PkgCopier
19 | Arguments
20 |
21 | source_pkg
22 | %pathname%
23 | pkg_path
24 | %RECIPE_CACHE_DIR%/%NAME%-%version%.pkg
25 |
26 |
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/osquery/osquery.install.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Installs the current release version of osquery.
7 | Identifier
8 | com.github.keeleysam.recipes.osquery.install
9 | Input
10 |
11 | NAME
12 | osquery
13 |
14 | MinimumVersion
15 | 0.5.0
16 | ParentRecipe
17 | com.github.keeleysam.recipes.osquery.download
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | pkg_path
24 | %pathname%
25 |
26 | Processor
27 | Installer
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/GoogleTalkPlugin/GoogleTalkPlugin.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.autopkg.download.GoogleTalkPlugin
7 | Input
8 |
9 | DOWNLOAD_URL
10 | https://dl.google.com/googletalk/googletalkplugin/GoogleVoiceAndVideoSetup.dmg
11 | NAME
12 | GoogleTalkPlugin
13 |
14 | Process
15 |
16 |
17 | Arguments
18 |
19 | filename
20 | %NAME%.dmg
21 | url
22 | %DOWNLOAD_URL%
23 |
24 | Processor
25 | URLDownloader
26 |
27 |
28 | Arguments
29 |
30 | Processor
31 | EndOfCheckPhase
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/Zulip/Zulip.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads latest Zulip disk image.
7 | Identifier
8 | com.github.keeleysam.recipes.zulip.download
9 | Input
10 |
11 | DOWNLOAD_URL
12 | https://zulip.com/dist/apps/mac/Zulip-latest.dmg
13 | NAME
14 | Zulip
15 |
16 | MinimumVersion
17 | 0.2.0
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | filename
24 | %NAME%.dmg
25 | url
26 | %DOWNLOAD_URL%
27 |
28 | Processor
29 | URLDownloader
30 |
31 |
32 | Processor
33 | EndOfCheckPhase
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/Colloquy/Colloquy.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Colloquy.
7 | Identifier
8 | com.github.keeleysam.recipes.Colloquy.download
9 | Input
10 |
11 | NAME
12 | Colloquy
13 | SPARKLE_FEED_URL
14 | https://colloquy.info/update.php?rss
15 |
16 | MinimumVersion
17 | 0.2.0
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Processor
31 | URLDownloader
32 |
33 |
34 | Processor
35 | EndOfCheckPhase
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/ParallelsDesktop/ParallelsDesktop.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current installation package for the specified version of Parallels Desktop. Specify the version via the NAME variable.
7 | Identifier
8 | com.github.keeleysam.recipes.ParallelsDesktop.download
9 | Input
10 |
11 | MinimumVersion
12 | 0.2.1
13 | Process
14 |
15 |
16 | Arguments
17 |
18 | product_name
19 | %NAME%
20 |
21 | Processor
22 | ParallelsURLProvider
23 |
24 |
25 | Arguments
26 |
27 | url
28 | %url%
29 |
30 | Processor
31 | URLDownloader
32 |
33 |
34 | Processor
35 | EndOfCheckPhase
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/Panic/Coda.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Coda.
7 | Identifier
8 | com.github.keeleysam.autopkg.download.Coda
9 | Input
10 |
11 | NAME
12 | Coda
13 | SPARKLE_FEED_URL
14 | https://www.panic.com/updates/coda/coda-en.xml
15 |
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | appcast_url
22 | %SPARKLE_FEED_URL%
23 |
24 | Processor
25 | SparkleUpdateInfoProvider
26 |
27 |
28 | Arguments
29 |
30 | filename
31 | %NAME%.zip
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Panic/Unison.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Unison.
7 | Identifier
8 | com.github.keeleysam.autopkg.download.Unison
9 | Input
10 |
11 | NAME
12 | Unison
13 | SPARKLE_FEED_URL
14 | https://www.panic.com/updates/unison/unison-en.xml
15 |
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | appcast_url
22 | %SPARKLE_FEED_URL%
23 |
24 | Processor
25 | SparkleUpdateInfoProvider
26 |
27 |
28 | Arguments
29 |
30 | filename
31 | %NAME%.zip
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Handbrake/Handbrake.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of HandBrake.
7 | Identifier
8 | com.github.keeleysam.autopkg.download.HandBrake
9 | Input
10 |
11 | NAME
12 | HandBrake
13 | SPARKLE_FEED_URL
14 | https://handbrake.fr/appcast.x86_64.xml
15 |
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | appcast_url
22 | %SPARKLE_FEED_URL%
23 |
24 | Processor
25 | SparkleUpdateInfoProvider
26 |
27 |
28 | Arguments
29 |
30 | filename
31 | %NAME%.dmg
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Panic/Coda2.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Coda 2.
7 | Identifier
8 | com.github.keeleysam.autopkg.download.Coda2
9 | Input
10 |
11 | NAME
12 | Coda2
13 | SPARKLE_FEED_URL
14 | https://www.panic.com/updates/update.php?appName=Coda%202
15 |
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | appcast_url
22 | %SPARKLE_FEED_URL%
23 |
24 | Processor
25 | SparkleUpdateInfoProvider
26 |
27 |
28 | Arguments
29 |
30 | filename
31 | %NAME%.zip
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/PrimateLabs/Wiinote.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Wiinote.
7 | Identifier
8 | com.github.keeleysam.autopkg.download.Wiinote
9 | Input
10 |
11 | NAME
12 | Wiinote
13 | SPARKLE_FEED_URL
14 | https://www.primatelabs.com/appcast/wiinote.xml
15 |
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | appcast_url
22 | %SPARKLE_FEED_URL%
23 |
24 | Processor
25 | SparkleUpdateInfoProvider
26 |
27 |
28 | Arguments
29 |
30 | filename
31 | %NAME%.zip
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Panic/Transmit.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Transmit.
7 | Identifier
8 | com.github.keeleysam.autopkg.download.Transmit
9 | Input
10 |
11 | NAME
12 | Transmit
13 | SPARKLE_FEED_URL
14 | https://www.panic.com/updates/transmit/transmit-en.xml
15 |
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | appcast_url
22 | %SPARKLE_FEED_URL%
23 |
24 | Processor
25 | SparkleUpdateInfoProvider
26 |
27 |
28 | Arguments
29 |
30 | filename
31 | %NAME%.zip
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/PrimateLabs/Geekbench2.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Geekbench 2.
7 | Identifier
8 | com.github.keeleysam.autopkg.download.Geekbench2
9 | Input
10 |
11 | NAME
12 | Geekbench2
13 | SPARKLE_FEED_URL
14 | https://www.primatelabs.com/appcast/geekbench2.xml
15 |
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | appcast_url
22 | %SPARKLE_FEED_URL%
23 |
24 | Processor
25 | SparkleUpdateInfoProvider
26 |
27 |
28 | Arguments
29 |
30 | filename
31 | %NAME%.zip
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/CoRD/CoRD.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of CoRD.
7 | Identifier
8 | com.github.keeleysam.recipes.CoRD.download
9 | Input
10 |
11 | NAME
12 | CoRD
13 | SPARKLE_FEED_URL
14 | http://cord.sourceforge.net/sparkle.xml
15 |
16 | MinimumVersion
17 | 0.2.0
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%.zip
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/SublimeText/SublimeText3.install.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads and installs the current release version of Sublime Text 3.
7 | Identifier
8 | com.github.keeleysam.recipes.SublimeText.SublimeText3.install
9 | Input
10 |
11 | NAME
12 | SublimeText3
13 |
14 | MinimumVersion
15 | 0.5.1
16 | ParentRecipe
17 | com.github.keeleysam.recipes.SublimeText.SublimeText3.download
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | dmg_path
24 | %pathname%
25 | items_to_copy
26 |
27 |
28 | destination_path
29 | /Applications/
30 | source_item
31 | Sublime Text.app
32 |
33 |
34 |
35 | Processor
36 | InstallFromDMG
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/Chicken/Chicken.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of 🐔.
7 | Identifier
8 | com.github.keeleysam.recipes.Chicken.download
9 | Input
10 |
11 | NAME
12 | Chicken
13 | SPARKLE_FEED_URL
14 | http://chicken.sourceforge.net/chicken.xml
15 |
16 | MinimumVersion
17 | 0.2.0
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%.dmg
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/Xslimmer/Xslimmer.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Xslimmer.
7 | Identifier
8 | com.github.keeleysam.recipes.Xslimmer.download
9 | Input
10 |
11 | NAME
12 | Xslimmer
13 | SPARKLE_FEED_URL
14 | https://www.xslimmer.com/releases.xml
15 |
16 | MinimumVersion
17 | 0.2.0
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%.zip
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/InsomniaX/InsomniaX.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of InsomniaX.
7 | Identifier
8 | com.github.keeleysam.recipes.InsomniaX.download
9 | Input
10 |
11 | NAME
12 | InsomniaX
13 | SPARKLE_FEED_URL
14 | http://insomniax.semaja2.net/appcast.xml
15 |
16 | MinimumVersion
17 | 0.2.1
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%.tgz
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/gfxCardStatus/gfxCardStatus.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of gfxCardStatus.
7 | Identifier
8 | com.github.keeleysam.recipes.gfxCardStatus.download
9 | Input
10 |
11 | NAME
12 | gfxCardStatus
13 | SPARKLE_FEED_URL
14 | https://gfx.io/appcast.xml
15 |
16 | MinimumVersion
17 | 0.2.1
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%.zip
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/Mailplane/Mailplane3.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Mailplane3.
7 | Identifier
8 | com.github.keeleysam.recipes.Mailplane.3.download
9 | Input
10 |
11 | NAME
12 | Mailplane3
13 | SPARKLE_FEED_URL
14 | https://update.mailplaneapp.com/appcast.php?appName=Mailplane%203
15 |
16 | MinimumVersion
17 | 0.2.1
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%.tbz
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/smcFanControl/smcFanControl.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of smcFanControl.
7 | Identifier
8 | com.github.keeleysam.recipes.smcFanControl.download
9 | Input
10 |
11 | NAME
12 | smcFanControl
13 | SPARKLE_FEED_URL
14 | https://www.eidac.de/smcfancontrol/smcfancontrol.xml
15 |
16 | MinimumVersion
17 | 0.2.1
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%.zip
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/SublimeText/SublimeText2.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Sublime Text 2.
7 | Identifier
8 | com.github.keeleysam.recipes.SublimeText.SublimeText2.download
9 | Input
10 |
11 | NAME
12 | SublimeText2
13 | SPARKLE_FEED_URL
14 | https://www.sublimetext.com/updates/2/stable/appcast_osx.xml
15 |
16 | MinimumVersion
17 | 0.2.1
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%.dmg
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/Zulip/Zulip.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the latest Zulip disk image and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.zulip.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Dropbox/Zulip
13 | NAME
14 | Zulip
15 | pkginfo
16 |
17 | catalogs
18 |
19 | production
20 |
21 | category
22 | Social Networking
23 | developer
24 | Dropbox
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.0
33 | ParentRecipe
34 | com.github.keeleysam.recipes.zulip.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | pkg_path
41 | %pathname%
42 | repo_subdirectory
43 | %MUNKI_REPO_SUBDIR%
44 |
45 | Processor
46 | MunkiImporter
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/StarTech/StarTechUSBDriver.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the latest version of StarTechUSBDriver.
7 | Identifier
8 | com.github.keeleysam-recipes.download.StarTechUSBDriver
9 | Input
10 |
11 | DOWNLOAD_URL
12 | https://sgcdn.startech.com/005329/media/sets/ax88179_Mac_Drivers/[ASIX88179]%20Mac%20USB%20Network%20Adapter.zip
13 | NAME
14 | StarTechUSBDriver
15 | FILENAME
16 | AX88179_178A
17 |
18 | MinimumVersion
19 | 0.6.1
20 | Process
21 |
22 |
23 | Arguments
24 |
25 | filename
26 | %NAME%.zip
27 | url
28 | %DOWNLOAD_URL%
29 |
30 | Processor
31 | URLDownloader
32 |
33 |
34 | Processor
35 | EndOfCheckPhase
36 |
37 |
38 | Arguments
39 |
40 | archive_path
41 | %pathname%
42 |
43 | Processor
44 | Unarchiver
45 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/Opera/Opera.install.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads latest Opera disk image and installs it.
7 | Identifier
8 | com.github.keeleysam.recipes.Opera.install
9 | Input
10 |
11 | RELEASE
12 | latest
13 | LOCALE
14 | en_US
15 |
16 | MinimumVersion
17 | 0.4.0
18 | ParentRecipe
19 | com.github.keeleysam.recipes.Opera.download
20 | Process
21 |
22 |
23 | Processor
24 | InstallFromDMG
25 | Arguments
26 |
27 | dmg_path
28 | %pathname%
29 | items_to_copy
30 |
31 |
32 | source_item
33 | Opera.app
34 | destination_path
35 | /Applications/
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Handbrake/Handbrake.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of HandBrake and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.autopkg.munki.HandBrake
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/HandBrake
13 | NAME
14 | HandBrake
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | HandBrake is an open-source, GPL-licensed, multiplatform, multithreaded video transcoder.
23 | display_name
24 | HandBrake
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | ParentRecipe
32 | com.github.keeleysam.autopkg.download.HandBrake
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | pkg_path
39 | %pathname%
40 | repo_subdirectory
41 | %MUNKI_REPO_SUBDIR%
42 |
43 | Processor
44 | MunkiImporter
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/Quicksilver/Quicksilver.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.Quicksilver.munki
7 | Input
8 |
9 | MUNKI_REPO_SUBDIR
10 | apps/Quicksilver
11 | NAME
12 | Quicksilver
13 | pkginfo
14 |
15 | catalogs
16 |
17 | testing
18 |
19 | description
20 | Quicksilver is a fast and free Mac OS X productivity application that gives you the power to control your Mac quickly and elegantly. Quicksilver learns your habits, making your everyday chores simple and efficient.
21 | display_name
22 | Quicksilver
23 | name
24 | %NAME%
25 | unattended_install
26 |
27 |
28 |
29 | MinimumVersion
30 | 0.2.1
31 | ParentRecipe
32 | com.github.keeleysam.recipes.Quicksilver.download
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | pkg_path
39 | %pathname%
40 | repo_subdirectory
41 | %MUNKI_REPO_SUBDIR%
42 |
43 | Processor
44 | MunkiImporter
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/SurteesStudios/Bartender.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Bartender.
7 | Identifier
8 | com.github.keeleysam.recipes.surteesstudios.Bartender.download
9 | Input
10 |
11 | NAME
12 | Bartender
13 | SPARKLE_FEED_URL
14 | https://www.macbartender.com/B2/updates/Appcast.xml
15 | USER_AGENT
16 | Mozilla/5.0
17 |
18 | MinimumVersion
19 | 0.2.0
20 | Process
21 |
22 |
23 | Arguments
24 |
25 | appcast_request_headers
26 |
27 | user-agent
28 | %USER_AGENT%
29 |
30 | appcast_url
31 | %SPARKLE_FEED_URL%
32 |
33 | Processor
34 | SparkleUpdateInfoProvider
35 |
36 |
37 | Arguments
38 |
39 | request_headers
40 |
41 | user-agent
42 | %USER_AGENT%
43 |
44 |
45 | Processor
46 | URLDownloader
47 |
48 |
49 | Processor
50 | EndOfCheckPhase
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/Chicken/Chicken.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Gets the current release version of Chicken and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.Chicken.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Chicken
13 | NAME
14 | Chicken
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Chicken is a VNC client for Mac OS X. A VNC client allows remote access to another computer over the network. Chicken is based on Chicken of the VNC.
23 | display_name
24 | Chicken
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.0
33 | ParentRecipe
34 | com.github.keeleysam.recipes.Chicken.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | pkg_path
41 | %pathname%
42 | repo_subdirectory
43 | %MUNKI_REPO_SUBDIR%
44 |
45 | Processor
46 | MunkiImporter
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/osquery/osquery.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.osquery.munki
7 | Input
8 |
9 | MUNKI_REPO_SUBDIR
10 | utilities/osquery
11 | NAME
12 | osquery
13 | pkginfo
14 |
15 | catalogs
16 |
17 | production
18 |
19 | category
20 | Utilities
21 | description
22 | osquery allows you to easily ask questions about your Linux and OSX infrastructure. Whether your goal is intrusion detection, infrastructure reliability, or compliance, osquery gives you the ability to empower and inform a broad set of organizations within your company.
23 | developer
24 | Facebook
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | ParentRecipe
32 | com.github.keeleysam.recipes.osquery.download
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | pkg_path
39 | %pathname%
40 | repo_subdirectory
41 | %MUNKI_REPO_SUBDIR%
42 |
43 | Processor
44 | MunkiImporter
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/SublimeText/SublimeText2.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Sublime Text 2 and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.SublimeText.SublimeText2.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/SublimeText/SublimeText2
13 | NAME
14 | SublimeText2
15 | pkginfo
16 |
17 | catalogs
18 |
19 | production
20 |
21 | category
22 | Developer Tools
23 | description
24 | Sublime Text is an advanced text editor for OS X.
25 | display_name
26 | Sublime Text 2
27 | name
28 | %NAME%
29 | unattended_install
30 |
31 |
32 |
33 | MinimumVersion
34 | 0.2.1
35 | ParentRecipe
36 | com.github.keeleysam.recipes.SublimeText.SublimeText2.download
37 | Process
38 |
39 |
40 | Arguments
41 |
42 | pkg_path
43 | %pathname%
44 | repo_subdirectory
45 | %MUNKI_REPO_SUBDIR%
46 |
47 | Processor
48 | MunkiImporter
49 |
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/SublimeText/SublimeText3.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Sublime Text 3 and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.SublimeText.SublimeText3.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/SublimeText/SublimeText3
13 | NAME
14 | SublimeText3
15 | pkginfo
16 |
17 | catalogs
18 |
19 | production
20 |
21 | category
22 | Developer Tools
23 | description
24 | Sublime Text is an advanced text editor for OS X.
25 | display_name
26 | Sublime Text 3
27 | name
28 | %NAME%
29 | unattended_install
30 |
31 |
32 |
33 | MinimumVersion
34 | 0.2.1
35 | ParentRecipe
36 | com.github.keeleysam.recipes.SublimeText.SublimeText3.download
37 | Process
38 |
39 |
40 | Arguments
41 |
42 | pkg_path
43 | %pathname%
44 | repo_subdirectory
45 | %MUNKI_REPO_SUBDIR%
46 |
47 | Processor
48 | MunkiImporter
49 |
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/osquery/osquery.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the latest version of Osquery from GitHub.
7 | Identifier
8 | com.github.keeleysam.recipes.osquery.download
9 | Input
10 |
11 | NAME
12 | osquery
13 | REPO
14 | osquery/osquery
15 |
16 | MinimumVersion
17 | 0.5.0
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | asset_regex
24 | .*\.pkg
25 | github_repo
26 | %REPO%
27 |
28 | Processor
29 | GitHubReleasesInfoProvider
30 |
31 |
32 | Processor
33 | URLDownloader
34 |
35 |
36 | Processor
37 | EndOfCheckPhase
38 |
39 |
40 | Arguments
41 |
42 | expected_authority_names
43 |
44 | Developer ID Installer: OSQUERY A Series of LF Projects, LLC (3522FA9PXF)
45 | Developer ID Certification Authority
46 | Apple Root CA
47 |
48 | input_path
49 | %pathname%
50 |
51 | Processor
52 | CodeSignatureVerifier
53 |
54 |
55 |
56 |
57 |
--------------------------------------------------------------------------------
/Twocanoes/WinclonePro4.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Winclone Pro 4. Requires user agent spoofing.
7 | Identifier
8 | com.github.keeleysam.recipes.Twocanoes.WinclonePro4.download
9 | Input
10 |
11 | NAME
12 | WinclonePro4
13 | SPARKLE_FEED_URL
14 | https://www.twocanoes.com/winclone/updates/winclone4-pro-software-updates.xml
15 | USER_AGENT
16 | Winclone Pro/4.1 Sparkle/313
17 |
18 | MinimumVersion
19 | 0.2.1
20 | Process
21 |
22 |
23 | Arguments
24 |
25 | appcast_request_headers
26 |
27 | user-agent
28 | %USER_AGENT%
29 |
30 | appcast_url
31 | %SPARKLE_FEED_URL%
32 |
33 | Processor
34 | SparkleUpdateInfoProvider
35 |
36 |
37 | Arguments
38 |
39 | filename
40 | %NAME%.zip
41 | request_headers
42 |
43 | user-agent
44 | %USER_AGENT%
45 |
46 |
47 | Processor
48 | URLDownloader
49 |
50 |
51 | Processor
52 | EndOfCheckPhase
53 |
54 |
55 |
56 |
57 |
--------------------------------------------------------------------------------
/CordlessDog/Stay.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Gets the current release version of Stay and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.Stay.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Cordless Dog/Stay
13 | NAME
14 | Stay
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | If you're fastidious about keeping your windows tidy, Stay is for you. Stay ensures that your windows are always where you want them to be, even as you connect and disconnect displays.
23 | display_name
24 | Stay
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.0
33 | ParentRecipe
34 | com.github.keeleysam.recipes.Stay.download
35 | Process
36 |
37 |
38 | Processor
39 | MunkiPkginfoMerger
40 |
41 |
42 | Arguments
43 |
44 | pkg_path
45 | %pathname%
46 | repo_subdirectory
47 | %MUNKI_REPO_SUBDIR%
48 |
49 | Processor
50 | MunkiImporter
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/ParallelsDesktop/ParallelsDesktop6.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current installation package for Parallels Desktop 6. Imports it into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.ParallelsDesktop6.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Parallels/ParallelsDesktop6
13 | NAME
14 | ParallelsDesktop6
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | display_name
22 | Parallels Desktop 6
23 | name
24 | %NAME%
25 | unattended_install
26 |
27 |
28 |
29 | MinimumVersion
30 | 0.2.1
31 | ParentRecipe
32 | com.github.keeleysam.recipes.ParallelsDesktop.download
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | additional_pkginfo
39 |
40 | description
41 | %description%
42 |
43 |
44 | Processor
45 | MunkiPkginfoMerger
46 |
47 |
48 | Arguments
49 |
50 | pkg_path
51 | %pathname%
52 | repo_subdirectory
53 | %MUNKI_REPO_SUBDIR%
54 |
55 | Processor
56 | MunkiImporter
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/ParallelsDesktop/ParallelsDesktop7.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current installation package for Parallels Desktop 7. Imports it into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.ParallelsDesktop7.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Parallels/ParallelsDesktop7
13 | NAME
14 | ParallelsDesktop7
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | display_name
22 | Parallels Desktop 7
23 | name
24 | %NAME%
25 | unattended_install
26 |
27 |
28 |
29 | MinimumVersion
30 | 0.2.1
31 | ParentRecipe
32 | com.github.keeleysam.recipes.ParallelsDesktop.download
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | additional_pkginfo
39 |
40 | description
41 | %description%
42 |
43 |
44 | Processor
45 | MunkiPkginfoMerger
46 |
47 |
48 | Arguments
49 |
50 | pkg_path
51 | %pathname%
52 | repo_subdirectory
53 | %MUNKI_REPO_SUBDIR%
54 |
55 | Processor
56 | MunkiImporter
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/ParallelsDesktop/ParallelsDesktop8.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current installation package for Parallels Desktop 8. Imports it into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.ParallelsDesktop8.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Parallels/ParallelsDesktop8
13 | NAME
14 | ParallelsDesktop8
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | display_name
22 | Parallels Desktop 8
23 | name
24 | %NAME%
25 | unattended_install
26 |
27 |
28 |
29 | MinimumVersion
30 | 0.2.1
31 | ParentRecipe
32 | com.github.keeleysam.recipes.ParallelsDesktop.download
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | additional_pkginfo
39 |
40 | description
41 | %description%
42 |
43 |
44 | Processor
45 | MunkiPkginfoMerger
46 |
47 |
48 | Arguments
49 |
50 | pkg_path
51 | %pathname%
52 | repo_subdirectory
53 | %MUNKI_REPO_SUBDIR%
54 |
55 | Processor
56 | MunkiImporter
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/Duo/Duo Desktop.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.keeleysam.recipes.download.DuoDesktop
7 | Input
8 |
9 | NAME
10 | Duo Desktop
11 |
12 | Process
13 |
14 |
15 | Processor
16 | URLTextSearcher
17 | Arguments
18 |
19 | url
20 | https://duo.com/docs/checksums#macos
21 | re_pattern
22 | href="https://dl.duosecurity.com/DuoDesktop-(\d+\.\d+\.\d+\.\d+)\.pkg"
23 | result_output_var_name
24 | version
25 |
26 |
27 |
28 | Processor
29 | URLDownloader
30 | Arguments
31 |
32 | url
33 | https://dl.duosecurity.com/DuoDesktop-%version%.pkg
34 |
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 | Arguments
42 |
43 | input_path
44 | %pathname%
45 | requirement
46 | anchor apple generic and identifier "com.duosecurity.duo-device-health" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = FNN8Z5JMFP)
47 |
48 | Processor
49 | CodeSignatureVerifier
50 |
51 |
52 |
53 |
54 |
--------------------------------------------------------------------------------
/Quicksilver/Quicksilver.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.Quicksilver.download
7 | Input
8 |
9 | DOWNLOAD_URL
10 | https://qs0.qsapp.com/plugins/download.php
11 | NAME
12 | Quicksilver
13 | USER_AGENT
14 | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/537.46.3 (KHTML, like Gecko) Version/6.1 Safari/537.46.3
15 |
16 | MinimumVersion
17 | 0.2.1
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | filename
24 | %NAME%.dmg
25 | request_headers
26 |
27 | user-agent
28 | %USER_AGENT%
29 |
30 | url
31 | %DOWNLOAD_URL%
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 | Arguments
42 |
43 | input_path
44 | %pathname%/Quicksilver.app
45 | requirement
46 | identifier "com.blacktree.Quicksilver" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = ATVCND8EAP
47 |
48 | Processor
49 | CodeSignatureVerifier
50 |
51 |
52 |
53 |
54 |
--------------------------------------------------------------------------------
/CordlessDog/Stay.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Stay.
7 | Identifier
8 | com.github.keeleysam.recipes.Stay.download
9 | Input
10 |
11 | NAME
12 | Stay
13 | SPARKLE_FEED_URL
14 | https://cordlessdog.com/stay/appcast.xml
15 |
16 | MinimumVersion
17 | 0.2.0
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%-%version%.dmg
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 | Arguments
44 |
45 | input_path
46 | %pathname%/Stay.app
47 | requirement
48 | identifier "com.cordlessdog.Stay" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = N87J278237
49 | strict_verification
50 |
51 |
52 | Processor
53 | CodeSignatureVerifier
54 |
55 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/SublimeText/SublimeText3.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Sublime Text 3.
7 | Identifier
8 | com.github.keeleysam.recipes.SublimeText.SublimeText3.download
9 | Input
10 |
11 | NAME
12 | SublimeText3
13 | SPARKLE_FEED_URL
14 | https://www.sublimetext.com/updates/3/stable/appcast_osx.xml
15 |
16 | MinimumVersion
17 | 0.5.1
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | appcast_url
24 | %SPARKLE_FEED_URL%
25 |
26 | Processor
27 | SparkleUpdateInfoProvider
28 |
29 |
30 | Arguments
31 |
32 | filename
33 | %NAME%.dmg
34 |
35 | Processor
36 | URLDownloader
37 |
38 |
39 | Processor
40 | EndOfCheckPhase
41 |
42 |
43 | Arguments
44 |
45 | input_path
46 | %pathname%/Sublime Text.app
47 | requirement
48 | identifier "com.sublimetext.3" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = Z6D26JE4Y4
49 |
50 | Processor
51 | CodeSignatureVerifier
52 |
53 |
54 |
55 |
56 |
--------------------------------------------------------------------------------
/Bjango/iStatMenus.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.Bjango.iStatMenus.munki
7 | Input
8 |
9 | MUNKI_REPO_SUBDIR
10 | apps/Bjango/iStatMenus
11 | NAME
12 | iStatMenus
13 | pkginfo
14 |
15 | catalogs
16 |
17 | production
18 |
19 | description
20 | iStat Menus is an advanced Mac system monitor, covering an enormous range of stats. It lives right in your Mac’s menubar, so detailed information is only ever a glance or single click away.
21 | display_name
22 | iStat Menus
23 | name
24 | %NAME%
25 | unattended_install
26 |
27 |
28 |
29 | MinimumVersion
30 | 0.2.1
31 | ParentRecipe
32 | com.github.keeleysam.recipes.Bjango.iStatMenus.download
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | dmg_path
39 | %RECIPE_CACHE_DIR%/%NAME%.dmg
40 | dmg_root
41 | %RECIPE_CACHE_DIR%/%NAME%
42 |
43 | Processor
44 | DmgCreator
45 |
46 |
47 | Arguments
48 |
49 | pkg_path
50 | %dmg_path%
51 | repo_subdirectory
52 | %MUNKI_REPO_SUBDIR%
53 |
54 | Processor
55 | MunkiImporter
56 |
57 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/iTerm2/iTerm2.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of iTerm 2.
7 | Identifier
8 | com.github.keeleysam.autopkg.download.iTerm2
9 | Input
10 |
11 | NAME
12 | iTerm2
13 | SPARKLE_FEED_URL
14 | https://iterm2.com/appcasts/final_new.xml
15 |
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | appcast_url
22 | %SPARKLE_FEED_URL%
23 |
24 | Processor
25 | SparkleUpdateInfoProvider
26 |
27 |
28 | Arguments
29 |
30 | filename
31 | %NAME%.zip
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 | Processor
42 | Unarchiver
43 |
44 |
45 | Arguments
46 |
47 | input_path
48 | %RECIPE_CACHE_DIR%/%NAME%/*.app
49 | requirement
50 | anchor apple generic and identifier "com.googlecode.iterm2" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = H7V7XYVQ7D)
51 |
52 | Processor
53 | CodeSignatureVerifier
54 |
55 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/Github/Github.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.GitHub.download
7 | Input
8 |
9 | DOWNLOAD_URL
10 | https://central.github.com/mac/latest
11 | NAME
12 | GitHub
13 |
14 | MinimumVersion
15 | 0.4.1
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | filename
22 | %NAME%.zip
23 | url
24 | %DOWNLOAD_URL%
25 |
26 | Processor
27 | URLDownloader
28 |
29 |
30 | Processor
31 | EndOfCheckPhase
32 |
33 |
34 | Arguments
35 |
36 | archive_path
37 | %pathname%
38 | destination_path
39 | %RECIPE_CACHE_DIR%/%NAME%
40 | purge_destination
41 |
42 |
43 | Processor
44 | Unarchiver
45 |
46 |
47 | Arguments
48 |
49 | input_path
50 | %RECIPE_CACHE_DIR%/%NAME%/GitHub Desktop.app
51 | requirement
52 | (identifier "com.github.GitHub" or identifier "com.github.GHAskPass") and anchor apple generic and certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = VEKTX9H2N7
53 |
54 | Processor
55 | CodeSignatureVerifier
56 |
57 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/FileZilla/FileZilla.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current installation package for FileZilla. Imports it into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.FileZilla.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/FileZilla
13 | NAME
14 | FileZilla
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | FileZilla is a fast and reliable cross-platform FTP, FTPS and SFTP client.
23 | display_name
24 | FileZilla
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 | RE_PATTERN
31 | <a href=\"(?P<url>http[s]?.*?(?P<filename>FileZilla_(?P<version>[\d.]+)_macos-x86.*?\.tar\.bz2).*?)\"
32 |
33 | MinimumVersion
34 | 1.0.0
35 | ParentRecipe
36 | com.github.keeleysam.recipes.FileZilla.download
37 | Process
38 |
39 |
40 | Arguments
41 |
42 | dmg_path
43 | %RECIPE_CACHE_DIR%/%NAME%.dmg
44 | dmg_root
45 | %RECIPE_CACHE_DIR%/%NAME%
46 |
47 | Processor
48 | DmgCreator
49 |
50 |
51 | Arguments
52 |
53 | pkg_path
54 | %dmg_path%
55 | repo_subdirectory
56 | %MUNKI_REPO_SUBDIR%
57 |
58 | Processor
59 | MunkiImporter
60 |
61 |
62 |
63 |
64 |
--------------------------------------------------------------------------------
/Opera/Opera.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads latest Opera disk image.
7 | Identifier
8 | com.github.keeleysam.recipes.Opera.download
9 | Input
10 |
11 | NAME
12 | Opera
13 |
14 | MinimumVersion
15 | 0.2.1
16 | Process
17 |
18 |
19 | Processor
20 | OperaURLProvider
21 |
22 |
23 | Arguments
24 |
25 | filename
26 | %NAME%.dmg
27 | url
28 | %url%
29 |
30 | Processor
31 | URLDownloader
32 |
33 |
34 | Processor
35 | CodeSignatureVerifier
36 | Arguments
37 |
38 | input_path
39 | %RECIPE_CACHE_DIR%/downloads/%NAME%.dmg/Opera.app
40 | requirement
41 | (identifier "com.operasoftware.Opera" or identifier "com.operasoftware.OperaNext" or identifier "com.operasoftware.OperaDeveloper" or identifier "com.operasoftware.OperaNightly" or identifier "com.operasoftware.OperaGX" or identifier "com.operasoftware.OperaGXNext" or identifier "com.operasoftware.OperaGXDeveloper" or identifier "com.operasoftware.OperaGXNightly" or identifier "com.operasoftware.OperaCrypto" or identifier "com.operasoftware.OperaCryptoNext" or identifier "com.operasoftware.OperaCryptoDeveloper" or identifier "com.operasoftware.OperaCryptoNightly") and (certificate leaf = H"cdf1c39967986616b6cd64c6bd04833a9cb7450d" or certificate leaf = H"89584386993936e6f38e64eed006f705f2570cbf")
42 |
43 |
44 |
45 | Processor
46 | EndOfCheckPhase
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/StuffIt/StuffItExpander.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.StuffItExpander.download
7 | Input
8 |
9 | NAME
10 | StuffItExpander
11 | SPARKLE_FEED_URL
12 | https://www.stuffit.com/update_rss/NEU/StuffItExpanderUpdates.xml
13 |
14 | MinimumVersion
15 | 0.2.1
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | appcast_url
22 | %SPARKLE_FEED_URL%
23 |
24 | Processor
25 | SparkleUpdateInfoProvider
26 |
27 |
28 | Processor
29 | URLDownloader
30 |
31 |
32 | Processor
33 | EndOfCheckPhase
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | input_path
52 | %RECIPE_CACHE_DIR%/%NAME%/StuffIt Expander.app
53 | requirement
54 | anchor apple generic and identifier "com.stuffit.StuffIt-Expander" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = "8B5RRXHB33")
55 |
56 | Processor
57 | CodeSignatureVerifier
58 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/StuffIt/StuffItExpander.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.StuffItExpander.munki
7 | Input
8 |
9 | MUNKI_REPO_SUBDIR
10 | apps/StuffIt/StuffItExpander
11 | NAME
12 | StuffItExpander
13 | pkginfo
14 |
15 | catalogs
16 |
17 | testing
18 |
19 | description
20 | Decompression utility for OS X.
21 | display_name
22 | StuffIt Expander
23 | name
24 | %NAME%
25 | unattended_install
26 |
27 |
28 |
29 | MinimumVersion
30 | 0.2.1
31 | ParentRecipe
32 | com.github.keeleysam.recipes.StuffItExpander.download
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Arguments
61 |
62 | pkg_path
63 | %dmg_path%
64 | repo_subdirectory
65 | %MUNKI_REPO_SUBDIR%
66 |
67 | Processor
68 | MunkiImporter
69 |
70 |
71 |
72 |
73 |
--------------------------------------------------------------------------------
/FileZilla/FileZilla_nightly.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current installation package for FileZilla nightly. Imports it into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.FileZilla.nightly.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/FileZilla/nightly
13 | NAME
14 | FileZilla_nightly
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | display_name
22 | FileZilla
23 | name
24 | %NAME%
25 | unattended_install
26 |
27 |
28 |
29 | MinimumVersion
30 | 0.2.0
31 | ParentRecipe
32 | com.github.keeleysam.recipes.FileZilla.nightly.download
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Arguments
61 |
62 | pkg_path
63 | %dmg_path%
64 | repo_subdirectory
65 | %MUNKI_REPO_SUBDIR%
66 |
67 | Processor
68 | MunkiImporter
69 |
70 |
71 |
72 |
73 |
--------------------------------------------------------------------------------
/Panic/Coda.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Coda and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.autopkg.munki.Coda
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Panic/Coda
13 | NAME
14 | Coda
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Web editor from Panic.
23 | display_name
24 | Coda
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | ParentRecipe
32 | com.github.keeleysam.autopkg.download.Coda
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Processor
61 | MunkiPkginfoMerger
62 |
63 |
64 | Arguments
65 |
66 | pkg_path
67 | %dmg_path%
68 | repo_subdirectory
69 | %MUNKI_REPO_SUBDIR%
70 |
71 | Processor
72 | MunkiImporter
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/Panic/Coda2.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Coda 2 and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.autopkg.munki.Coda2
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Panic/Coda2
13 | NAME
14 | Coda2
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Web editor from Panic.
23 | display_name
24 | Coda 2
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | ParentRecipe
32 | com.github.keeleysam.autopkg.download.Coda2
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Processor
61 | MunkiPkginfoMerger
62 |
63 |
64 | Arguments
65 |
66 | pkg_path
67 | %dmg_path%
68 | repo_subdirectory
69 | %MUNKI_REPO_SUBDIR%
70 |
71 | Processor
72 | MunkiImporter
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/GoogleTalkPlugin/MunkiPkginfoReceiptsEditor.py:
--------------------------------------------------------------------------------
1 | #!/usr/local/autopkg/python
2 |
3 | from __future__ import absolute_import
4 |
5 | from autopkglib import Processor, ProcessorError
6 | from plistlib import readPlist, writePlist
7 |
8 | __all__ = ["MunkiPkginfoReceiptsEditor"]
9 |
10 |
11 | class MunkiPkginfoReceiptsEditor(Processor):
12 | '''Modifies the receipts key in a Munki pkginfo.'''
13 |
14 | input_variables = {
15 | 'pkginfo_repo_path': {
16 | 'required': True,
17 | 'description': 'The repo path where the pkginfo was written.',
18 | },
19 | 'pkg_ids_set_optional_true': {
20 | 'required': True,
21 | 'description': 'Array of package IDs to turn optional for Munki',
22 | },
23 | }
24 | output_variables = {
25 | }
26 |
27 | description = __doc__
28 |
29 | def main(self):
30 | if len(self.env['pkginfo_repo_path']) < 1:
31 | self.output('empty pkginfo path')
32 | return
33 |
34 | pkginfo = readPlist(self.env['pkginfo_repo_path'])
35 |
36 | receipts_modified = []
37 | if 'receipts' in pkginfo.keys():
38 | for i, receipt in enumerate(pkginfo['receipts']):
39 | # made optional any pkginfos
40 | if receipt['packageid'] in self.env[
41 | 'pkg_ids_set_optional_true']:
42 | pkginfo['receipts'][i]['optional'] = True
43 | self.output(
44 | 'Setting package ID %s as optional' %
45 | receipt['packageid'])
46 | receipts_modified.append(receipt['packageid'])
47 | else:
48 | raise ProcessorError('pkginfo does not contain receipts key')
49 |
50 | if len(receipts_modified) > 0:
51 | self.output(
52 | 'Writing pkginfo to %s' %
53 | self.env['pkginfo_repo_path'])
54 | writePlist(pkginfo, self.env['pkginfo_repo_path'])
55 | else:
56 | self.output('No receipts modified, not writing pkginfo')
57 |
58 |
59 | if __name__ == '__main__':
60 | processor = MunkiPkginfoReceiptsEditor()
61 | processor.execute_shell()
62 |
--------------------------------------------------------------------------------
/Panic/Unison.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Unison and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.autopkg.munki.Unison
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Panic/Unison
13 | NAME
14 | Unison
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Usenet client from Panic.
23 | display_name
24 | Unison
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | ParentRecipe
32 | com.github.keeleysam.autopkg.download.Unison
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Processor
61 | MunkiPkginfoMerger
62 |
63 |
64 | Arguments
65 |
66 | pkg_path
67 | %dmg_path%
68 | repo_subdirectory
69 | %MUNKI_REPO_SUBDIR%
70 |
71 | Processor
72 | MunkiImporter
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/iTerm2/iTerm2.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of iTerm 2 and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.autopkg.munki.iTerm2
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/iTerm2
13 | NAME
14 | iTerm2
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Powerful alternative to Terminal.app.
23 | display_name
24 | iTerm2
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | ParentRecipe
32 | com.github.keeleysam.autopkg.download.iTerm2
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Processor
61 | MunkiPkginfoMerger
62 |
63 |
64 | Arguments
65 |
66 | pkg_path
67 | %dmg_path%
68 | repo_subdirectory
69 | %MUNKI_REPO_SUBDIR%
70 |
71 | Processor
72 | MunkiImporter
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/Panic/Transmit.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Transmit and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.autopkg.munki.Transmit
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Panic/Transmit
13 | NAME
14 | Transmit
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Graphical FTP client from Panic.
23 | display_name
24 | Transmit
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | ParentRecipe
32 | com.github.keeleysam.autopkg.download.Transmit
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Processor
61 | MunkiPkginfoMerger
62 |
63 |
64 | Arguments
65 |
66 | pkg_path
67 | %dmg_path%
68 | repo_subdirectory
69 | %MUNKI_REPO_SUBDIR%
70 |
71 | Processor
72 | MunkiImporter
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/PrimateLabs/Wiinote.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Wiinote and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.primatelabs.Wiinote.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/PrimateLabs/Wiinote
13 | NAME
14 | Wiinote
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Control Keynote with a Wiimote!
23 | display_name
24 | Wiinote
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | ParentRecipe
32 | com.github.keeleysam.autopkg.download.Wiinote
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Processor
61 | MunkiPkginfoMerger
62 |
63 |
64 | Arguments
65 |
66 | pkg_path
67 | %dmg_path%
68 | repo_subdirectory
69 | %MUNKI_REPO_SUBDIR%
70 |
71 | Processor
72 | MunkiImporter
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/PrimateLabs/Geekbench2.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Geekbench 2 and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.primatelabs.Geekbench2.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/PrimateLabs/Geekbench2
13 | NAME
14 | Geekbench2
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Comparative benchmarking tool.
23 | display_name
24 | Geekbench 2
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | ParentRecipe
32 | com.github.keeleysam.autopkg.download.Geekbench2
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Processor
61 | MunkiPkginfoMerger
62 |
63 |
64 | Arguments
65 |
66 | pkg_path
67 | %dmg_path%
68 | repo_subdirectory
69 | %MUNKI_REPO_SUBDIR%
70 |
71 | Processor
72 | MunkiImporter
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/GoogleTalkPlugin/GoogleTalkPlugin.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.GoogleTalkPlugin
7 | Input
8 |
9 | MUNKI_REPO_SUBDIR
10 | apps/Google/GoogleTalkPlugin
11 | NAME
12 | GoogleTalkPlugin
13 | pkginfo
14 |
15 | catalogs
16 |
17 | testing
18 |
19 | description
20 | Plugin for Google Hangouts and Gmail voice and video.
21 | display_name
22 | Google Talk Plugin
23 | installer_choices_xml
24 |
25 |
26 | attributeSetting
27 | 1
28 | choiceAttribute
29 | selected
30 | choiceIdentifier
31 | installer_choice_1
32 |
33 |
34 | attributeSetting
35 | 0
36 | choiceAttribute
37 | selected
38 | choiceIdentifier
39 | installer_choice_2
40 |
41 |
42 | name
43 | %NAME%
44 | unattended_install
45 |
46 |
47 |
48 | ParentRecipe
49 | com.github.keeleysam.autopkg.download.GoogleTalkPlugin
50 | Process
51 |
52 |
53 | Arguments
54 |
55 | pkg_path
56 | %pathname%
57 | repo_subdirectory
58 | %MUNKI_REPO_SUBDIR%
59 |
60 | Processor
61 | MunkiImporter
62 |
63 |
64 | Arguments
65 |
66 | pkg_ids_set_optional_true
67 |
68 | com.google.pkg.Keystone
69 |
70 |
71 | Processor
72 | MunkiPkginfoReceiptsEditor
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/Github/Github.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.GitHub.munki
7 | Input
8 |
9 | MUNKI_REPO_SUBDIR
10 | apps/GitHub
11 | NAME
12 | GitHub
13 | pkginfo
14 |
15 | catalogs
16 |
17 | testing
18 |
19 | description
20 | GUI application for GitHub.com
21 | display_name
22 | GitHub
23 | name
24 | %NAME%
25 | postinstall_script
26 | #!/bin/sh
27 | CLI_SOURCE="/Applications/GitHub.app/Contents/MacOS/github_cli"
28 | DEST_DIR="/usr/local/bin"
29 | if [ ! -x "${CLI_SOURCE}" ]; then
30 | exit 1
31 | fi
32 |
33 | if [ ! -d "${DEST_DIR}" ]; then
34 | /bin/mkdir -p "${DEST_DIR}"
35 | fi
36 |
37 | /bin/cp -f "${CLI_SOURCE}" "${DEST_DIR}/github"
38 |
39 | unattended_install
40 |
41 | uninstall_method
42 | uninstall_script
43 | uninstall_script
44 | #!/bin/sh
45 | /bin/rm -rf /Applications/GitHub.app
46 | /bin/rm -f /usr/local/bin/github
47 |
48 |
49 |
50 | MinimumVersion
51 | 0.2.1
52 | ParentRecipe
53 | com.github.keeleysam.recipes.GitHub.download
54 | Process
55 |
56 |
57 | Arguments
58 |
59 | dmg_path
60 | %RECIPE_CACHE_DIR%/%NAME%.dmg
61 | dmg_root
62 | %RECIPE_CACHE_DIR%/%NAME%
63 |
64 | Processor
65 | DmgCreator
66 |
67 |
68 | Arguments
69 |
70 | pkg_path
71 | %dmg_path%
72 | repo_subdirectory
73 | %MUNKI_REPO_SUBDIR%
74 |
75 | Processor
76 | MunkiImporter
77 |
78 |
79 |
80 |
81 |
--------------------------------------------------------------------------------
/InsomniaX/InsomniaX.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of InsomniaX and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.InsomniaX.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/InsomniaX
13 | NAME
14 | InsomniaX
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Mouse jiggler for OS X, can prevent sleep.
23 | display_name
24 | InsomniaX
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.1
33 | ParentRecipe
34 | com.github.keeleysam.recipes.InsomniaX.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | archive_path
41 | %pathname%
42 | destination_path
43 | %RECIPE_CACHE_DIR%/%NAME%
44 | purge_destination
45 |
46 |
47 | Processor
48 | Unarchiver
49 |
50 |
51 | Arguments
52 |
53 | dmg_path
54 | %RECIPE_CACHE_DIR%/%NAME%.dmg
55 | dmg_root
56 | %RECIPE_CACHE_DIR%/%NAME%
57 |
58 | Processor
59 | DmgCreator
60 |
61 |
62 | Processor
63 | MunkiPkginfoMerger
64 |
65 |
66 | Arguments
67 |
68 | pkg_path
69 | %dmg_path%
70 | repo_subdirectory
71 | %MUNKI_REPO_SUBDIR%
72 |
73 | Processor
74 | MunkiImporter
75 |
76 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/CoRD/CoRD.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of CoRD and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.CoRD.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/CoRD
13 | NAME
14 | CoRD
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | CoRD is a Mac OS X remote desktop client for Microsoft Windows computers using the RDP protocol.
23 | display_name
24 | CoRD
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.0
33 | ParentRecipe
34 | com.github.keeleysam.recipes.CoRD.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | archive_path
41 | %pathname%
42 | destination_path
43 | %RECIPE_CACHE_DIR%/%NAME%
44 | purge_destination
45 |
46 |
47 | Processor
48 | Unarchiver
49 |
50 |
51 | Arguments
52 |
53 | dmg_path
54 | %RECIPE_CACHE_DIR%/%NAME%.dmg
55 | dmg_root
56 | %RECIPE_CACHE_DIR%/%NAME%
57 |
58 | Processor
59 | DmgCreator
60 |
61 |
62 | Processor
63 | MunkiPkginfoMerger
64 |
65 |
66 | Arguments
67 |
68 | pkg_path
69 | %dmg_path%
70 | repo_subdirectory
71 | %MUNKI_REPO_SUBDIR%
72 |
73 | Processor
74 | MunkiImporter
75 |
76 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/Bjango/iStatMenus.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.github.keeleysam.recipes.Bjango.iStatMenus.download
7 | Input
8 |
9 | DOWNLOAD_URL
10 | https://download.bjango.com/istatmenus/
11 | NAME
12 | iStatMenus
13 | USER_AGENT
14 | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/536.28.10 (KHTML, like Gecko) Version/6.0.3 Safari/536.28.10
15 |
16 | MinimumVersion
17 | 0.2.1
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | filename
24 | %NAME%.zip
25 | request_headers
26 |
27 | user-agent
28 | %USER_AGENT%
29 |
30 | url
31 | %DOWNLOAD_URL%
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 | Arguments
42 |
43 | archive_path
44 | %pathname%
45 | destination_path
46 | %RECIPE_CACHE_DIR%/%NAME%
47 | purge_destination
48 |
49 |
50 | Processor
51 | Unarchiver
52 |
53 |
54 | Arguments
55 |
56 | input_path
57 | %RECIPE_CACHE_DIR%/%NAME%/iStat Menus.app
58 | requirement
59 | anchor apple generic and identifier "com.bjango.istatmenus" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = Y93TK974AT)
60 | strict_verification
61 |
62 |
63 | Processor
64 | CodeSignatureVerifier
65 |
66 |
67 |
68 |
69 |
--------------------------------------------------------------------------------
/Xslimmer/Xslimmer.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Xslimmer and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.Xslimmer.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | utilities/Xslimmer
13 | NAME
14 | Xslimmer
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Saves space by removing unused languages and architectures from applications.
23 | display_name
24 | Xslimmer
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.0
33 | ParentRecipe
34 | com.github.keeleysam.recipes.Xslimmer.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | archive_path
41 | %pathname%
42 | destination_path
43 | %RECIPE_CACHE_DIR%/%NAME%
44 | purge_destination
45 |
46 |
47 | Processor
48 | Unarchiver
49 |
50 |
51 | Arguments
52 |
53 | dmg_path
54 | %RECIPE_CACHE_DIR%/%NAME%.dmg
55 | dmg_root
56 | %RECIPE_CACHE_DIR%/%NAME%
57 |
58 | Processor
59 | DmgCreator
60 |
61 |
62 | Processor
63 | MunkiPkginfoMerger
64 |
65 |
66 | Arguments
67 |
68 | pkg_path
69 | %dmg_path%
70 | repo_subdirectory
71 | %MUNKI_REPO_SUBDIR%
72 |
73 | Processor
74 | MunkiImporter
75 |
76 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/smcFanControl/smcFanControl.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of smcFanControl and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.smcFanControl.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | utilities/smcFanControl
13 | NAME
14 | smcFanControl
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Allows monitoring and manual control of a Mac's interal fans.
23 | display_name
24 | smcFanControl
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.1
33 | ParentRecipe
34 | com.github.keeleysam.recipes.smcFanControl.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | archive_path
41 | %pathname%
42 | destination_path
43 | %RECIPE_CACHE_DIR%/%NAME%
44 | purge_destination
45 |
46 |
47 | Processor
48 | Unarchiver
49 |
50 |
51 | Arguments
52 |
53 | dmg_path
54 | %RECIPE_CACHE_DIR%/%NAME%.dmg
55 | dmg_root
56 | %RECIPE_CACHE_DIR%/%NAME%
57 |
58 | Processor
59 | DmgCreator
60 |
61 |
62 | Processor
63 | MunkiPkginfoMerger
64 |
65 |
66 | Arguments
67 |
68 | pkg_path
69 | %dmg_path%
70 | repo_subdirectory
71 | %MUNKI_REPO_SUBDIR%
72 |
73 | Processor
74 | MunkiImporter
75 |
76 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/Mailplane/Mailplane3.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Mailplane 3 and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.Mailplane.3.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Mailplane
13 | NAME
14 | Mailplane3
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | The best way to use Gmail on your Mac.
23 | display_name
24 | Mailplane 3
25 | minimum_os_version
26 | 10.7
27 | name
28 | %NAME%
29 | unattended_install
30 |
31 |
32 |
33 | MinimumVersion
34 | 0.2.1
35 | ParentRecipe
36 | com.github.keeleysam.recipes.Mailplane.3.download
37 | Process
38 |
39 |
40 | Arguments
41 |
42 | archive_path
43 | %pathname%
44 | destination_path
45 | %RECIPE_CACHE_DIR%/%NAME%
46 | purge_destination
47 |
48 |
49 | Processor
50 | Unarchiver
51 |
52 |
53 | Arguments
54 |
55 | dmg_path
56 | %RECIPE_CACHE_DIR%/%NAME%.dmg
57 | dmg_root
58 | %RECIPE_CACHE_DIR%/%NAME%
59 |
60 | Processor
61 | DmgCreator
62 |
63 |
64 | Processor
65 | MunkiPkginfoMerger
66 |
67 |
68 | Arguments
69 |
70 | pkg_path
71 | %dmg_path%
72 | repo_subdirectory
73 | %MUNKI_REPO_SUBDIR%
74 |
75 | Processor
76 | MunkiImporter
77 |
78 |
79 |
80 |
81 |
--------------------------------------------------------------------------------
/Twocanoes/WinclonePro4.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Winclone Pro 4 and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.Twocanoes.WinclonePro4.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Twocanoes/WinclonePro4
13 | NAME
14 | WinclonePro4
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Winclone Pro is a utility to image, clone, and restore Boot Camp partitions.
23 | display_name
24 | Winclone Pro 4
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.1
33 | ParentRecipe
34 | com.github.keeleysam.recipes.Twocanoes.WinclonePro4.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | archive_path
41 | %pathname%
42 | destination_path
43 | %RECIPE_CACHE_DIR%/%NAME%
44 | purge_destination
45 |
46 |
47 | Processor
48 | Unarchiver
49 |
50 |
51 | Arguments
52 |
53 | dmg_path
54 | %RECIPE_CACHE_DIR%/%NAME%.dmg
55 | dmg_root
56 | %RECIPE_CACHE_DIR%/%NAME%
57 |
58 | Processor
59 | DmgCreator
60 |
61 |
62 | Processor
63 | MunkiPkginfoMerger
64 |
65 |
66 | Arguments
67 |
68 | pkg_path
69 | %dmg_path%
70 | repo_subdirectory
71 | %MUNKI_REPO_SUBDIR%
72 |
73 | Processor
74 | MunkiImporter
75 |
76 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/Flux/Flux.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Flux.
7 | Identifier
8 | com.github.keeleysam.recipes.Flux.download
9 | Input
10 |
11 | NAME
12 | Flux
13 | DOWNLOAD_URL
14 | https://justgetflux.com/mac/Flux.zip
15 |
16 | MinimumVersion
17 | 0.2.0
18 | Process
19 |
20 |
21 | Processor
22 | URLDownloader
23 | Arguments
24 |
25 | filename
26 | %NAME%.zip
27 | url
28 | %DOWNLOAD_URL%
29 |
30 |
31 |
32 | Processor
33 | EndOfCheckPhase
34 |
35 |
36 | Processor
37 | Unarchiver
38 | Arguments
39 |
40 | archive_path
41 | %pathname%
42 | destination_path
43 | %RECIPE_CACHE_DIR%/%NAME%
44 | purge_destination
45 |
46 |
47 |
48 |
49 | Processor
50 | CodeSignatureVerifier
51 | Arguments
52 |
53 | input_path
54 | %RECIPE_CACHE_DIR%/%NAME%/Flux.app
55 | requirement
56 | anchor apple generic and identifier "org.herf.Flux" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = VZKSA7H9J9)
57 |
58 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/FileZilla/FileZilla_nightly.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the most recent nightly build of FileZilla for Mac.
7 |
8 | Valid values for ARCH include:
9 | - "x86_64" (default, Intel)
10 | - "aarch64" (Apple Silicon)
11 | Note the architecture values are not the same as the FileZilla stable recipe.
12 |
13 | Identifier
14 | com.github.keeleysam.recipes.FileZilla.nightly.download
15 | Input
16 |
17 | NAME
18 | FileZilla_nightly
19 | ARCH
20 | x86_64
21 |
22 | MinimumVersion
23 | 1.1
24 | Process
25 |
26 |
27 | Arguments
28 |
29 | re_pattern
30 | href="(/nightlies/[\d-]+/%ARCH%-apple-darwin[\d\.]+/FileZilla\d+\.app\.tar\.bz2)"
31 | url
32 | https://filezilla-project.org/nightly.php
33 |
34 | Processor
35 | URLTextSearcher
36 |
37 |
38 | Arguments
39 |
40 | url
41 | https://filezilla-project.org/%match%
42 | filename
43 | %NAME%.tar.bz2
44 |
45 | Processor
46 | URLDownloader
47 |
48 |
49 | Processor
50 | EndOfCheckPhase
51 |
52 |
53 | Processor
54 | Unarchiver
55 | Arguments
56 |
57 | purge_destination
58 |
59 |
60 |
61 |
62 | Processor
63 | CodeSignatureVerifier
64 | Arguments
65 |
66 | input_path
67 | %RECIPE_CACHE_DIR%/%NAME%/FileZilla.app
68 | requirement
69 | identifier "org.filezilla-project.filezilla" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = "5VPGKXL75N"
70 |
71 |
72 |
73 |
74 |
75 |
--------------------------------------------------------------------------------
/gfxCardStatus/gfxCardStatus.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of gfxCardStatus and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.gfxCardStatus.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | utilities/gfxCardStatus
13 | NAME
14 | gfxCardStatus
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | gfxCardStatus is an unobtrusive menu bar app for OS X that allows MacBook Pro users to see which apps are affecting their battery life by using the more power-hungry graphics.
23 | display_name
24 | gfxCardStatus
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.1
33 | ParentRecipe
34 | com.github.keeleysam.recipes.gfxCardStatus.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | archive_path
41 | %pathname%
42 | destination_path
43 | %RECIPE_CACHE_DIR%/%NAME%
44 | purge_destination
45 |
46 |
47 | Processor
48 | Unarchiver
49 |
50 |
51 | Arguments
52 |
53 | dmg_path
54 | %RECIPE_CACHE_DIR%/%NAME%.dmg
55 | dmg_root
56 | %RECIPE_CACHE_DIR%/%NAME%
57 |
58 | Processor
59 | DmgCreator
60 |
61 |
62 | Processor
63 | MunkiPkginfoMerger
64 |
65 |
66 | Arguments
67 |
68 | pkg_path
69 | %dmg_path%
70 | repo_subdirectory
71 | %MUNKI_REPO_SUBDIR%
72 |
73 | Processor
74 | MunkiImporter
75 |
76 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/Flux/Flux.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Flux and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.Flux.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Flux
13 | NAME
14 | Flux
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | f.lux makes your computer screen look like the room you're in, all the time. When the sun sets, it makes your computer look like your indoor lights. In the morning, it makes things look like sunlight again.
23 |
24 | Tell f.lux what kind of lighting you have, and where you live. Then forget about it. f.lux will do the rest, automatically.
25 | display_name
26 | f.lux
27 | name
28 | %NAME%
29 | unattended_install
30 |
31 |
32 |
33 | MinimumVersion
34 | 0.2.0
35 | ParentRecipe
36 | com.github.keeleysam.recipes.Flux.download
37 | Process
38 |
39 |
40 | Processor
41 | DmgCreator
42 | Arguments
43 |
44 | dmg_path
45 | %RECIPE_CACHE_DIR%/%NAME%.dmg
46 | dmg_root
47 | %RECIPE_CACHE_DIR%/%NAME%
48 |
49 |
50 |
51 | Processor
52 | MunkiImporter
53 | Arguments
54 |
55 | pkg_path
56 | %dmg_path%
57 | repo_subdirectory
58 | %MUNKI_REPO_SUBDIR%
59 |
60 |
61 |
62 |
63 |
64 |
--------------------------------------------------------------------------------
/Colloquy/Colloquy.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Gets the current release version of Colloquy and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.Colloquy.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Colloquy
13 | NAME
14 | Colloquy
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Traditionally, chat clients on the Mac have been anything but glamorous. Colloquy is an advanced IRC, SILC and ICB client which aims to fill this void. By adhering to Mac OS X interface conventions, Colloquy has the look and feel of a quality Mac application.
23 | display_name
24 | Colloquy
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.0
33 | ParentRecipe
34 | com.github.keeleysam.recipes.Colloquy.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | archive_path
41 | %pathname%
42 | destination_path
43 | %RECIPE_CACHE_DIR%/%NAME%
44 | purge_destination
45 |
46 |
47 | Processor
48 | Unarchiver
49 |
50 |
51 | Arguments
52 |
53 | dmg_path
54 | %RECIPE_CACHE_DIR%/%NAME%.dmg
55 | dmg_root
56 | %RECIPE_CACHE_DIR%/%NAME%
57 |
58 | Processor
59 | DmgCreator
60 |
61 |
62 | Processor
63 | MunkiPkginfoMerger
64 |
65 |
66 | Arguments
67 |
68 | pkg_path
69 | %dmg_path%
70 | repo_subdirectory
71 | %MUNKI_REPO_SUBDIR%
72 |
73 | Processor
74 | MunkiImporter
75 |
76 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/Github/GitHub.pkg.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads latest Github app and builds a package.
7 | Identifier
8 | com.github.keeleysam.recipes.pkg.GitHub
9 | Input
10 |
11 | NAME
12 | GitHub
13 |
14 | ParentRecipe
15 | com.github.keeleysam.recipes.GitHub.download
16 | Process
17 |
18 |
19 | Arguments
20 |
21 | pkgdirs
22 |
23 | Applications
24 | 0775
25 |
26 | pkgroot
27 | %RECIPE_CACHE_DIR%/%NAME%
28 |
29 | Processor
30 | PkgRootCreator
31 |
32 |
33 | Arguments
34 |
35 | archive_path
36 | %pathname%
37 | destination_path
38 | %RECIPE_CACHE_DIR%/%NAME%/Applications
39 | purge_destination
40 |
41 |
42 | Processor
43 | Unarchiver
44 |
45 |
46 | Arguments
47 |
48 | input_plist_path
49 | %RECIPE_CACHE_DIR%/%NAME%/Applications/GitHub.app/Contents/Info.plist
50 | plist_version_key
51 | CFBundleVersion
52 |
53 | Processor
54 | Versioner
55 |
56 |
57 | Arguments
58 |
59 | pkg_request
60 |
61 | chown
62 |
63 |
64 | group
65 | admin
66 | path
67 | Applications
68 | user
69 | root
70 |
71 |
72 | id
73 | com.github.GitHub
74 | options
75 | purge_ds_store
76 | pkgname
77 | %NAME%-%version%
78 | version
79 | %version%
80 |
81 |
82 | Processor
83 | PkgCreator
84 |
85 |
86 |
87 |
88 |
--------------------------------------------------------------------------------
/FileZilla/FileZilla_beta.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current installation package for FileZilla. Imports it into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.FileZilla.beta.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/FileZilla/beta
13 | NAME
14 | FileZilla_beta
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | display_name
22 | FileZilla
23 | name
24 | %NAME%
25 | unattended_install
26 |
27 |
28 |
29 | MinimumVersion
30 | 1.1
31 | ParentRecipe
32 | com.github.keeleysam.recipes.FileZilla.download
33 | Process
34 |
35 |
36 | Processor
37 | DeprecationWarning
38 | Arguments
39 |
40 | warning_message
41 | As of December 2024, FileZilla betas are not available for download. Consider switching to the FileZilla_nightly recipes in this repo. This recipe is deprecated and will be removed in the future.
42 |
43 |
44 |
45 | Arguments
46 |
47 | archive_path
48 | %pathname%
49 | destination_path
50 | %RECIPE_CACHE_DIR%/%NAME%
51 | purge_destination
52 |
53 |
54 | Processor
55 | Unarchiver
56 |
57 |
58 | Arguments
59 |
60 | dmg_path
61 | %RECIPE_CACHE_DIR%/%NAME%.dmg
62 | dmg_root
63 | %RECIPE_CACHE_DIR%/%NAME%
64 |
65 | Processor
66 | DmgCreator
67 |
68 |
69 | Arguments
70 |
71 | pkg_path
72 | %dmg_path%
73 | repo_subdirectory
74 | %MUNKI_REPO_SUBDIR%
75 |
76 | Processor
77 | MunkiImporter
78 |
79 |
80 |
81 |
82 |
--------------------------------------------------------------------------------
/Opera/Opera.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the latest Opera disk image and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.Opera.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Opera
13 | NAME
14 | Opera
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Opera products enable more than 350 million internet consumers to discover and connect with the content and services that matter most to them, no matter what device, network or location. In turn, we help advertisers reach the audiences that build value for their businesses. Opera also delivers products and services to more than 120 operators around the world, enabling them to provide a faster, more economical and better network experience to their subscribers.
23 | display_name
24 | Opera
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.0
33 | ParentRecipe
34 | com.github.keeleysam.recipes.Opera.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | input_plist_path
41 | %RECIPE_CACHE_DIR%/downloads/Opera.dmg/Opera.app/Contents/Info.plist
42 | plist_version_key
43 | CFBundleVersion
44 |
45 | Processor
46 | Versioner
47 |
48 |
49 | Arguments
50 |
51 | additional_pkginfo
52 |
53 | version
54 | %version%
55 |
56 |
57 | Processor
58 | MunkiPkginfoMerger
59 |
60 |
61 | Arguments
62 |
63 | pkg_path
64 | %pathname%
65 | repo_subdirectory
66 | %MUNKI_REPO_SUBDIR%
67 |
68 | Processor
69 | MunkiImporter
70 |
71 |
72 |
73 |
74 |
--------------------------------------------------------------------------------
/Caffeine/Caffeine.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the latest version of Caffeine and imports it into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.Caffeine.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/%NAME%
13 | NAME
14 | Caffeine-%OS_VERSION_DOWNLOAD%
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Caffeine is a tiny open source program that puts an icon in the right side of your menubar. Click it to prevent your Mac from automatically going to sleep, dimming the screen or starting screen savers.
23 | developer
24 | Dominic Rodemer
25 | display_name
26 | Caffeine
27 | name
28 | %NAME%
29 | unattended_install
30 |
31 | unattended_uninstall
32 |
33 |
34 |
35 | MinimumVersion
36 | 2.7
37 | ParentRecipe
38 | com.github.keeleysam.recipes.Caffeine.download
39 | Process
40 |
41 |
42 | Arguments
43 |
44 | dmg_path
45 | %RECIPE_CACHE_DIR%/%NAME%.dmg
46 | dmg_root
47 | %RECIPE_CACHE_DIR%/%NAME%
48 |
49 | Processor
50 | DmgCreator
51 |
52 |
53 | Arguments
54 |
55 | pkg_path
56 | %dmg_path%
57 | repo_subdirectory
58 | %MUNKI_REPO_SUBDIR%
59 |
60 | Processor
61 | MunkiImporter
62 |
63 |
64 |
65 |
66 |
--------------------------------------------------------------------------------
/SurteesStudios/Bartender.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Gets the current release version of Bartender and imports into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.surteesstudios.Bartender.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Surtees Studios/Bartender
13 | NAME
14 | Bartender
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Bartender lets you organize your Menu Bar Apps, by hiding them, rearranging them, or moving them to the Bartenders Bar. You can display the full menu bar, set options to have Menu Bar Apps show in the menu bar when they are updating, or have them always visible in the Bartenders Bar. There are loads of ways to configure Bartender to perform as you wish. Give it a go and find out.
23 | name
24 | %NAME%
25 | unattended_install
26 |
27 |
28 |
29 | MinimumVersion
30 | 0.2.0
31 | ParentRecipe
32 | com.github.keeleysam.recipes.surteesstudios.Bartender.download
33 | Process
34 |
35 |
36 | Arguments
37 |
38 | archive_path
39 | %pathname%
40 | destination_path
41 | %RECIPE_CACHE_DIR%/%NAME%
42 | purge_destination
43 |
44 |
45 | Processor
46 | Unarchiver
47 |
48 |
49 | Arguments
50 |
51 | dmg_path
52 | %RECIPE_CACHE_DIR%/%NAME%.dmg
53 | dmg_root
54 | %RECIPE_CACHE_DIR%/%NAME%
55 |
56 | Processor
57 | DmgCreator
58 |
59 |
60 | Processor
61 | MunkiPkginfoMerger
62 |
63 |
64 | Arguments
65 |
66 | pkg_path
67 | %dmg_path%
68 | repo_subdirectory
69 | %MUNKI_REPO_SUBDIR%
70 |
71 | Processor
72 | MunkiImporter
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/Caffeine/Caffeine.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the latest version of Caffeine.
7 |
8 | For the OS_VERSION_DOWNLOAD variable please use:
9 | - "sonoma"
10 | - "ventura"
11 | - "monterey"
12 | Identifier
13 | com.github.keeleysam.recipes.Caffeine.download
14 | Input
15 |
16 | NAME
17 | Caffeine-%OS_VERSION_DOWNLOAD%
18 | OS_VERSION_DOWNLOAD
19 | monterey
20 |
21 | MinimumVersion
22 | 2.7
23 | Process
24 |
25 |
26 | Arguments
27 |
28 | filename
29 | %NAME%.zip
30 | url
31 | https://www.caffeine-app.net/download/%OS_VERSION_DOWNLOAD%/
32 |
33 | Processor
34 | URLDownloader
35 |
36 |
37 | Processor
38 | EndOfCheckPhase
39 |
40 |
41 | Arguments
42 |
43 | archive_path
44 | %pathname%
45 | destination_path
46 | %RECIPE_CACHE_DIR%/%NAME%
47 | purge_destination
48 |
49 |
50 | Processor
51 | Unarchiver
52 |
53 |
54 | Arguments
55 |
56 | input_path
57 | %RECIPE_CACHE_DIR%/%NAME%/Caffeine.app
58 | requirement
59 | anchor apple generic and identifier "net.domzilla.caffeine" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = "568T6RKXH7")
60 |
61 | Processor
62 | CodeSignatureVerifier
63 |
64 |
65 |
66 |
67 |
--------------------------------------------------------------------------------
/CarbonCopyCloner/CarbonCopyCloner.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of Carbon Copy Cloner.
7 |
8 | The VERSION key can be overridden with (at the time of writing), three values:
9 | - latest (which is the v6 latest)
10 | - latestbeta (latest v6 beta)
11 | - ccc5 (the last release of v5)
12 |
13 | Identifier
14 | com.github.keeleysam.recipes.CarbonCopyCloner.download
15 | Input
16 |
17 | NAME
18 | CarbonCopyCloner
19 | VERSION
20 | latest
21 |
22 | MinimumVersion
23 | 0.3.1
24 | Process
25 |
26 |
27 | Processor
28 | URLDownloader
29 | Arguments
30 |
31 | filename
32 | %NAME%.zip
33 | url
34 | https://bombich.scdn1.secure.raxcdn.com/software/download_ccc.php?v=%VERSION%
35 |
36 |
37 |
38 | Processor
39 | EndOfCheckPhase
40 |
41 |
42 | Processor
43 | Unarchiver
44 | Arguments
45 |
46 | archive_path
47 | %pathname%
48 | destination_path
49 | %RECIPE_CACHE_DIR%/downloads/Applications
50 | purge_destination
51 |
52 |
53 |
54 |
55 | Processor
56 | CodeSignatureVerifier
57 | Arguments
58 |
59 | input_path
60 | %RECIPE_CACHE_DIR%/downloads/Applications/Carbon Copy Cloner.app
61 | requirement
62 | certificate root = H"611e5b662c593a08ff58d14ae22452d198df6c60" and certificate leaf[subject.O] = "Bombich Software"* and identifier "com.bombich.ccc"
63 |
64 |
65 |
66 |
67 |
68 |
--------------------------------------------------------------------------------
/ParallelsDesktop/ParallelsDesktop9.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current installation package for Parallels Desktop 9. Imports it into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.ParallelsDesktop9.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Parallels/ParallelsDesktop9
13 | NAME
14 | ParallelsDesktop9
15 | PATH
16 | Parallels Desktop.app
17 | pkginfo
18 |
19 | catalogs
20 |
21 | testing
22 |
23 | display_name
24 | Parallels Desktop 9
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.1
33 | ParentRecipe
34 | com.github.keeleysam.recipes.ParallelsDesktop.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | additional_pkginfo
41 |
42 | description
43 | %description%
44 |
45 |
46 | Processor
47 | MunkiPkginfoMerger
48 |
49 |
50 | Arguments
51 |
52 | destination_path
53 | %RECIPE_CACHE_DIR%/%NAME%.dmg
54 | source_path
55 | %pathname%
56 |
57 | Processor
58 | Copier
59 |
60 |
61 | Arguments
62 |
63 | faux_root
64 | %RECIPE_CACHE_DIR%/%NAME%
65 | installs_item_paths
66 |
67 | /Applications/%PATH%
68 |
69 |
70 | Processor
71 | MunkiInstallsItemsCreator
72 |
73 |
74 | Arguments
75 |
76 | munkiimport_appname
77 | %PATH%
78 | pkg_path
79 | %RECIPE_CACHE_DIR%/%NAME%.dmg
80 | repo_subdirectory
81 | %MUNKI_REPO_SUBDIR%
82 |
83 | Processor
84 | MunkiImporter
85 |
86 |
87 |
88 |
89 |
--------------------------------------------------------------------------------
/Duo/Duo Desktop.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Identifier
6 | com.keeleysam.recipes.munki.DuoDesktop
7 | Input
8 |
9 | MUNKI_REPO_SUBDIR
10 | apps/%NAME%
11 | NAME
12 | Duo Desktop
13 | pkginfo
14 |
15 | catalogs
16 |
17 | production
18 |
19 | developer
20 | Duo Security, Inc.
21 | display_name
22 | Duo Desktop
23 | name
24 | %NAME%
25 | preinstall_script
26 | #!/bin/bash
27 |
28 | # If running macOS 11+ then write out this file to allow installation to proceed.
29 | # Needs MDM to deliver a cert profile, as per: https://duo.com/docs/device-health
30 | #
31 | # Get darwin version, pinched, with <33 from: https://stackoverflow.com/a/39499208
32 | # Arguably a cleaner way to detect OS.
33 |
34 | CREATEDEVICEHEALTHDIRECTORY="/Library/Application Support/Duo/Duo Device Health"
35 | DISABLECERT="/Library/Application Support/Duo/Duo Device Health/DisableMacOS11CertManagement"
36 |
37 | if [[ ${OSTYPE:6} -ge 21 ]]
38 | then
39 | /bin/mkdir -p "$CREATEDEVICEHEALTHDIRECTORY"
40 | /usr/bin/touch "$DISABLECERT"
41 | fi
42 | unattended_install
43 |
44 |
45 |
46 | ParentRecipe
47 | com.keeleysam.recipes.download.DuoDesktop
48 | Process
49 |
50 |
51 | Arguments
52 |
53 | additional_pkginfo
54 |
55 | installs
56 |
57 |
58 | CFBundleShortVersionString
59 | %version%
60 | path
61 | /Applications/Duo Desktop.app
62 | type
63 | application
64 | version_comparison_key
65 | CFBundleShortVersionString
66 |
67 |
68 |
69 |
70 | Processor
71 | MunkiPkginfoMerger
72 |
73 |
74 | Arguments
75 |
76 | pkg_path
77 | %pathname%
78 | repo_subdirectory
79 | %MUNKI_REPO_SUBDIR%
80 |
81 | Processor
82 | MunkiImporter
83 |
84 |
85 |
86 |
87 |
--------------------------------------------------------------------------------
/CarbonCopyCloner/CarbonCopyCloner.pkg.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current release version of CarbonCopyCloner and builds a package.
7 | Identifier
8 | com.github.keeleysam.recipes.pkg.CarbonCopyCloner
9 | Input
10 |
11 | NAME
12 | CarbonCopyCloner
13 |
14 | MinimumVersion
15 | 0.3.1
16 | ParentRecipe
17 | com.github.keeleysam.recipes.CarbonCopyCloner.download
18 | Process
19 |
20 |
21 | Arguments
22 |
23 | pkgdirs
24 |
25 | Applications
26 | 0775
27 |
28 | pkgroot
29 | %RECIPE_CACHE_DIR%/%NAME%
30 |
31 | Processor
32 | PkgRootCreator
33 |
34 |
35 | Arguments
36 |
37 | archive_path
38 | %pathname%
39 | destination_path
40 | %pkgroot%/Applications
41 | purge_destination
42 |
43 |
44 | Processor
45 | Unarchiver
46 |
47 |
48 | Arguments
49 |
50 | input_plist_path
51 | %pkgroot%/Applications/Carbon Copy Cloner.app/Contents/Info.plist
52 | plist_version_key
53 | CFBundleShortVersionString
54 |
55 | Comment
56 | Get version from the app
57 | Processor
58 | Versioner
59 |
60 |
61 | Arguments
62 |
63 | pkg_request
64 |
65 | chown
66 |
67 |
68 | group
69 | admin
70 | path
71 | Applications
72 | user
73 | root
74 |
75 |
76 | id
77 | com.bombich.ccc
78 | options
79 | purge_ds_store
80 | pkgname
81 | %NAME%-%version%
82 | version
83 | %version%
84 |
85 |
86 | Processor
87 | PkgCreator
88 |
89 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/Opera/OperaURLProvider.py:
--------------------------------------------------------------------------------
1 | #!/usr/local/autopkg/python
2 | #
3 | # Copyright 2014 Nick Gamewell
4 | #
5 | # Licensed under the Apache License, Version 2.0 (the "License");
6 | # you may not use this file except in compliance with the License.
7 | # You may obtain a copy of the License at
8 | #
9 | # http://www.apache.org/licenses/LICENSE-2.0
10 | #
11 | # Unless required by applicable law or agreed to in writing, software
12 | # distributed under the License is distributed on an "AS IS" BASIS,
13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 | # See the License for the specific language governing permissions and
15 | # limitations under the License.
16 |
17 | from __future__ import absolute_import
18 |
19 | import re
20 |
21 | from autopkglib import Processor, ProcessorError, URLGetter, APLooseVersion
22 |
23 | __all__ = ["OperaURLProvider"]
24 |
25 |
26 | BASE_URL = "https://get.geo.opera.com/ftp/pub/opera/desktop/"
27 |
28 |
29 | class OperaURLProvider(URLGetter):
30 | """Provides a download URL for the latest Opera release."""
31 |
32 | input_variables = {
33 | "base_url": {"required": False, "description": "Default is %s" % BASE_URL,},
34 | }
35 | output_variables = {
36 | "url": {"description": "URL to the latest Opera release.",},
37 | "version": {"description": "Version of the latest Opera release.",},
38 | }
39 | description = __doc__
40 |
41 | def get_opera_url(self, url):
42 | version = None
43 |
44 | # Get list of links from directory listing
45 | page = self.download(url).decode('utf-8')
46 | links = re.findall(r'', page)
47 | latest = APLooseVersion("0.0.0")
48 | for link in links:
49 | if link == "../":
50 | continue
51 | link = link.rstrip("/")
52 | if latest < APLooseVersion(link):
53 | latest = APLooseVersion(link)
54 |
55 |
56 | # Obtain and return the dmg download URL and version
57 | url += str(latest) + "/mac/"
58 | page = self.download(url).decode('utf-8')
59 | links = re.findall(r'', page)
60 | for link in links:
61 | if ".dmg" in link:
62 | url += link
63 | return url, str(latest)
64 |
65 | def main(self):
66 | """Find and return a download URL"""
67 | base_url = self.env.get("base_url", BASE_URL)
68 | self.env["url"], self.env["version"] = self.get_opera_url(base_url)
69 | self.output("Found URL %s" % self.env["url"])
70 |
71 |
72 | if __name__ == "__main__":
73 | processor = OperaURLProvider()
74 | processor.execute_shell()
75 |
--------------------------------------------------------------------------------
/CarbonCopyCloner/CarbonCopyCloner.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Imports CCC into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.CarbonCopyCloner.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Carbon Copy Cloner
13 | NAME
14 | CarbonCopyCloner
15 | pkginfo
16 |
17 | catalogs
18 |
19 | testing
20 |
21 | description
22 | Disk and folder cloning utility for OS X.
23 | display_name
24 | Carbon Copy Cloner
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.3.1
33 | ParentRecipe
34 | com.github.keeleysam.recipes.CarbonCopyCloner.download
35 | Process
36 |
37 |
38 | Processor
39 | DmgCreator
40 | Arguments
41 |
42 | dmg_path
43 | %RECIPE_CACHE_DIR%/downloads/CarbonCopyCloner.dmg
44 | dmg_root
45 | %RECIPE_CACHE_DIR%/downloads/Applications/Carbon Copy Cloner.app
46 |
47 |
48 |
49 | Processor
50 | MunkiImporter
51 | Arguments
52 |
53 | pkg_path
54 | %RECIPE_CACHE_DIR%/downloads/CarbonCopyCloner.dmg
55 | repo_subdirectory
56 | %MUNKI_REPO_SUBDIR%
57 |
58 |
59 |
60 | Processor
61 | PathDeleter
62 | Arguments
63 |
64 | path_list
65 |
66 | %dmg_path%
67 | %RECIPE_CACHE_DIR%/downloads/Applications/
68 |
69 |
70 |
71 |
72 |
73 |
--------------------------------------------------------------------------------
/FileZilla/FileZilla.download.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the latest stable version of FileZilla for Mac.
7 |
8 | Valid values for ARCH include:
9 | - "x86" (default, Intel)
10 | - "arm64" (Apple Silicon)
11 | Note the architecture values are not the same as the FileZilla nightly recipe.
12 |
13 | Identifier
14 | com.github.keeleysam.recipes.FileZilla.download
15 | Input
16 |
17 | NAME
18 | FileZilla
19 | ARCH
20 | x86
21 | RE_PATTERN
22 | <a href=\"(?P<url>http[s]?.*?(?P<filename>FileZilla_(?P<version>[\d.]+)_macos-%ARCH%.*?\.tar\.bz2).*?)\"
23 |
24 | MinimumVersion
25 | 1.1
26 | Process
27 |
28 |
29 | Processor
30 | DeprecationWarning
31 | Arguments
32 |
33 | warning_message
34 | These FileZilla recipes are deprecated and will be removed in the future. If you still need to deploy FileZilla, alternatives exist here: https://github.com/pappirauk/svs-recipes/tree/main/FileZilla
35 |
36 |
37 |
38 | Arguments
39 |
40 | re_pattern
41 | %RE_PATTERN%
42 | url
43 | https://filezilla-project.org/download.php?show_all=1
44 | request_headers
45 |
46 | user-agent
47 | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1 Safari/605.1.15
48 |
49 |
50 | Processor
51 | URLTextSearcher
52 |
53 |
54 | Processor
55 | URLDownloader
56 |
57 |
58 | Processor
59 | EndOfCheckPhase
60 |
61 |
62 | Processor
63 | Unarchiver
64 | Arguments
65 |
66 | purge_destination
67 |
68 |
69 |
70 |
71 | Processor
72 | CodeSignatureVerifier
73 | Arguments
74 |
75 | input_path
76 | %RECIPE_CACHE_DIR%/%NAME%/FileZilla.app
77 | requirement
78 | identifier "org.filezilla-project.filezilla" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = "5VPGKXL75N"
79 |
80 |
81 |
82 |
83 |
84 |
--------------------------------------------------------------------------------
/StarTech/StarTechUSBDriver.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Munki Imports the latest version of StarTechUSBDriver.
7 | Identifier
8 | com.github.keeleysam-recipes.munki.StarTechUSBDriver
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | drivers/StarTech
13 | NAME
14 | StarTechUSBDriver
15 | FILENAME
16 | AX88179_178A
17 |
18 | MinimumVersion
19 | 0.6.1
20 | pkginfo
21 |
22 | catalogs
23 |
24 | testing
25 |
26 | developer
27 | StarTech
28 | display_name
29 | StarTech USB Driver
30 | name
31 | %NAME%
32 | unattended_install
33 |
34 |
35 | ParentRecipe
36 | com.github.keeleysam-recipes.download.StarTechUSBDriver
37 | Process
38 |
39 |
40 | Arguments
41 |
42 | pkg_path
43 | %RECIPE_CACHE_DIR%/%NAME%/%FILENAME%.dmg
44 | info_path
45 | %RECIPE_CACHE_DIR%/info.plist
46 |
47 | Processor
48 | MunkiInfoCreator
49 |
50 |
51 | Arguments
52 |
53 | plist_version_key
54 | version
55 | input_plist_path
56 | %RECIPE_CACHE_DIR%/info.plist
57 |
58 | Processor
59 | Versioner
60 |
61 |
62 | Arguments
63 |
64 | dmg_path
65 | %RECIPE_CACHE_DIR%/%NAME%/%FILENAME%.dmg
66 | items_to_copy
67 |
68 |
69 | source_item
70 | %FILENAME%_v%version%.pkg
71 | destination_path
72 | %RECIPE_CACHE_DIR%/
73 | destination_item
74 | %RECIPE_CACHE_DIR%/%NAME%.pkg
75 |
76 |
77 |
78 | Processor
79 | InstallFromDMG
80 |
81 |
82 | Arguments
83 |
84 | pkg_path
85 | %RECIPE_CACHE_DIR%/%NAME%.pkg
86 | repo_subdirectory
87 | %MUNKI_REPO_SUBDIR%
88 |
89 | Processor
90 | MunkiImporter
91 |
92 |
93 |
94 |
--------------------------------------------------------------------------------
/ParallelsDesktop/ParallelsDesktop10.munki.recipe:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Description
6 | Downloads the current installation package for Parallels Desktop 10. Imports it into Munki.
7 | Identifier
8 | com.github.keeleysam.recipes.ParallelsDesktop10.munki
9 | Input
10 |
11 | MUNKI_REPO_SUBDIR
12 | apps/Parallels/ParallelsDesktop10
13 | NAME
14 | ParallelsDesktop10
15 | PATH
16 | Parallels Desktop.app
17 | pkginfo
18 |
19 | catalogs
20 |
21 | testing
22 |
23 | display_name
24 | Parallels Desktop 10
25 | name
26 | %NAME%
27 | unattended_install
28 |
29 |
30 |
31 | MinimumVersion
32 | 0.2.1
33 | ParentRecipe
34 | com.github.keeleysam.recipes.ParallelsDesktop.download
35 | Process
36 |
37 |
38 | Arguments
39 |
40 | additional_pkginfo
41 |
42 | description
43 | %description%
44 | postinstall_script
45 | #!/bin/bash
46 | chflags nohidden "/Applications/%PATH%"
47 |
48 |
49 |
50 | Processor
51 | MunkiPkginfoMerger
52 |
53 |
54 | Arguments
55 |
56 | destination_path
57 | %RECIPE_CACHE_DIR%/%NAME%.dmg
58 | source_path
59 | %pathname%
60 |
61 | Processor
62 | Copier
63 |
64 |
65 | Arguments
66 |
67 | destination_path
68 | %RECIPE_CACHE_DIR%/%NAME%/Applications/%PATH%
69 | overwrite
70 |
71 | source_path
72 | %pathname%/%PATH%
73 |
74 | Processor
75 | Copier
76 |
77 |
78 | Arguments
79 |
80 | faux_root
81 | %RECIPE_CACHE_DIR%/%NAME%
82 | installs_item_paths
83 |
84 | /Applications/%PATH%
85 |
86 |
87 | Processor
88 | MunkiInstallsItemsCreator
89 |
90 |
91 | Arguments
92 |
93 | munkiimport_appname
94 | %PATH%
95 | pkg_path
96 | %RECIPE_CACHE_DIR%/%NAME%.dmg
97 | repo_subdirectory
98 | %MUNKI_REPO_SUBDIR%
99 |
100 | Processor
101 | MunkiImporter
102 |
103 |
104 |
105 |
106 |
--------------------------------------------------------------------------------
/ParallelsDesktop/ParallelsURLProvider.py:
--------------------------------------------------------------------------------
1 | #!/usr/local/autopkg/python
2 | #
3 | # ParallelsURLProvider, version 2013.08.08
4 | # Copyright 2013 Samuel Keeley, derived from BarebonesURLProvider by Timothy Sutton
5 | # Thanks to Michael Lynn for help with xml.dom.minidom
6 | #
7 | # Licensed under the Apache License, Version 2.0 (the "License");
8 | # you may not use this file except in compliance with the License.
9 | # You may obtain a copy of the License at
10 | #
11 | # http://www.apache.org/licenses/LICENSE-2.0
12 | #
13 | # Unless required by applicable law or agreed to in writing, software
14 | # distributed under the License is distributed on an "AS IS" BASIS,
15 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 | # See the License for the specific language governing permissions and
17 | # limitations under the License.
18 |
19 | from __future__ import absolute_import
20 |
21 | import xml.dom.minidom
22 | from distutils.version import LooseVersion
23 |
24 | from autopkglib import Processor, ProcessorError, URLGetter
25 |
26 | __all__ = ["ParallelsURLProvider"]
27 |
28 | URLS = {
29 | "ParallelsDesktop6": "http://update.parallels.com/desktop/v6/en_us/parallels/parallels_updates.xml",
30 | "ParallelsDesktop7": "http://update.parallels.com/desktop/v7/parallels/parallels_updates.xml",
31 | "ParallelsDesktop8": "http://update.parallels.com/desktop/v8/parallels/parallels_updates.xml",
32 | "ParallelsDesktop9": "http://update.parallels.com/desktop/v9/parallels/parallels_updates.xml",
33 | "ParallelsDesktop10": "http://update.parallels.com/desktop/v10/parallels/parallels_updates.xml"}
34 |
35 |
36 | class ParallelsURLProvider(URLGetter):
37 | description = "Provides a version, description, and DMG download for the Parallels product given."
38 | input_variables = {
39 | "product_name": {
40 | "required": True,
41 | "description": "Product to fetch URL for. One of: %s." % ', '.join(URLS),
42 | },
43 | }
44 | output_variables = {
45 | "version": {
46 | "description": "Version of the product.",
47 | },
48 | "url": {
49 | "description": "Download URL.",
50 | },
51 | "description": {
52 | "description": "Update description."
53 | }
54 | }
55 | __doc__ = description
56 |
57 | def main(self):
58 |
59 | prod = self.env.get("product_name")
60 | if prod not in URLS:
61 | raise ProcessorError(
62 | "product_name %s is invalid; it must be one of: %s" %
63 | (prod, ', '.join(URLS)))
64 | url = URLS[prod]
65 | try:
66 | manifest_str = self.download(url)
67 | except Exception as e:
68 | raise ProcessorError(
69 | "Unexpected error retrieving product manifest: '%s'" %
70 | e)
71 |
72 | the_xml = xml.dom.minidom.parseString(manifest_str)
73 | products = the_xml.getElementsByTagName('Product')
74 | parallels = None
75 | for a_product in products:
76 | # Find the products that are 'Parallels Desktop'
77 | if a_product.getElementsByTagName(
78 | 'ProductName')[0].firstChild.nodeValue == u'Parallels Desktop':
79 | parallels = a_product
80 | v_major = parallels.getElementsByTagName(
81 | 'Major')[0].firstChild.nodeValue
82 | v_minor = parallels.getElementsByTagName(
83 | 'Minor')[0].firstChild.nodeValue
84 | v_sub_minor = parallels.getElementsByTagName(
85 | 'SubMinor')[0].firstChild.nodeValue
86 | v_sub_sub_minor = parallels.getElementsByTagName(
87 | 'SubSubMinor')[0].firstChild.nodeValue
88 | version = '.'.join(
89 | [v_major, v_minor, v_sub_minor, v_sub_sub_minor])
90 | update = parallels.getElementsByTagName('Update')[0]
91 | try:
92 | description = [x.firstChild.nodeValue for x in update.getElementsByTagName(
93 | 'UpdateDescription') if x.firstChild.nodeValue.startswith('en_US')][0]
94 | description = '%s' % (
95 | description.split('#', 1)[-1])
96 | except:
97 | description = [x.firstChild.nodeValue for x in update.getElementsByTagName(
98 | 'UpdateDescription')][0]
99 | url = update.getElementsByTagName(
100 | 'FilePath')[0].firstChild.nodeValue
101 |
102 | self.env["version"] = version
103 | self.env["description"] = description
104 | self.env["url"] = url
105 | self.output("Found URL %s" % self.env["url"])
106 |
107 | if __name__ == "__main__":
108 | processor = ParallelsURLProvider()
109 | processor.execute_shell()
110 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Apache License
2 | Version 2.0, January 2004
3 | http://www.apache.org/licenses/
4 |
5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6 |
7 | 1. Definitions.
8 |
9 | "License" shall mean the terms and conditions for use, reproduction, and
10 | distribution as defined by Sections 1 through 9 of this document.
11 |
12 | "Licensor" shall mean the copyright owner or entity authorized by the copyright
13 | owner that is granting the License.
14 |
15 | "Legal Entity" shall mean the union of the acting entity and all other entities
16 | that control, are controlled by, or are under common control with that entity.
17 | For the purposes of this definition, "control" means (i) the power, direct or
18 | indirect, to cause the direction or management of such entity, whether by
19 | contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the
20 | outstanding shares, or (iii) beneficial ownership of such entity.
21 |
22 | "You" (or "Your") shall mean an individual or Legal Entity exercising
23 | permissions granted by this License.
24 |
25 | "Source" form shall mean the preferred form for making modifications, including
26 | but not limited to software source code, documentation source, and configuration
27 | files.
28 |
29 | "Object" form shall mean any form resulting from mechanical transformation or
30 | translation of a Source form, including but not limited to compiled object code,
31 | generated documentation, and conversions to other media types.
32 |
33 | "Work" shall mean the work of authorship, whether in Source or Object form, made
34 | available under the License, as indicated by a copyright notice that is included
35 | in or attached to the work (an example is provided in the Appendix below).
36 |
37 | "Derivative Works" shall mean any work, whether in Source or Object form, that
38 | is based on (or derived from) the Work and for which the editorial revisions,
39 | annotations, elaborations, or other modifications represent, as a whole, an
40 | original work of authorship. For the purposes of this License, Derivative Works
41 | shall not include works that remain separable from, or merely link (or bind by
42 | name) to the interfaces of, the Work and Derivative Works thereof.
43 |
44 | "Contribution" shall mean any work of authorship, including the original version
45 | of the Work and any modifications or additions to that Work or Derivative Works
46 | thereof, that is intentionally submitted to Licensor for inclusion in the Work
47 | by the copyright owner or by an individual or Legal Entity authorized to submit
48 | on behalf of the copyright owner. For the purposes of this definition,
49 | "submitted" means any form of electronic, verbal, or written communication sent
50 | to the Licensor or its representatives, including but not limited to
51 | communication on electronic mailing lists, source code control systems, and
52 | issue tracking systems that are managed by, or on behalf of, the Licensor for
53 | the purpose of discussing and improving the Work, but excluding communication
54 | that is conspicuously marked or otherwise designated in writing by the copyright
55 | owner as "Not a Contribution."
56 |
57 | "Contributor" shall mean Licensor and any individual or Legal Entity on behalf
58 | of whom a Contribution has been received by Licensor and subsequently
59 | incorporated within the Work.
60 |
61 | 2. Grant of Copyright License.
62 |
63 | Subject to the terms and conditions of this License, each Contributor hereby
64 | grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
65 | irrevocable copyright license to reproduce, prepare Derivative Works of,
66 | publicly display, publicly perform, sublicense, and distribute the Work and such
67 | Derivative Works in Source or Object form.
68 |
69 | 3. Grant of Patent License.
70 |
71 | Subject to the terms and conditions of this License, each Contributor hereby
72 | grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
73 | irrevocable (except as stated in this section) patent license to make, have
74 | made, use, offer to sell, sell, import, and otherwise transfer the Work, where
75 | such license applies only to those patent claims licensable by such Contributor
76 | that are necessarily infringed by their Contribution(s) alone or by combination
77 | of their Contribution(s) with the Work to which such Contribution(s) was
78 | submitted. If You institute patent litigation against any entity (including a
79 | cross-claim or counterclaim in a lawsuit) alleging that the Work or a
80 | Contribution incorporated within the Work constitutes direct or contributory
81 | patent infringement, then any patent licenses granted to You under this License
82 | for that Work shall terminate as of the date such litigation is filed.
83 |
84 | 4. Redistribution.
85 |
86 | You may reproduce and distribute copies of the Work or Derivative Works thereof
87 | in any medium, with or without modifications, and in Source or Object form,
88 | provided that You meet the following conditions:
89 |
90 | You must give any other recipients of the Work or Derivative Works a copy of
91 | this License; and
92 | You must cause any modified files to carry prominent notices stating that You
93 | changed the files; and
94 | You must retain, in the Source form of any Derivative Works that You distribute,
95 | all copyright, patent, trademark, and attribution notices from the Source form
96 | of the Work, excluding those notices that do not pertain to any part of the
97 | Derivative Works; and
98 | If the Work includes a "NOTICE" text file as part of its distribution, then any
99 | Derivative Works that You distribute must include a readable copy of the
100 | attribution notices contained within such NOTICE file, excluding those notices
101 | that do not pertain to any part of the Derivative Works, in at least one of the
102 | following places: within a NOTICE text file distributed as part of the
103 | Derivative Works; within the Source form or documentation, if provided along
104 | with the Derivative Works; or, within a display generated by the Derivative
105 | Works, if and wherever such third-party notices normally appear. The contents of
106 | the NOTICE file are for informational purposes only and do not modify the
107 | License. You may add Your own attribution notices within Derivative Works that
108 | You distribute, alongside or as an addendum to the NOTICE text from the Work,
109 | provided that such additional attribution notices cannot be construed as
110 | modifying the License.
111 | You may add Your own copyright statement to Your modifications and may provide
112 | additional or different license terms and conditions for use, reproduction, or
113 | distribution of Your modifications, or for any such Derivative Works as a whole,
114 | provided Your use, reproduction, and distribution of the Work otherwise complies
115 | with the conditions stated in this License.
116 |
117 | 5. Submission of Contributions.
118 |
119 | Unless You explicitly state otherwise, any Contribution intentionally submitted
120 | for inclusion in the Work by You to the Licensor shall be under the terms and
121 | conditions of this License, without any additional terms or conditions.
122 | Notwithstanding the above, nothing herein shall supersede or modify the terms of
123 | any separate license agreement you may have executed with Licensor regarding
124 | such Contributions.
125 |
126 | 6. Trademarks.
127 |
128 | This License does not grant permission to use the trade names, trademarks,
129 | service marks, or product names of the Licensor, except as required for
130 | reasonable and customary use in describing the origin of the Work and
131 | reproducing the content of the NOTICE file.
132 |
133 | 7. Disclaimer of Warranty.
134 |
135 | Unless required by applicable law or agreed to in writing, Licensor provides the
136 | Work (and each Contributor provides its Contributions) on an "AS IS" BASIS,
137 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied,
138 | including, without limitation, any warranties or conditions of TITLE,
139 | NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are
140 | solely responsible for determining the appropriateness of using or
141 | redistributing the Work and assume any risks associated with Your exercise of
142 | permissions under this License.
143 |
144 | 8. Limitation of Liability.
145 |
146 | In no event and under no legal theory, whether in tort (including negligence),
147 | contract, or otherwise, unless required by applicable law (such as deliberate
148 | and grossly negligent acts) or agreed to in writing, shall any Contributor be
149 | liable to You for damages, including any direct, indirect, special, incidental,
150 | or consequential damages of any character arising as a result of this License or
151 | out of the use or inability to use the Work (including but not limited to
152 | damages for loss of goodwill, work stoppage, computer failure or malfunction, or
153 | any and all other commercial damages or losses), even if such Contributor has
154 | been advised of the possibility of such damages.
155 |
156 | 9. Accepting Warranty or Additional Liability.
157 |
158 | While redistributing the Work or Derivative Works thereof, You may choose to
159 | offer, and charge a fee for, acceptance of support, warranty, indemnity, or
160 | other liability obligations and/or rights consistent with this License. However,
161 | in accepting such obligations, You may act only on Your own behalf and on Your
162 | sole responsibility, not on behalf of any other Contributor, and only if You
163 | agree to indemnify, defend, and hold each Contributor harmless for any liability
164 | incurred by, or claims asserted against, such Contributor by reason of your
165 | accepting any such warranty or additional liability.
166 |
167 | END OF TERMS AND CONDITIONS
168 |
169 | APPENDIX: How to apply the Apache License to your work
170 |
171 | To apply the Apache License to your work, attach the following boilerplate
172 | notice, with the fields enclosed by brackets "[]" replaced with your own
173 | identifying information. (Don't include the brackets!) The text should be
174 | enclosed in the appropriate comment syntax for the file format. We also
175 | recommend that a file or class name and description of purpose be included on
176 | the same "printed page" as the copyright notice for easier identification within
177 | third-party archives.
178 |
179 | Copyright [yyyy] [name of copyright owner]
180 |
181 | Licensed under the Apache License, Version 2.0 (the "License");
182 | you may not use this file except in compliance with the License.
183 | You may obtain a copy of the License at
184 |
185 | http://www.apache.org/licenses/LICENSE-2.0
186 |
187 | Unless required by applicable law or agreed to in writing, software
188 | distributed under the License is distributed on an "AS IS" BASIS,
189 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
190 | See the License for the specific language governing permissions and
191 | limitations under the License.
192 |
--------------------------------------------------------------------------------