New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
initial screensaver work #2647
initial screensaver work #2647
Conversation
Hi! I'll test this tomorrow and give any help you need until we merge. You can make |
Install works for me without having to logout/login, but travis CI fails because audit fails because it is recommended to use no_checksum for anything with version 'latest' These screensavers (and I expect most) will probably not be updated that often (on the order of once every 2-3 years if that) Is it better to replace the checksum with no_checksum or make up a version string, perhaps based on the year it was released? Both seem less than ideal... Perhaps its a good time to revisit the idea of 'latest' having no_checksum being a hard requirement for Travis CI to succeed - either ignore audit warnings for travis CI or remove the warning for checksums with version 'latest' |
If it will probably not be updated, or even updated but keep the same |
Cool -- thanks a lot for the new artifact! The checksums are a separate issue and I'd love to discuss them in a separate PR or on IRC. The standing rule is that the Your Ruby code is mostly ready now, but there are a few tweaks needed to get it into shape if you are willing. Quibble 1: One thing that got left out of #2416 is creating the target directory. Let's put it into this PR so that this PR will be a better template for the next new artifact. qlplugindir.mkpath unless qlplugindir.exist?
+ screen_saverdir.mkpath unless screen_saverdir.exist?
end Quibble 2: the new files you created lack trailing newlines Quibble 3: it would be better to use I also verified that login/logout is not needed. Your Ruby code worked perfectly with the existing Cask |
The three new Casks included in this PR are all from the same source, presstube.com, and they seem to have some common dependency. When I install I see some I know the Ruby part of your PR is solid, because I modified existing Cask screensaver 'Install iOS 7 screensaver.app/Contents/Resources/iOS 7 lockscreen by bodysoulspirit.qtz' Below is a screenshot of the symptom which appears to be a dependency issue. Thanks again! |
The saver name always being the same is an issue I am getting as well, but the dependency issue is new to me. I will try on a fresh install of mavericks to see what it needs. |
OK I was able to fix the name using after_install do
system "/usr/libexec/PlistBuddy -c \"Set :CFBundleName Chunkulus (Presstube)\" #{self.destination_path}/presstube-chunkulus.app/Contents/Resources/Presstube\\ -\\ Chunkulus.saver/Contents/Info.plist"
end Figuring out the dependencies will be a bit trickier. |
Should I split the presstube casks to a separate branch, so the screensaver branch can be merged sooner? |
Sure, then we can proceed on this PR easily. Nice plist hacking, tho. As for the dependency, I just thought of Shockwave, I should have tried that in addition to Flash. |
Its realy the goal of brew cask to patch files before they work? |
@muescha The installer that is provided by the screensaver manually patches the plist. I hate when package maintainers modify stuff from upstream, however I found no way to invoke the .swf installer from the commandline. If we can figure out how to do that I would gladly remove the plist change. |
@jedahan there's nothing wrong with it. We do what we gotta do to make an install work for the end user. Abstracting out what is buried in the custom installer script makes it more transparent as well. If you grep 'defaults.write' in the |
THANK YOU, especially for the revisions! |
First trial of screensaver work.
Manual testing: on a new user, symlinking to ~/Library/Screen Savers works, but only after a logout and login.
However I don't know how to test different versions of brew-cask. For some reason
brew install brew-cask
still installs phinze/homebrew-cask even though I edited the brew-cask.rb formula in my taps...