527 Commits

Author SHA1 Message Date
Markus Reiter
e59ada5087 Merge pull request #1894 from reitermarkus/appcast-checkpoint
Add internal command to calculate appcast checkpoint.
2017-01-23 17:17:50 +01:00
Markus Reiter
4459669617 Merge pull request #1896 from vitorgalvao/cleanups-internal-stanzas
Cask: cleanups internal stanzas
2017-01-23 16:33:02 +01:00
Markus Reiter
2076b494a6 Add manpage entry for _appcast_checkpoint. 2017-01-23 16:23:01 +01:00
Markus Reiter
2d5b659b0e Add support for calculating appcast checkpoint from URLs. 2017-01-23 15:48:20 +01:00
Vítor Galvão
53e232fc7e Add --calculate (print current checkpoint without it) 2017-01-23 15:30:44 +01:00
Vítor Galvão
a64e2835ad cask - internal_stanza: use cask_tokens_from(args) 2017-01-23 14:24:01 +00:00
Vítor Galvão
e8f67eb13d cask - internal stanzas: lowercase help 2017-01-23 14:24:01 +00:00
Markus Reiter
f23c127cde Fix installer deleting artifacts if they already exist. 2017-01-23 14:19:14 +01:00
Markus Reiter
f7c6fc058f Remove legacy cask cache instead of migrating. 2017-01-23 13:33:08 +01:00
Markus Reiter
2de6d96a10 Change regex to catch multi-line pubDate tags. 2017-01-23 09:33:12 +01:00
Markus Reiter
16f4130dd8 Add internal command to calculate appcast checkpoint. 2017-01-23 09:33:12 +01:00
Trevor Powell
4ce6616f2e Fix "Failed to eject" errors with DMGs
Use "diskutil unmount force" to unmount DMGs.
2017-01-22 22:52:11 -06:00
Vítor Galvão
70a5ebafc4 cask - internal_stanza: arguments to args 2017-01-23 01:13:58 +00:00
Markus Reiter
2c6516ef59 Disallow file separator in version strings. 2017-01-02 12:15:54 +01:00
Markus Reiter
e84e4b5566 Merge pull request #1745 from vitorgalvao/depends-on-arch
cask depends_on arch: remove everything but 64-bit intel
2017-01-02 12:08:21 +01:00
Vítor Galvão
294781cc9e cask depends_on arch: remove everything but 64-bit intel 2017-01-02 02:46:03 +00:00
Markus Reiter
ed892243cd Remove :bsexec parameter from SystemCommand. 2016-12-31 18:02:42 +01:00
Markus Reiter
cea1d18f45 Do not require compat/hbc/cli/update when —no-compat is specified. 2016-12-30 16:13:09 +01:00
Markus Reiter
a1154e9fab Deprecate brew cask update. 2016-12-30 14:01:43 +01:00
Nathan Toone
6d318761d2 Delete pkgutil directories that are really files.
Sometimes, pkgutil will return actual files (usually .nib files) as if they were part of the directory.  Microsoft Office is an example of this: in a recent update the file `/Library/Application Support/Microsoft/MAU2.0/Microsoft AutoUpdate.app/Contents/SharedSupport/Microsoft Error Reporting.app/Contents/Resources/en.lproj/MainWindowAlt.nib` was returning from `/usr/sbin/pkgutil --only-dirs --files com.microsoft.package.component` even though it should have been a file instead of a directory.  This caused the `rmdir` command to fail.

This patch will check if we are trying to delete a “directory” that is really a “file” - and if we are, we just delete the file instead.  This will allow packages that get in this state to be uninstalled.  A unit test which can be run using `brew cask-tests` is also included.
2016-12-28 11:57:47 -07:00
Markus Reiter
3088faaf9c Fix error message when cask fails to install. 2016-12-16 18:22:04 +01:00
Markus Reiter
f02491180b Merge pull request #1618 from rwanyoike/cask-reinstall-order
cask reinstall: download and verify cask before uninstall
2016-12-09 17:24:05 +01:00
Markus Reiter
049206bf16 Merge pull request #1464 from reitermarkus/quit-with-launchctl
Use `launchctl` to get running processes by bundle ID.
2016-12-06 15:08:21 +01:00
Raymond Wanyoike
0d67e35fb7 cask reinstall: use fetch and stage steps from #1620 2016-12-05 12:08:55 +03:00
Markus Reiter
697340ff3b Merge pull request #1620 from reitermarkus/refactoring
Refactor Cask installer.
2016-12-05 09:27:32 +01:00
Markus Reiter
5cc7acee17 Merge pull request #1590 from reitermarkus/fail-if-app-source-already-exists
Fail if cask source already exists.
2016-12-05 09:22:00 +01:00
Markus Reiter
86a80c8a3d Use launchctl to get running processes by bundle ID. 2016-12-05 00:20:29 +01:00
Markus Reiter
5785f54f4b Revert install_artifacts if one artifact fails to install. 2016-12-04 23:19:15 +01:00
Markus Reiter
e6d9248787 Separate fetch and stage steps in Hbc::Installer. 2016-12-04 23:19:15 +01:00
Markus Reiter
7d7ca0cb1a Use Homebrew’s Emoji class in cask installer. 2016-12-04 23:19:15 +01:00
Markus Reiter
006f25d8cf Use Homebrew to detect if X11 is installed. 2016-12-04 23:19:15 +01:00
Raymond Wanyoike
55ef924e7a cask reinstall: download and verify cask before uninstall
Closes: caskroom/homebrew-cask#27075
2016-12-04 13:37:26 +03:00
Markus Reiter
e0b93f1537 Also fail if symlinked artifacts already exist. 2016-11-28 14:01:06 +01:00
Markus Reiter
e63efb3fe4 Warn when overwriting an artifact. 2016-11-28 14:01:06 +01:00
Markus Reiter
9a29bd35e6 Fail if cask source already exists. 2016-11-28 13:38:49 +01:00
Kaito Udagawa
63e7fb5cae cask: Delete package dir if it is symlink on the uninstall
When a Formula is converted into a Cask (e.g. osxfuse),
a symlink remains at the place of package dir.
This change ensure to remove such leftovers.
2016-11-22 03:10:42 +09:00
Markus Reiter
c7267b123d Merge pull request #1502 from reitermarkus/load-metadata-cask-file
Load cask file in `.metadata` directory directly.
2016-11-21 10:43:15 +01:00
Markus Reiter
cc7541cbc4 Merge pull request #1535 from umireon/cask-pkg-choice
Cask: Add the choices option to pkg stanza
2016-11-21 10:25:30 +01:00
Kaito Udagawa
df635c8259 cask: compact the code 2016-11-21 04:13:29 +09:00
Kaito Udagawa
0c22cc45e6 cask: Call Tempfile#close(true) with the choices file to ensure it deleted 2016-11-20 14:23:55 +09:00
Kaito Udagawa
2807202103 cask: use Tempfile and some style fixes 2016-11-19 14:52:38 +09:00
Markus Reiter
1834457272 Remove kernel extensions specified in uninstall :kext. 2016-11-19 01:53:26 +01:00
Markus Reiter
bd9755fd78 Load cask file in .metadata directory directly. 2016-11-18 23:02:58 +01:00
Kaito Udagawa
f4a3bc100b cask: add the choices option to pkg stanza
installer command accepts -applyChoiceChangesXML option to change
customize options on the GUI installer from the commandline.
(`man installer` for more detailed information)

The introduced option `choice` enables the choice changes to be supplied
via pkg stanza without tricks in preflight code.
2016-11-19 04:41:21 +09:00
Josh Hagins
c20d50fc7a hbc/cmd/style: bump rubocop-cask to 0.10.6 2016-11-15 11:57:10 -05:00
Markus Reiter
3a01fbadcd Merge pull request #1362 from reitermarkus/rubocop
Update RuboCop to 0.45.0.
2016-11-14 16:50:24 +01:00
Markus Reiter
ff96f7ec26 Fix detection of self-extracting .exe files. 2016-11-14 15:30:48 +01:00
Markus Reiter
c648518f35 Rename single line block parameters to acc/elem. 2016-11-13 23:36:04 +01:00
Markus Reiter
e9391481a8 Update RuboCop to 0.45.0. 2016-11-13 23:18:08 +01:00
Markus Reiter
84b2276fd8 Use guard clauses. 2016-11-13 23:00:47 +01:00