We are going to create a pkg that copies some files to the /Library directory. We will use the tool macos-installer-builder, which could be downloaded from https://github.com/KosalaHerath/macos-installer-builder
The usage of this tool has been well explained in the github page. The default build-macos-x64.sh script requires two parameters: product name and product version. We are going to modify this script to generate a pkg installer that copies the application files into a fixed directory.
1. copy the application's files into ./application/ folder
2. comment the section in #Argument validation which validates the product name and product version parameters. Since we are not going to use the input parameters.
3. change PRODUCT and VERSION variables to strings.
4. change in function copyBuildDirectory the three commands below #Copy cellery product to /Library/Cellery, \${PRODUCT}/\${VERSION} to the fixed target directory
5. comment createUninstaller command, since I don't use it.
6. add commands in postinstall script, such as changing the permission.
Finally, run bash build-macos-x64.sh to generate the pkg installer.
Saturday, November 16, 2019
Monday, October 28, 2019
Compile and load kext
The problem is that I use MacOS 10.15, and the sdk is already installed in the folder:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
So if I do "ls" to this folder, it shows:
DriverKit19.0.sdk MacOSX.sdk MacOSX10.15.sdk
Now I need to copy 10.14 sdk to this folder. The first thing I did is "svn export" the 10.14 sdk from
https://github.com/alexey-lysiuk/macos-sdk/tree/master/MacOSX10.14.sdk
I use this command, replace "tree/master" by "trunk":
svn export https://github.com/alexey-lysiuk/macos-sdk/trunk/MacOSX10.14.sdk
Then I "sudo cp -r" this folder to my SDKs folder. For compiling the project, I used:
xcodebuild -project "projectName.xcodeproj" -scheme "schemeName" -sdk macosx10.14 -derivedDataPath build clean build
Finally I changed the ownership of the kext:
sudo chown -R root:wheel yourKext.kext
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
So if I do "ls" to this folder, it shows:
DriverKit19.0.sdk MacOSX.sdk MacOSX10.15.sdk
Now I need to copy 10.14 sdk to this folder. The first thing I did is "svn export" the 10.14 sdk from
https://github.com/alexey-lysiuk/macos-sdk/tree/master/MacOSX10.14.sdk
I use this command, replace "tree/master" by "trunk":
svn export https://github.com/alexey-lysiuk/macos-sdk/trunk/MacOSX10.14.sdk
Then I "sudo cp -r" this folder to my SDKs folder. For compiling the project, I used:
xcodebuild -project "projectName.xcodeproj" -scheme "schemeName" -sdk macosx10.14 -derivedDataPath build clean build
Finally I changed the ownership of the kext:
sudo chown -R root:wheel yourKext.kext
Labels:
drivers,
kernel extensions,
Kext,
MacOS
Location:
Vienna, Austria
Wednesday, August 28, 2019
My understanding of Word Insertion Penalty
In Daniel Jurafsky and James H. Martin's book Speech and Language Processing 2nd edition, page 317, the concept of Word Insertion Penalty has been introduced. But it's very confusing to me. The original description is
(on average) the language model probability decreases (causing a larger penalty), the decoder will prefer fewer, longer words. If the language model probability increases (larger penalty), the decoder will prefer more shorter words.
Pay attention that larger penaly appeared twice in two opposite conditions: when language model probability decreases and increases. This is not logical and I guess it's a typo of this book.
My understanding is:
If the language model probability doesn't take enough weight (importance), the decoder will prefer more shorter words since the multiplier of the language probabilities of all of the words would be small compared to acoustic probabilities. The language model scaling factor does reduce the weight of language model so that the Word Insertion Penalty should be introduced to avoid many insertions.
(on average) the language model probability decreases (causing a larger penalty), the decoder will prefer fewer, longer words. If the language model probability increases (larger penalty), the decoder will prefer more shorter words.
Pay attention that larger penaly appeared twice in two opposite conditions: when language model probability decreases and increases. This is not logical and I guess it's a typo of this book.
My understanding is:
If the language model probability doesn't take enough weight (importance), the decoder will prefer more shorter words since the multiplier of the language probabilities of all of the words would be small compared to acoustic probabilities. The language model scaling factor does reduce the weight of language model so that the Word Insertion Penalty should be introduced to avoid many insertions.
Subscribe to:
Posts (Atom)