infinum_setup 0.1.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +31 -72
- data/exe/infinum_setup +1 -0
- data/lib/infinum_setup/base.rb +34 -89
- data/lib/infinum_setup/general.rb +0 -18
- data/lib/infinum_setup/program.rb +65 -0
- data/lib/infinum_setup/team.rb +1 -5
- data/lib/infinum_setup/version.rb +1 -1
- data/lib/infinum_setup.rb +1 -0
- data/programs/android.yml +9 -12
- data/programs/design.yml +9 -12
- data/programs/general.yml +135 -26
- data/programs/ios.yml +9 -12
- data/programs/javascript.yml +9 -15
- data/programs/pm.yml +9 -12
- data/programs/rails.yml +43 -21
- data/scripts/ruby.sh +10 -12
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 57fff117c55d30e9a90dd2231855b0dc761ec75c
|
4
|
+
data.tar.gz: 98e7bb6ccef21afd9423dff514b6af822f568cbc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 05df732d6b2f67ef46d1b2ae127464cc49e1c70a4c2f4c3ab0847ac331ef1d3cbb21b754009815f142705db131b690315503a8688a9d890941156df391ca697e
|
7
|
+
data.tar.gz: 802e904235185bb0a72ab0d7dc4f79cddf66effb650b6d16c579f3cdb9e7a440f545e80f0d6f0ed509236b1d65096310d2f2e6278b695c776300562cb056f89b
|
data/README.md
CHANGED
@@ -20,95 +20,54 @@ For a more advanced usage you can use:
|
|
20
20
|
|
21
21
|
This is an interactive mode where you will be asked if you want to install optional programs/packages
|
22
22
|
|
23
|
+
$ infinum_setup --verbose
|
24
|
+
|
25
|
+
This will print out all the commands that are run
|
26
|
+
|
23
27
|
## Development
|
24
28
|
|
29
|
+
During setup two config files are loaded: `general.yml` and `#{team}.yml`. These files are downloaded from the master branch so I do not need to release new gem versions every time we update one of those files :)
|
30
|
+
|
25
31
|
### Content of program/#{team}.yml files
|
26
32
|
|
27
33
|
``` ruby
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
optional:
|
38
|
-
- sequel-pro
|
39
|
-
- - flycut
|
40
|
-
- jumpcut
|
41
|
-
- postico
|
42
|
-
gem:
|
43
|
-
mandatory:
|
44
|
-
optional:
|
45
|
-
- bundler
|
46
|
-
- rails
|
47
|
-
command:
|
48
|
-
mandatory:
|
49
|
-
optional:
|
50
|
-
pow: curl get.pow.cx | sh
|
34
|
+
{program_name}:
|
35
|
+
type: brew/cask/gem/npm/command
|
36
|
+
mandatory: true/false
|
37
|
+
install_if_not_interactive: true/false
|
38
|
+
program: {program}
|
39
|
+
pre_install_comment: A comment to print out before installing
|
40
|
+
post_install_comment: A comment to print out after install
|
41
|
+
post_install_command: eg. open the app
|
42
|
+
script: a script to be run if type is `command`
|
51
43
|
```
|
52
44
|
|
53
|
-
###
|
54
|
-
|
55
|
-
There are (for now) 5 top level commands you can use:
|
45
|
+
### command type
|
56
46
|
|
57
|
-
|
58
|
-
- cask
|
59
|
-
- gem
|
60
|
-
- npm
|
61
|
-
- command
|
47
|
+
There are (for now) 5 types of programs with which to install:
|
62
48
|
|
63
|
-
|
49
|
+
- brew => `brew install {program}`
|
50
|
+
- cask => `brew cask install {program}`
|
51
|
+
- gem => `gem install {program}`
|
52
|
+
- npm => `npm -g install {program}`
|
53
|
+
- command => `{script}`
|
64
54
|
|
65
|
-
|
66
|
-
If you feel like a program is a nice to have but not mandatory put it under `optional` key. If `infinum_setup` is run in interactive mode a user will be prompted for each optional program.
|
55
|
+
### Mandatory
|
67
56
|
|
68
|
-
|
69
|
-
|
70
|
-
For each of the top level commands except `command`, the script requires an array of programs.
|
71
|
-
|
72
|
-
``` ruby
|
73
|
-
cask:
|
74
|
-
optional:
|
75
|
-
- skype
|
76
|
-
- vcl
|
77
|
-
```
|
57
|
+
Set this setting to `true` if you feel like a program must be installed.
|
58
|
+
If `infinum_setup` is run in interactive mode a user will be prompted for each non mandatroy program.
|
78
59
|
|
79
|
-
|
60
|
+
### Install if not interactive
|
80
61
|
|
81
|
-
|
82
|
-
cask:
|
83
|
-
optional:
|
84
|
-
- - google-chrome
|
85
|
-
- firefox
|
86
|
-
- slack
|
87
|
-
```
|
62
|
+
This will come into effect if a program is not mandatory and the `infinum_setup` is not run in interactive mode. With this setting set to `true` the program will be installed otherwise it will be skipped.
|
88
63
|
|
89
|
-
|
90
|
-
Select programs to install (Use arrow keys, press Space to select and Enter to finish)
|
91
|
-
‣ ⬡ google-chrome
|
92
|
-
⬡ firefox
|
93
|
-
```
|
64
|
+
### Pre/post install comment
|
94
65
|
|
95
|
-
|
66
|
+
Comments to print out before/after installation.
|
96
67
|
|
97
|
-
|
98
|
-
command:
|
99
|
-
mandatory:
|
100
|
-
ruby: curl -L https://raw.github.com/infinum/infinum_setup/master/scripts/ruby.sh | sh
|
101
|
-
optional:
|
102
|
-
OhMyZsh: curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh
|
103
|
-
```
|
68
|
+
### Post install command
|
104
69
|
|
105
|
-
|
106
|
-
Installing ruby
|
107
|
-
curl -L https://raw.github.com/infinum/infinum_setup/master/scripts/ruby.sh | sh
|
108
|
-
Install OhMyZsh Yes
|
109
|
-
Installing OhMyZsh
|
110
|
-
curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh
|
111
|
-
```
|
70
|
+
Use this if you want to run a custom command after installation. Eg. `open /Applications/Alfred\ 3.app`
|
112
71
|
|
113
72
|
### Writing your own scripts
|
114
73
|
|
data/exe/infinum_setup
CHANGED
@@ -15,6 +15,7 @@ command :install do |c|
|
|
15
15
|
c.syntax = 'infinum_setup'
|
16
16
|
c.description = 'Setups your laptop'
|
17
17
|
c.option '-i', '--interactive', 'For expierienced users'
|
18
|
+
c.option '-V', '--verbose', 'Print out commands'
|
18
19
|
c.option '-s', '--simulate', 'Try before you buy'
|
19
20
|
c.action do |_args, options|
|
20
21
|
options.team = InfinumSetup::Install.select_team
|
data/lib/infinum_setup/base.rb
CHANGED
@@ -8,110 +8,55 @@ module InfinumSetup
|
|
8
8
|
new(options).call
|
9
9
|
end
|
10
10
|
|
11
|
-
private
|
12
|
-
|
13
11
|
def call
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
def simulate?
|
22
|
-
@options.simulate
|
23
|
-
end
|
24
|
-
|
25
|
-
def prompt
|
26
|
-
@prompt ||= TTY::Prompt.new
|
27
|
-
end
|
28
|
-
|
29
|
-
def execute(cmd)
|
30
|
-
if simulate?
|
31
|
-
prompt.warn cmd
|
32
|
-
else
|
33
|
-
`#{cmd}`
|
12
|
+
programs.each do |program|
|
13
|
+
next unless will_install?(program)
|
14
|
+
puts
|
15
|
+
prompt.say("#{program.name} -- #{program.pre_install_comment}", color: :cyan) if program.pre_install_comment
|
16
|
+
next if skip_install?(program)
|
17
|
+
program.install
|
34
18
|
end
|
35
19
|
end
|
36
20
|
|
37
|
-
|
38
|
-
commands.each do |command_name, command_hash|
|
39
|
-
next unless command_hash
|
40
|
-
command_hash.each do |optionality, programs|
|
41
|
-
next unless programs
|
42
|
-
case programs
|
43
|
-
when Hash
|
44
|
-
programs.each do |program, command|
|
45
|
-
case optionality
|
46
|
-
when 'mandatory' then install_program(program, command)
|
47
|
-
when 'optional' then install_if_agree(program, command)
|
48
|
-
end
|
49
|
-
end
|
50
|
-
else
|
51
|
-
programs.each do |program|
|
52
|
-
case optionality
|
53
|
-
when 'mandatory' then install_program(program, command_name)
|
54
|
-
when 'optional' then install_if_agree(program, command_name)
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
59
|
-
end
|
60
|
-
end
|
21
|
+
private
|
61
22
|
|
62
|
-
|
63
|
-
|
23
|
+
attr_reader :options
|
24
|
+
|
25
|
+
def programs(team = 'general')
|
26
|
+
@programs ||=
|
64
27
|
if InfinumSetup.dev?
|
65
28
|
YAML.load_file("programs/#{team}.yml")
|
66
29
|
else
|
67
|
-
YAML.load(
|
30
|
+
YAML.load(
|
31
|
+
open("https://raw.github.com/infinum/infinum_setup/master/programs/#{team}.yml")
|
32
|
+
)
|
33
|
+
end.map do |name, settings|
|
34
|
+
Program.new(name, settings, options, prompt)
|
68
35
|
end
|
69
36
|
end
|
70
37
|
|
71
|
-
def
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
install_program(programs, command)
|
76
|
-
when Hash
|
77
|
-
return if interactive? && !prompt.yes?("Install #{programs.keys.first}")
|
78
|
-
install_program(programs.keys.first, programs.values.first)
|
79
|
-
when Array
|
80
|
-
if interactive?
|
81
|
-
choices = prompt.multi_select('Select programs to install', programs)
|
82
|
-
choices.each { |choice| install_program(choice, command) }
|
83
|
-
else
|
84
|
-
install_program(programs.first, command)
|
85
|
-
end
|
86
|
-
end
|
38
|
+
def will_install?(program)
|
39
|
+
program.mandatory? ||
|
40
|
+
(!program.mandatory? && interactive?) ||
|
41
|
+
(!program.mandatory? && !interactive? && program.install_if_not_interactive?)
|
87
42
|
end
|
88
43
|
|
89
|
-
def
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
when 'brew'
|
94
|
-
execute "brew install #{program}"
|
95
|
-
when 'cask'
|
96
|
-
execute "brew cask install #{program}"
|
97
|
-
when 'gem'
|
98
|
-
execute "gem install #{program} --no-document"
|
99
|
-
when 'npm'
|
100
|
-
execute "npm -g install #{program}"
|
101
|
-
else
|
102
|
-
execute command
|
103
|
-
end
|
44
|
+
def skip_install?(program)
|
45
|
+
!program.mandatory? &&
|
46
|
+
interactive? &&
|
47
|
+
!prompt.yes?("#{program.name} -- Install #{program.name}")
|
104
48
|
end
|
105
49
|
|
106
|
-
def
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
50
|
+
def prompt
|
51
|
+
@prompt ||= TTY::Prompt.new
|
52
|
+
end
|
53
|
+
|
54
|
+
def interactive?
|
55
|
+
options.interactive
|
56
|
+
end
|
57
|
+
|
58
|
+
def simulate?
|
59
|
+
options.simulate
|
115
60
|
end
|
116
61
|
end
|
117
62
|
end
|
@@ -1,22 +1,4 @@
|
|
1
1
|
module InfinumSetup
|
2
2
|
class General < Base
|
3
|
-
def call
|
4
|
-
install_xcode_select
|
5
|
-
install_brew
|
6
|
-
install_programs
|
7
|
-
end
|
8
|
-
|
9
|
-
private
|
10
|
-
|
11
|
-
def install_xcode_select
|
12
|
-
prompt.ok 'Installing xcode-select'
|
13
|
-
execute %(sudo xcode-select --install)
|
14
|
-
end
|
15
|
-
|
16
|
-
def install_brew
|
17
|
-
return if !simulate? && TTY::Which.exist?('brew')
|
18
|
-
prompt.ok 'Installing brew'
|
19
|
-
execute %(/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)")
|
20
|
-
end
|
21
3
|
end
|
22
4
|
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
module InfinumSetup
|
2
|
+
class Program
|
3
|
+
VALID_KEYS = [
|
4
|
+
:mandatory, :pre_install_comment, :post_install_comment, :type, :program, :script,
|
5
|
+
:install_if_not_interactive, :post_install_command
|
6
|
+
].freeze
|
7
|
+
|
8
|
+
attr_reader :settings, :name, :options, :prompt
|
9
|
+
|
10
|
+
def initialize(name, settings, options, prompt)
|
11
|
+
@name = name
|
12
|
+
@settings = settings
|
13
|
+
@options = options
|
14
|
+
@prompt = prompt
|
15
|
+
end
|
16
|
+
|
17
|
+
def valid?
|
18
|
+
settings.keys.all? { |key| VALID_KEYS.include?(key.to_sym) }
|
19
|
+
end
|
20
|
+
|
21
|
+
def install
|
22
|
+
prompt.ok "#{name} -- Installing"
|
23
|
+
execute_type
|
24
|
+
prompt.say("#{name} -- #{post_install_comment}", color: :cyan) if post_install_comment
|
25
|
+
execute(post_install_command) if post_install_command
|
26
|
+
end
|
27
|
+
|
28
|
+
def mandatory?
|
29
|
+
mandatory
|
30
|
+
end
|
31
|
+
|
32
|
+
def install_if_not_interactive?
|
33
|
+
install_if_not_interactive
|
34
|
+
end
|
35
|
+
|
36
|
+
VALID_KEYS.each do |key|
|
37
|
+
define_method key do
|
38
|
+
settings[key.to_s]
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
private
|
43
|
+
|
44
|
+
def execute_type
|
45
|
+
case type
|
46
|
+
when 'brew' then execute "brew install #{program}"
|
47
|
+
when 'cask' then execute "brew cask install #{program}"
|
48
|
+
when 'gem' then execute %(export PATH="$HOME/.rbenv/bin:$PATH";eval "$(rbenv init -)";gem install #{program} --no-document)
|
49
|
+
when 'npm' then execute "npm -g install #{program}"
|
50
|
+
when 'script' then execute script
|
51
|
+
else
|
52
|
+
raise "Unknown type #{type}"
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def execute(cmd)
|
57
|
+
if options.simulate
|
58
|
+
prompt.warn "#{name} -- #{cmd}"
|
59
|
+
else
|
60
|
+
prompt.warn cmd if options.verbose
|
61
|
+
puts `#{cmd}`
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
data/lib/infinum_setup/team.rb
CHANGED
data/lib/infinum_setup.rb
CHANGED
data/programs/android.yml
CHANGED
@@ -1,12 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
command:
|
11
|
-
mandatory:
|
12
|
-
optional:
|
1
|
+
{program_name}:
|
2
|
+
type: brew/cask/gem/npm/command
|
3
|
+
mandatory: true/false
|
4
|
+
install_if_not_interactive: true/false
|
5
|
+
program: {program}
|
6
|
+
pre_install_comment: A comment to print out before installing
|
7
|
+
post_install_comment: A comment to print out after install
|
8
|
+
post_install_command: eg. open the app
|
9
|
+
script: a script to be run if type is `command`
|
data/programs/design.yml
CHANGED
@@ -1,12 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
command:
|
11
|
-
mandatory:
|
12
|
-
optional:
|
1
|
+
{program_name}:
|
2
|
+
type: brew/cask/gem/npm/command
|
3
|
+
mandatory: true/false
|
4
|
+
install_if_not_interactive: true/false
|
5
|
+
program: {program}
|
6
|
+
pre_install_comment: A comment to print out before installing
|
7
|
+
post_install_comment: A comment to print out after install
|
8
|
+
post_install_command: eg. open the app
|
9
|
+
script: a script to be run if type is `command`
|
data/programs/general.yml
CHANGED
@@ -1,27 +1,136 @@
|
|
1
|
+
xcode-select:
|
2
|
+
mandatory: true
|
3
|
+
type: script
|
4
|
+
script: sudo xcode-select --install
|
5
|
+
post_install_comment: A window will popup asking you if you want to install only esential tools or the whole XCode.
|
1
6
|
brew:
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
mandatory:
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
7
|
+
pre_install_comment: If after finishing with xcode installation the last line says "brew -- Installing" just hit enter!
|
8
|
+
mandatory: true
|
9
|
+
type: script
|
10
|
+
script: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
|
11
|
+
git:
|
12
|
+
mandatory: true
|
13
|
+
type: brew
|
14
|
+
program: git
|
15
|
+
rbenv:
|
16
|
+
mandatory: true
|
17
|
+
type: brew
|
18
|
+
program: rbenv
|
19
|
+
readline:
|
20
|
+
mandatory: true
|
21
|
+
type: brew
|
22
|
+
program: readline
|
23
|
+
libyaml:
|
24
|
+
mandatory: true
|
25
|
+
type: brew
|
26
|
+
program: libyaml
|
27
|
+
libffi:
|
28
|
+
mandatory: true
|
29
|
+
type: brew
|
30
|
+
program: libffi
|
31
|
+
node:
|
32
|
+
mandatory: true
|
33
|
+
type: brew
|
34
|
+
program: node
|
35
|
+
OhMyZsh:
|
36
|
+
pre_install_comment: A delightful community-driven framework for managing your zsh configuration.
|
37
|
+
post_install_comment: Take a look at https://github.com/robbyrussell/oh-my-zsh/wiki/Plugins-Overview for plugins overview
|
38
|
+
mandatory: false
|
39
|
+
install_if_not_interactive: true
|
40
|
+
type: script
|
41
|
+
script: curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh
|
42
|
+
ruby:
|
43
|
+
pre_install_comment: This will install the lastest ruby version and add rbenv to your .bash_profile and .zshrc files. Go grab a coffee
|
44
|
+
mandatory: true
|
45
|
+
type: script
|
46
|
+
script: curl -L https://raw.github.com/infinum/infinum_setup/master/scripts/ruby.sh | sh
|
47
|
+
z:
|
48
|
+
pre_install_comment: After a short learning phase, z will take you to the most 'recent' directory that matches ALL of the regexes given on the command line, in order.
|
49
|
+
post_install_comment: "Please read 'brew info z' for how to enable it. How to use: https://github.com/rupa/z"
|
50
|
+
mandatory: false
|
51
|
+
install_if_not_interactive: true
|
52
|
+
type: brew
|
53
|
+
program: z
|
54
|
+
alfred:
|
55
|
+
pre_install_comment: App for Mac OS X which boosts your efficiency with hotkeys, keywords, text expansion and more.
|
56
|
+
post_install_comment: Please start alfred once, enable it and disable spotlight (http://apple.stackexchange.com/a/177987). Recommended to enable clipboard history
|
57
|
+
mandatory: false
|
58
|
+
install_if_not_interactive: true
|
59
|
+
type: cask
|
60
|
+
program: alfred
|
61
|
+
post_install_command: open /Application/Alfred\ 3.app
|
62
|
+
flycut:
|
63
|
+
pre_install_comment: Clean and simple clipboard manager for developers
|
64
|
+
mandatory: false
|
65
|
+
install_if_not_interactive: true
|
66
|
+
type: cask
|
67
|
+
program: flycut
|
68
|
+
post_install_command: open /Application/Flycut.app
|
69
|
+
chrome:
|
70
|
+
mandatory: false
|
71
|
+
install_if_not_interactive: true
|
72
|
+
type: cask
|
73
|
+
program: google-chrome
|
74
|
+
post_install_command: open /Application/Google\ Chrome.app
|
75
|
+
firefox:
|
76
|
+
mandatory: false
|
77
|
+
install_if_not_interactive: false
|
78
|
+
type: cask
|
79
|
+
program: firefox
|
80
|
+
post_install_command: open /Application/Firefox.app
|
81
|
+
dropbox:
|
82
|
+
mandatory: false
|
83
|
+
install_if_not_interactive: false
|
84
|
+
type: cask
|
85
|
+
program: dropbox
|
86
|
+
post_install_command: open /Application/Dropbox.app
|
87
|
+
google_drive:
|
88
|
+
mandatory: false
|
89
|
+
install_if_not_interactive: false
|
90
|
+
type: cask
|
91
|
+
program: google-drive
|
92
|
+
post_install_command: open /Application/Google\ Drive.app
|
93
|
+
spectacle:
|
94
|
+
pre_install_comment: Window control with simple and customizable keyboard shortcuts
|
95
|
+
post_install_comment: "How to use: https://github.com/eczarny/spectacle#keyboard-shortcuts"
|
96
|
+
mandatory: false
|
97
|
+
install_if_not_interactive: true
|
98
|
+
type: cask
|
99
|
+
program: spectacle
|
100
|
+
post_install_command: open /Application/Spectacle.app
|
101
|
+
skype:
|
102
|
+
mandatory: false
|
103
|
+
install_if_not_interactive: false
|
104
|
+
type: cask
|
105
|
+
program: skype
|
106
|
+
# post_install_command: open /Application/Skype.app
|
107
|
+
atom:
|
108
|
+
mandatory: false
|
109
|
+
install_if_not_interactive: true
|
110
|
+
type: cask
|
111
|
+
program: atom
|
112
|
+
# post_install_command: open /Application/Atom.app
|
113
|
+
sublime-text:
|
114
|
+
mandatory: false
|
115
|
+
install_if_not_interactive: false
|
116
|
+
type: cask
|
117
|
+
program: sublime-text
|
118
|
+
# post_install_command: open /Application/Sublime\ Text.app
|
119
|
+
vlc:
|
120
|
+
mandatory: false
|
121
|
+
install_if_not_interactive: true
|
122
|
+
type: cask
|
123
|
+
program: vlc
|
124
|
+
the-unarchiver:
|
125
|
+
pre_install_comment: For extracting from archives
|
126
|
+
mandatory: false
|
127
|
+
install_if_not_interactive: true
|
128
|
+
type: cask
|
129
|
+
program: the-unarchiver
|
130
|
+
flux:
|
131
|
+
pre_install_comment: Flux makes the color of your computer's display adapt to the time of day, warm at night and like sunlight during the day.
|
132
|
+
mandatory: false
|
133
|
+
install_if_not_interactive: true
|
134
|
+
type: cask
|
135
|
+
program: flux
|
136
|
+
post_install_command: open /Application/Flux.app
|
data/programs/ios.yml
CHANGED
@@ -1,12 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
command:
|
11
|
-
mandatory:
|
12
|
-
optional:
|
1
|
+
{program_name}:
|
2
|
+
type: brew/cask/gem/npm/command
|
3
|
+
mandatory: true/false
|
4
|
+
install_if_not_interactive: true/false
|
5
|
+
program: {program}
|
6
|
+
pre_install_comment: A comment to print out before installing
|
7
|
+
post_install_comment: A comment to print out after install
|
8
|
+
post_install_command: eg. open the app
|
9
|
+
script: a script to be run if type is `command`
|
data/programs/javascript.yml
CHANGED
@@ -1,15 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
npm:
|
11
|
-
mandatory:
|
12
|
-
optional:
|
13
|
-
command:
|
14
|
-
mandatory:
|
15
|
-
optional:
|
1
|
+
{program_name}:
|
2
|
+
type: brew/cask/gem/npm/command
|
3
|
+
mandatory: true/false
|
4
|
+
install_if_not_interactive: true/false
|
5
|
+
program: {program}
|
6
|
+
pre_install_comment: A comment to print out before installing
|
7
|
+
post_install_comment: A comment to print out after install
|
8
|
+
post_install_command: eg. open the app
|
9
|
+
script: a script to be run if type is `command`
|
data/programs/pm.yml
CHANGED
@@ -1,12 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
command:
|
11
|
-
mandatory:
|
12
|
-
optional:
|
1
|
+
{program_name}:
|
2
|
+
type: brew/cask/gem/npm/command
|
3
|
+
mandatory: true/false
|
4
|
+
install_if_not_interactive: true/false
|
5
|
+
program: {program}
|
6
|
+
pre_install_comment: A comment to print out before installing
|
7
|
+
post_install_comment: A comment to print out after install
|
8
|
+
post_install_command: eg. open the app
|
9
|
+
script: a script to be run if type is `command`
|
data/programs/rails.yml
CHANGED
@@ -1,21 +1,43 @@
|
|
1
|
-
|
2
|
-
mandatory:
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
mandatory:
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
1
|
+
bundler:
|
2
|
+
mandatory: true
|
3
|
+
type: gem
|
4
|
+
program: bundler
|
5
|
+
rails:
|
6
|
+
mandatory: true
|
7
|
+
type: gem
|
8
|
+
program: rails
|
9
|
+
imagemagick:
|
10
|
+
mandatory: true
|
11
|
+
type: brew
|
12
|
+
program: imagemagick
|
13
|
+
mysql:
|
14
|
+
mandatory: true
|
15
|
+
type: brew
|
16
|
+
program: mysql
|
17
|
+
postgresql:
|
18
|
+
mandatory: true
|
19
|
+
type: brew
|
20
|
+
program: postgresql
|
21
|
+
sequel-pro:
|
22
|
+
pre_install_comment: Sequel Pro is a fast, easy-to-use Mac database management application for working with MySQL databases.
|
23
|
+
mandatory: false
|
24
|
+
install_if_not_interactive: true
|
25
|
+
type: cask
|
26
|
+
program: sequel-pro
|
27
|
+
postico:
|
28
|
+
pre_install_comment: A Modern PostgreSQL Client for the Mac
|
29
|
+
post_install_comment: Please ask your team lead to give you the licence for postico
|
30
|
+
mandatory: false
|
31
|
+
install_if_not_interactive: true
|
32
|
+
type: cask
|
33
|
+
program: postico
|
34
|
+
gitkraken:
|
35
|
+
pre_install_comment: Modern Git GUI
|
36
|
+
mandatory: false
|
37
|
+
install_if_not_interactive: true
|
38
|
+
type: cask
|
39
|
+
program: gitkraken
|
40
|
+
pow:
|
41
|
+
mandatory: true
|
42
|
+
type: script
|
43
|
+
script: curl get.pow.cx | sh
|
data/scripts/ruby.sh
CHANGED
@@ -1,5 +1,15 @@
|
|
1
1
|
#!/usr/bin/env bash
|
2
2
|
|
3
|
+
if ! grep -qs "rbenv init" ~/.bash_profile; then
|
4
|
+
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
|
5
|
+
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
|
6
|
+
fi
|
7
|
+
|
8
|
+
if ! grep -qs "rbenv init" ~/.zshrc; then
|
9
|
+
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
|
10
|
+
echo 'eval "$(rbenv init -)"' >> ~/.zshrc
|
11
|
+
fi
|
12
|
+
|
3
13
|
LATEST_RUBY_VERSION=`rbenv install --list | grep -v - | tail -1 | tr -d '[[:space:]]'`
|
4
14
|
echo "Installing Ruby $LATEST_RUBY_VERSION"
|
5
15
|
|
@@ -8,15 +18,3 @@ rbenv install $LATEST_RUBY_VERSION
|
|
8
18
|
echo "Setting $LATEST_RUBY_VERSION to global"
|
9
19
|
rbenv global $LATEST_RUBY_VERSION
|
10
20
|
rbenv rehash
|
11
|
-
|
12
|
-
if ! grep -qs "rbenv init" ~/.bashrc; then
|
13
|
-
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
|
14
|
-
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
|
15
|
-
eval "$(rbenv init -)"
|
16
|
-
fi
|
17
|
-
|
18
|
-
if ! grep -qs "rbenv init" ~/.zshrc; then
|
19
|
-
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
|
20
|
-
echo 'eval "$(rbenv init -)"' >> ~/.zshrc
|
21
|
-
eval "$(rbenv init -)"
|
22
|
-
fi
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: infinum_setup
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stjepan Hadjic
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-02-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -132,6 +132,7 @@ files:
|
|
132
132
|
- lib/infinum_setup/base.rb
|
133
133
|
- lib/infinum_setup/general.rb
|
134
134
|
- lib/infinum_setup/install.rb
|
135
|
+
- lib/infinum_setup/program.rb
|
135
136
|
- lib/infinum_setup/team.rb
|
136
137
|
- lib/infinum_setup/version.rb
|
137
138
|
- programs/android.yml
|