Browse Source

macos: organize applications

master
Maxim Likhachev 4 years ago
parent
commit
7dd2102580
  1. 7
      Makefile
  2. 40
      README.md
  3. 1
      playbook.yml
  4. 9
      roles/macos/tasks/main.yml
  5. 70
      roles/macos/vars/main.yml

7
Makefile

@ -11,6 +11,13 @@ doc_silent: @@ -11,6 +11,13 @@ doc_silent:
gentoo:
$(ANSIBLE) -t gentoo playbook.yml
macos:
$(ANSIBLE) -t macos playbook.yml
local:
$(ANSIBLE) playbook.yml
requirements:
ansible-galaxy install -r requirements.yml
pip3 install --user -r requirements.txt

40
README.md

@ -40,6 +40,8 @@ $ make @@ -40,6 +40,8 @@ $ make
- [ntfs-3g](https://www.tuxera.com/community/open-source-ntfs-3g/) - Read-write NTFS driver for FUSE.
- [ripgrep](https://github.com/BurntSushi/ripgrep) - Search tool like grep and The Silver Searcher.
- [shellcheck](https://www.shellcheck.net/) - Static analysis and lint tool, for (ba)sh scripts.
- [skopeo](https://github.com/containers/skopeo) - Work with remote images registries.
- [sshfs](https://github.com/libfuse/sshfs) - File system client based on SSH File Transfer Protocol.
- [tcl](https://tcl.tk) - TCL Programming language.
- [tree](http://mama.indstate.edu/users/ice/tree/) - Display directories as trees (with optional color/HTML output).
- [unrar](https://www.rarlab.com/) - Extract, view, and test RAR archives.
@ -72,7 +74,6 @@ $ make @@ -72,7 +74,6 @@ $ make
- [perl-cleaner](https://www.gentoo.org/proj/en/perl/) - User land tool for cleaning up old perl installs.
- [buildah](https://github.com/containers/buildah) - A tool that facilitates building OCI images.
- [podman](https://github.com/containers/libpod/) - Library and podman tool for running OCI-based containers in Pods.
- [skopeo](https://github.com/containers/skopeo) - Command line utility foroperations on container images and image repositories.
- [recoll](https://www.lesbonscomptes.com/recoll/) - A personal full text search package.
- [elogv](https://github.com/gentoo/elogv) - Curses based utility to parse the contents of elogs created by Portage.
- [gentoolkit](https://wiki.gentoo.org/wiki/Project:Portage-Tools) - Collection of administration scripts for Gentoo.
@ -93,7 +94,6 @@ $ make @@ -93,7 +94,6 @@ $ make
- [mpd](https://www.musicpd.org/) - Flexible, powerful, server-side application for playing music.
- [ncmpcpp](https://rybczak.net/ncmpcpp/) - NCurses Music Player Client (Plus Plus).
- [mpv](https://mpv.io/) - Free, open source, and cross-platform media player.
- [sshfs](https://github.com/libfuse/sshfs) - A network filesystem client to connect to SSH servers.
- [fetchmail](https://www.fetchmail.info) - Full-featured, robust, well-documented remote-mail retrieval and forwarding utility.
- [aria2](https://aria2.github.io) - Lightweight multi-protocol & multi-source command-line download utility.
- [connman](https://01.org/connman) - Internet connection daemon.
@ -114,28 +114,27 @@ $ make @@ -114,28 +114,27 @@ $ make
### Applications
- ~~[deepl](https://www.deepl.com/) - DeepL translator.~~
- ~~[devdocs-macos](https://github.com/egoist/devdocs-desktop) - A full-featured desktop app for DevDocs.io.~~
- ~~[antiword](http://www.winfield.demon.nl/) - Utility to read Word (.doc) files.~~
- ~~[docker](https://www.docker.com/) - Pack, ship and run any application as a lightweight container.~~
- ~~[docx2txt](https://docx2txt.sourceforge.io/) - Converts Microsoft Office docx documents to equivalent text documents.~~
- ~~[gimp](https://www.gimp.org/) - GNU Image Manipulation Program.~~
- ~~[guile](https://www.gnu.org/software/guile/) - GNU Ubiquitous Intelligent Language for Extensions.~~
- ~~[ipcalc](http://jodies.de/ipcalc) - Calculate various network masks, etc. from a given IP address.~~
- ~~[mdcat](https://github.com/lunaryorn/mdcat) - Show markdown documents on text terminals.~~
- ~~[odt2txt](https://github.com/dstosberg/odt2txt/) - Convert OpenDocument files to plain text.~~
- ~~[osquery](https://osquery.io) - SQL powered operating system instrumentation and analytics.~~
- ~~[timing](https://timingapp.com/) - Time tracker for MacOS.~~
- ~~[tor-browser](https://www.torproject.org/) - Web browser focusing on security.~~
- [android-file-transfer](https://www.android.com/filetransfer/) - Android File Transfer.
- [ansible](https://www.ansible.com/) - Automate deployment, configuration, and upgrading.
- [ansible-lint](https://github.com/ansible/ansible-lint/) - Checks ansible playbooks for practices and behaviour.
- [antiword](http://www.winfield.demon.nl/) - Utility to read Word (.doc) files.
- [azure-cli](https://docs.microsoft.com/cli/azure/overview) - Microsoft Azure CLI.
- [bash](https://www.gnu.org/software/bash/) - Bourne-Again SHell, a UNIX command interpreter.
- [bat](https://github.com/sharkdp/bat) - Clone of cat(1) with syntax highlighting and Git integration.
- [brave-browser](https://brave.com/) - Brave web browser.
- [coreutils](https://www.gnu.org/software/coreutils) - GNU File, Shell, and Text utilities.
- [curl](https://curl.haxx.se/) - Get a file from an HTTP, HTTPS or FTP server.
- [dash](https://kapeli.com/dash) - Documentation viewer.
- [dive](https://github.com/wagoodman/dive) - Tool for exploring each layer in a docker image.
- [djvu2pdf](https://0x2a.at/site/projects/djvu2pdf/) - Small tool to convert Djvu files to PDF files.
- [docx2txt](https://docx2txt.sourceforge.io/) - Converts Microsoft Office docx documents to equivalent text documents.
- [eslint](https://eslint.org) - AST-based pattern checker for JavaScript.
- [findutils](https://www.gnu.org/software/findutils/) - Collection of GNU find, xargs, and locate.
- [firefox](https://www.mozilla.org/ru/firefox/) - Mozilla Firefox.
- [gawk](https://www.gnu.org/software/gawk/) - GNU awk utility.
@ -149,34 +148,45 @@ $ make @@ -149,34 +148,45 @@ $ make
- [htop](https://hisham.hm/htop/) - Improved top (interactive process viewer).
- [httpie](https://httpie.org/) - User-friendly cURL replacement (command-line HTTP client).
- [hyperfine](https://github.com/sharkdp/hyperfine) - Command-line benchmarking tool.
- [ipcalc](http://jodies.de/ipcalc) - Calculate various network masks, etc. from a given IP address.
- [iterm2](https://www.iterm2.com/) - Terminal emlator.
- [joplin](https://joplinapp.org/) - An open source note taking and to-do application.
- [k3d](https://k3d.io/) - Little helper to run Rancher Lab's k3s in Docker.
- [k9s](https://k9scli.io/) - Kubernetes CLI To Manage Clusters.
- [kubernetes-cli](https://kubernetes.io/) - Kubernetes command-line interface.
- [min](https://github.com/minbrowser/min) - Minimal browser that protects privacy.
- [nativefier](https://github.com/jiahaog/nativefier) - Wrap web apps natively.
- [odt2txt](https://github.com/dstosberg/odt2txt/) - Convert OpenDocument files to plain text.
- [node](https://nodejs.org) - Platform built on V8 to build network applications.
- [osxfuse](https://osxfuse.github.io/) - FUSE for MacOS.
- [p7zip](https://p7zip.sourceforge.io/) - 7-Zip (high compression file archiver) implementation.
- [pandoc](https://pandoc.org/) - Swiss-army knife of markup format conversion.
- [pdftotext](https://www.bluem.net/en/mac/) - PDF to text convertor.
- [polar-bookshelf](https://getpolarized.io/) - Document manager for web pages, textbooks, PDFs, etc.
- [qlcolorcode](https://github.com/anthonygelibert/QLColorCode) - QuickLook plugin for source code with syntax highlighting.
- [qlmarkdown](https://github.com/toland/qlmarkdown) - QuickLook generator for Markdown files.
- [qlstephen](https://whomwah.github.io/qlstephen/) - QuickLook plugin to view plain text files without a file extension.
- [qlvideo](https://github.com/Marginal/QLVideo) - QuickLook plugin to preview video files.
- [quicklook-json](http://www.sagtau.com/quicklookjson.html) - QuickLook plugin to preview JSON files.
- [rlwrap](https://github.com/hanslub42/rlwrap) - Readline wrapper: adds readline support to tools that lack it. Dependency of cheat.sh.
- [skype](https://www.skype.com/) - Video chat, voice call and instant messaging application.
- [tcl-tk](https://tcl.tk) - TCL Programming language.
- [telegram](https://macos.telegram.org/) - Telegram for MacOS.
- [terraform](https://www.terraform.io/) - Tool to build, change, and version infrastructure.
- [terraform-docs](https://github.com/terraform-docs/terraform-docs) - Tool to generate documentation from Terraform modules.
- [terraform-ls](https://github.com/hashicorp/terraform-ls) - Terraform Language Server.
- [tflint](https://github.com/terraform-linters/tflint) - Linter for Terraform files.
- [tfsec](https://tfsec.dev/) - Static analysis security scanner for your terraform code.
- [tig](https://jonas.github.io/tig/) - Text interface for Git repositories.
- [tor-browser](https://www.torproject.org/) - Web browser focusing on security.
- [transmission](https://transmissionbt.com/) - BitTorrent client.
- [tunnelblick](https://www.tunnelblick.net/) - Graphic user interface for OpenVPN.
- [typora](https://typora.io/) - Distractions free markdown editor.
- [vimr](http://vimr.org/) - VimR.
- [vagrant](https://www.vagrantup.com/) - Development environment.
- [virtualbox](https://www.virtualbox.org/) - Free and open-source hosted hypervisor for x86 virtualization.
- [virtualbox-extension-pack](https://www.virtualbox.org/) - AMD64/Intel64 and x86 virtualization.
- [vlc](https://www.videolan.org/vlc/) - VLC media player.
- [watch](https://gitlab.com/procps-ng/procps) - Executes a program periodically, showing output fullscreen.
- [webpquicklook](https://github.com/emin/WebPQuickLook) - QuickLook plugin for WebP image files.
- [wget](https://www.gnu.org/software/wget/) - Internet file retriever.
- [xmind-zen](https://www.xmind.net/zen/) - Mind-mapping tool.
- [xnviewmp](https://www.xnview.com/) - Image viewer.
- [youtube-dl](https://youtube-dl.org/) - Download YouTube videos from the command-line.
### Other

1
playbook.yml

@ -9,6 +9,7 @@ @@ -9,6 +9,7 @@
when: ansible_os_family == "Calculate"
- role: macos
tags: macos
when: ansible_os_family == "Darwin"
- role: fonts

9
roles/macos/tasks/main.yml

@ -10,22 +10,17 @@ @@ -10,22 +10,17 @@
when: brew_is_installed.rc != 0
- name: Add Homebrew taps
homebrew_tap:
community.general.homebrew_tap:
name: "{{ apps_brew_taps }}"
when: apps_brew_taps is defined and (apps_brew_taps | length > 0)
- name: Install applications via Homebrew
homebrew:
community.general.homebrew:
update_homebrew: yes
state: present
name: "{{ apps_brew }}"
ignore_errors: yes
- name: Install applications via Homebrew Cask
homebrew_cask:
name: "{{ apps_brew_cask }}"
ignore_errors: yes
- name: Get default shell
shell: dscl . -read ~/ UserShell | cut -d ' ' -f 2-
register: current_shell

70
roles/macos/vars/main.yml

@ -12,23 +12,27 @@ apps_brew_taps: @@ -12,23 +12,27 @@ apps_brew_taps:
# - dteoh/devdocs
apps_brew:
- android-file-transfer # https://www.android.com/filetransfer/ Android File Transfer.
- ansible # https://www.ansible.com/ Automate deployment, configuration, and upgrading.
- ansible-lint # https://github.com/ansible/ansible-lint/ Checks ansible playbooks for practices and behaviour.
- antiword # http://www.winfield.demon.nl/ Utility to read Word (.doc) files.
# - antiword # http://www.winfield.demon.nl/ Utility to read Word (.doc) files.
- azure-cli # https://docs.microsoft.com/cli/azure/overview Microsoft Azure CLI.
- bat # https://github.com/sharkdp/bat Clone of cat(1) with syntax highlighting and Git integration.
- bash # https://www.gnu.org/software/bash/ Bourne-Again SHell, a UNIX command interpreter.
- brave-browser # https://brave.com/ Brave web browser.
- coreutils # https://www.gnu.org/software/coreutils GNU File, Shell, and Text utilities.
- curl # https://curl.haxx.se/ Get a file from an HTTP, HTTPS or FTP server.
- dfc # https://projects.gw-computing.net/projects/dfc Display graphs and colors of file system space/usage.
- djvu2pdf # https://0x2a.at/site/projects/djvu2pdf/ Small tool to convert Djvu files to PDF files.
- dive # https://github.com/wagoodman/dive Tool for exploring each layer in a docker image.
# - docker # https://www.docker.com/ Pack, ship and run any application as a lightweight container.
- docx2txt # https://docx2txt.sourceforge.io/ Converts Microsoft Office docx documents to equivalent text documents.
- eslint # https://eslint.org AST-based pattern checker for JavaScript.
# - docx2txt # https://docx2txt.sourceforge.io/ Converts Microsoft Office docx documents to equivalent text documents.
- exiftool # https://www.sno.phy.queensu.ca/~phil/exiftool/index.html Perl lib for reading and writing EXIF metadata.
- fd # https://github.com/sharkdp/fd Simple, fast and user-friendly alternative to find.
- findutils # https://www.gnu.org/software/findutils/ Collection of GNU find, xargs, and locate.
- firefox # https://www.mozilla.org/ru/firefox/ Mozilla Firefox.
- gawk # https://www.gnu.org/software/gawk/ GNU awk utility.
# - gimp # https://www.gimp.org/ GNU Image Manipulation Program.
- git # https://git-scm.com Distributed revision control system.
- git-cal # https://github.com/k4rthik/git-cal GitHub-like contributions calendar but on the command-line.
- git-delta # https://github.com/dandavison/delta Syntax-highlighting pager for git and diff output.
@ -44,51 +48,58 @@ apps_brew: @@ -44,51 +48,58 @@ apps_brew:
- httpie # https://httpie.org/ User-friendly cURL replacement (command-line HTTP client).
- hyperfine # https://github.com/sharkdp/hyperfine Command-line benchmarking tool.
- imagemagick # https://www.imagemagick.org/ Tools and libraries to manipulate images in many formats.
- ipcalc # http://jodies.de/ipcalc Calculate various network masks, etc. from a given IP address.
# - ipcalc # http://jodies.de/ipcalc Calculate various network masks, etc. from a given IP address.
- iterm2 # https://www.iterm2.com/ Terminal emlator.
- joplin # https://joplinapp.org/ An open source note taking and to-do application.
- jq # https://stedolan.github.io/jq/ Lightweight and flexible command-line JSON processor.
- k3d # https://k3d.io/ Little helper to run Rancher Lab's k3s in Docker.
- k9s # https://k9scli.io/ Kubernetes CLI To Manage Clusters.
- kubernetes-cli # https://kubernetes.io/ Kubernetes command-line interface.
# - mdcat # https://github.com/lunaryorn/mdcat Show markdown documents on text terminals.
- min # https://github.com/minbrowser/min Minimal browser that protects privacy.
- nativefier # https://github.com/jiahaog/nativefier Wrap web apps natively.
- neovim # https://neovim.io/ Ambitious Vim-fork focused on extensibility and agility.
- nnn # https://github.com/jarun/nnn Tiny, lightning fast, feature-packed file manager.
- node # https://nodejs.org Platform built on V8 to build network applications.
- ntfs-3g # https://www.tuxera.com/community/open-source-ntfs-3g/ Read-write NTFS driver for FUSE.
- odt2txt # https://github.com/dstosberg/odt2txt/ Convert OpenDocument files to plain text.
# - odt2txt # https://github.com/dstosberg/odt2txt/ Convert OpenDocument files to plain text.
# - osquery # https://osquery.io SQL powered operating system instrumentation and analytics.
- osxfuse # https://osxfuse.github.io/ FUSE for MacOS.
- pandoc # https://pandoc.org/ Swiss-army knife of markup format conversion.
- p7zip # https://p7zip.sourceforge.io/ 7-Zip (high compression file archiver) implementation.
- pdftotext # https://www.bluem.net/en/mac/ PDF to text convertor.
- ripgrep # https://github.com/BurntSushi/ripgrep Search tool like grep and The Silver Searcher.
- rlwrap # https://github.com/hanslub42/rlwrap Readline wrapper: adds readline support to tools that lack it. Dependency of cheat.sh.
- shellcheck # https://www.shellcheck.net/ Static analysis and lint tool, for (ba)sh scripts.
- skopeo # https://github.com/containers/skopeo Work with remote images registries.
- skype # https://www.skype.com/ Video chat, voice call and instant messaging application.
- sshfs # https://github.com/libfuse/sshfs File system client based on SSH File Transfer Protocol.
- tcl # https://tcl.tk TCL Programming language.
- tcl-tk # https://tcl.tk TCL Programming language.
- telegram # https://macos.telegram.org/ Telegram for MacOS.
- terraform # https://www.terraform.io/ Tool to build, change, and version infrastructure.
- terraform-docs # https://github.com/terraform-docs/terraform-docs Tool to generate documentation from Terraform modules.
- terraform-ls # https://github.com/hashicorp/terraform-ls Terraform Language Server.
- tflint # https://github.com/terraform-linters/tflint Linter for Terraform files.
- tfsec # https://tfsec.dev/ Static analysis security scanner for your terraform code.
- tig # https://jonas.github.io/tig/ Text interface for Git repositories.
# - tor-browser # https://www.torproject.org/ Web browser focusing on security.
- transmission # https://transmissionbt.com/ BitTorrent client.
- tree # http://mama.indstate.edu/users/ice/tree/ Display directories as trees (with optional color/HTML output).
- tunnelblick # https://www.tunnelblick.net/ Graphic user interface for OpenVPN.
- unrar # https://www.rarlab.com/ Extract, view, and test RAR archives.
- vagrant # https://www.vagrantup.com/ Development environment.
- vifm # https://vifm.info/ Ncurses based file manager with vi like keybindings.
- virtualbox # https://www.virtualbox.org/ Free and open-source hosted hypervisor for x86 virtualization.
- virtualbox-extension-pack # https://www.virtualbox.org/ AMD64/Intel64 and x86 virtualization.
- vlc # https://www.videolan.org/vlc/ VLC media player.
- w3m # https://w3m.sourceforge.io/ Pager/text based browser.
- watch # https://gitlab.com/procps-ng/procps Executes a program periodically, showing output fullscreen.
- webp # https://developers.google.com/speed/webp/ Image format providing lossless and lossy compression for web images.
- wget # https://www.gnu.org/software/wget/ Internet file retriever.
- rlwrap # https://github.com/hanslub42/rlwrap Readline wrapper: adds readline support to tools that lack it. Dependency of cheat.sh.
apps_brew_cask:
- android-file-transfer # https://www.android.com/filetransfer/ Android File Transfer.
- brave-browser # https://brave.com/ Brave web browser.
- dash # https://kapeli.com/dash Documentation viewer.
# - deepl # https://www.deepl.com/ DeepL translator.
# - devdocs-macos # https://github.com/egoist/devdocs-desktop A full-featured desktop app for DevDocs.io.
- firefox # https://www.mozilla.org/ru/firefox/ Mozilla Firefox.
# - gimp # https://www.gimp.org/ GNU Image Manipulation Program.
- iterm2 # https://www.iterm2.com/ Terminal emlator.
- joplin # https://joplinapp.org/ An open source note taking and to-do application.
- osxfuse # https://osxfuse.github.io/ FUSE for MacOS.
- pdftotext # https://www.bluem.net/en/mac/ PDF to text convertor.
- polar-bookshelf # https://getpolarized.io/ Document manager for web pages, textbooks, PDFs, etc.
- tcl # https://tcl.tk TCL Programming language.
- telegram # https://macos.telegram.org/ Telegram for MacOS.
- tor-browser # https://www.torproject.org/ Web browser focusing on security.
- transmission # https://transmissionbt.com/ BitTorrent client.
- tunnelblick # https://www.tunnelblick.net/ Graphic user interface for OpenVPN.
- typora # https://typora.io/ Distractions free markdown editor.
- vimr # http://vimr.org/ VimR.
- vlc # https://www.videolan.org/vlc/ VLC media player.
- xmind-zen # https://www.xmind.net/zen/ Mind-mapping tool.
- xnviewmp # https://www.xnview.com/ Image viewer.
- youtube-dl # https://youtube-dl.org/ Download YouTube videos from the command-line.
# Finder preview
- qlcolorcode # https://github.com/anthonygelibert/QLColorCode QuickLook plugin for source code with syntax highlighting.
@ -98,8 +109,7 @@ apps_brew_cask: @@ -98,8 +109,7 @@ apps_brew_cask:
- qlstephen # https://whomwah.github.io/qlstephen/ QuickLook plugin to view plain text files without a file extension.
- webpquicklook # https://github.com/emin/WebPQuickLook QuickLook plugin for WebP image files.
# Commercial applications
# - timing # https://timingapp.com/ Time tracker for MacOS.
apps_brew_cask:
apps_dmg:
# - name: "Brave Browser"

Loading…
Cancel
Save