diff --git a/states/sublimetext/defaults.yaml b/states/sublimetext/defaults.yaml index 012f75a..42f34ac 100644 --- a/states/sublimetext/defaults.yaml +++ b/states/sublimetext/defaults.yaml @@ -1,8 +1,9 @@ --- sublimetext: fetch_url: https://paulbsd-pub.s3.fr-par.scw.cloud/sublimetext - archive_name: sublime_text_build_4107_x64_activated.tar.bz2 + archive_name: sublime_text_build_%s_x64_activated.tar.bz2 install_dir: /opt install_subdir: sublime_text + version: 4107 keys_file: sublime_text_keys.txt iconsize: 48x48 diff --git a/states/sublimetext/init.sls b/states/sublimetext/init.sls index 84c6caa..b20e270 100644 --- a/states/sublimetext/init.sls +++ b/states/sublimetext/init.sls @@ -1,45 +1,4 @@ --- {%- from "sublimetext/map.jinja" import sublimetext with context %} -sublimetext-extract-archive: - archive.extracted: - - name: {{ sublimetext.install_dir }} - - source: {{ sublimetext.fetch_url }}/{{ sublimetext.archive_name }} - - skip_verify: true - - options: xj - - list_options: bzcat - - user: root - - group: root - - mode: 0755 - - if_missing: {{ sublimetext.install_dir }}/{{ sublimetext.install_subdir }} - -sublimetext-licence-key: - file.managed: - - name: {{ sublimetext.install_dir }}/{{ sublimetext.install_subdir }}/{{ sublimetext.keys_file }} - - source: salt://sublimetext/{{ sublimetext.keys_file }}.j2 - - template: jinja - - user: root - - group: root - - mode: 0644 - - require: - - archive: sublimetext-extract-archive - -sublimetext-desktop-entry: - file.managed: - - name: /usr/share/applications/sublime_text.desktop - - source: salt://sublimetext/sublime_text.desktop.j2 - - template: jinja - - user: root - - group: root - - mode: 0644 - - require: - - archive: sublimetext-extract-archive - -sublimetext-symlink: - file.symlink: - - name: /usr/bin/sublime_text - - target: {{ sublimetext.install_dir }}/{{ sublimetext.install_subdir }}/sublime_text - - user: root - - group: root - - mode: 0755 - - require: - - archive: sublimetext-extract-archive \ No newline at end of file +include: + - .install \ No newline at end of file diff --git a/states/sublimetext/install.sls b/states/sublimetext/install.sls new file mode 100644 index 0000000..a94edc9 --- /dev/null +++ b/states/sublimetext/install.sls @@ -0,0 +1,57 @@ +--- +{%- from "sublimetext/map.jinja" import sublimetext with context %} +sublimetext-extract-archive: + archive.extracted: + - name: {{ sublimetext.install_dir }}/{{ sublimetext.install_subdir }}_{{ sublimetext.version }} + - source: {{ sublimetext.fetch_url }}/{{ sublimetext.archive_name|format(sublimetext.version) }} + - skip_verify: true + - options: xj --transform 's/^sublime_text//g' + - enforce_toplevel: false + - list_options: bzcat + - user: root + - group: root + - mode: 0755 + - if_missing: {{ sublimetext.install_dir }}/{{ sublimetext.install_subdir }}_{{ sublimetext.version }} + +sublimetext-install-symlink: + file.symlink: + - name: {{ sublimetext.install_dir }}/{{ sublimetext.install_subdir }} + - target: {{ sublimetext.install_dir }}/{{ sublimetext.install_subdir }}_{{ sublimetext.version }} + - user: root + - group: root + - mode: 0755 + - require: + - archive: sublimetext-extract-archive + +sublimetext-binary-symlink: + file.symlink: + - name: /usr/bin/sublime_text + - target: {{ sublimetext.install_dir }}/{{ sublimetext.install_subdir }}/sublime_text + - user: root + - group: root + - mode: 0755 + - require: + - archive: sublimetext-extract-archive + +sublimetext-licence-key: + file.managed: + - name: {{ sublimetext.install_dir }}/{{ sublimetext.install_subdir }}_{{ sublimetext.version }}/{{ sublimetext.keys_file }} + - source: salt://sublimetext/{{ sublimetext.keys_file }}.j2 + - template: jinja + - user: root + - group: root + - mode: 0644 + - require: + - archive: sublimetext-extract-archive + +sublimetext-desktop-entry: + file.managed: + - name: /usr/share/applications/sublime_text.desktop + - source: salt://sublimetext/sublime_text.desktop.j2 + - template: jinja + - user: root + - group: root + - mode: 0644 + - require: + - archive: sublimetext-extract-archive +