Build or Maintain
This is a guide for a ManageConky/conky-for-macOS developer/maintainer. It is not supposed to be a detailed guide on how to build MC.
Install the requirements but instead of installing Xcode command-line tools just install Xcode.
ManageConky consists of the main project (ManageConky) and two subprojects: ConkyX and conky
-
ManageConky builds ConkyX which builds conky.
-
conky is bundled into ConkyX (in
Resources
) because the latter works as a launcher.
-
ConkyX is bundled into ManageConky (in
Resources
).
- And finally, ManageConky installs everything by making symlinks to ConkyX and conky in
/Applications
and/usr/local/bin
respectively.
There is a branch of conky-for-macOS named forConkyX
which contains the xcode-project files required for the compilation of conky -and the whole project, whatsoever-.
Xcode expects to find the conky.xcodeproj
file inside forConkyX
directory.
Clone repo
git clone --recurse-submodules https://github.com/Conky-for-macOS/Manage-Conky/
Prepare a conky-for-macOS xcode project file
cd "Manage Conky"
Tools/preheatProject.command
Work on ManageConky
open "Manage Conky.xcworkspace"
Do not forget to change to your own Code Sign Identity.
- (inside conky-for-macOS directory)
git fetch upstream # fetch updates
git checkout master # branch into master
git rebase upstream/master # rebase with updates from upstream
git checkout forConkyX # branch into forConkyX
git merge master # merge master
- Recreate an xcode-project using the following command:
ccmake .. -G Xcode
cd ..
git add conky-for-macOS
git commit
cd ..
git add ConkyX
git commit
- Install cocoapods.
- Inside the ManageConky directory type:
pod update
This should update the frameworks used (AHLaunchCtl, LzmaSDK-ObjC and Sparkle). - (Commit the changes)
- You should do a
Product->Clean
(Product->Clean Build Folder
on new Xcode) (This is an amazingly necessary step sometimes, trust me) - Build
These senarios are probably all you need to maintain this project.
You can use the distributeManageConky.command
script provided in <ProjectRoot>/Tools
.
It will build a Manage Conky.app
in /tmp
, package it in a .dmg
, sign it using Sparkle's tool and then place it in your home directory.
Usage:
./distributeManageConky.command <version number:optional>
Example:
./distributeManageConky.command 0.9