Cookbook that contains recipes for dev tools, like vscode, chrome, openjdk ...
The cookbook is deprecated and will only receive bugfixes. The resources will be moved to dedicated cookbooks. The "single package" recipes should be implemented within wrapper cookbooks since they don't warrent dedicated cookbooks.
- Debian Buster
- (Probably works still works for older debian versions but this is not tested)
- Chef 15.3+
Add the cookbook to your Berksfile:
cookbook 'codenamephp_dev'
Add the tools cookbook to your runlist, e.g. in a role:
{
"name": "default",
"chef_type": "role",
"json_class": "Chef::Role",
"run_list": [
"recipe[codenamephp_dev::chrome]"
]
}
Note that the default recipe is a No-Op, so you need to add the tools you want. This cookbook is moving to resources and most recipes are only shortcuts for those resources so the preferred way is to create a wrapper cookbook and just resources since it is more flexible and stable that way.
The codenamephp_dev_jetrbains_toolbox
resource installs or uninstalls the Jetbrains toolbox which can then be used to manage the Jetbrains products.
:install
: Downloads the toolbox to a shared location and adds an X11 session script that installs the toolbox for the logged in user:uninstall
: Deletes the shared script and the login script. Already installed apps for the users are not removed
toolbox_path
: The path where the files are downloaded to, extracted, ..., default: '/usr/share/jetbrains-toolbox'. If you have a custom path you need to provide it as well for the uninstall action.
# Minmal parameters
codenamephp_dev_jetbrains_toolbox 'install jetbrains-toolbox'
# Custom source and path
codenamephp_dev_jetbrains_toolbox 'install jetbrains-toolbox' do
toolbox_path '/my/custom/executable/path'
end
# Uninstall
codenamephp_dev_jetbrains_toolbox 'uninstall jetbrains-toolbox' do
toolbox_path '/my/custom/executable/path'
end
The codenamephp_dev_chrome
resource installs or uninstalls the Google Chrome Browser and its apt repository.
:install
: Adds the apt repository and installs the browser via apt:remove
: Removes the apt repository and the chrome package via apt
# Minmal parameters
codenamephp_dev_chrome 'install chrome'
# Uninstall
codenamephp_dev_chrome 'install chrome' do
action :remove
end
The recipes are just shortcuts for simple use cases so the tools can be installed e.g. with the chef server gui. For more complex use cases the resources should be used.
The default cookbook (as stated multiple times) is a No-Op. Pick and choose the tools you want via the recipes.
Adds the google apt repository and installs Google Chrome from package.
Just installs the gnome-terminal from package.
Just installs unzip from package (no gui client is installed)
The jetbrains_toolbox
recipe installs the jetbrains toolbox to a shared location and adds an X-Server startup script so it will be installed for each user on first
login.