|
|
|
- name: Make a list with packages with custom USE flags
|
|
|
|
template:
|
|
|
|
src: packages.j2
|
|
|
|
dest: /etc/portage/package.use/custom.clt
|
|
|
|
vars:
|
|
|
|
packages: "{{ gentoo.use.custom }}"
|
|
|
|
|
|
|
|
- name: Make directories for packages with custom ENVs
|
|
|
|
file:
|
|
|
|
path: "/etc/portage/{{ item }}"
|
|
|
|
state: directory
|
|
|
|
loop:
|
|
|
|
- env
|
|
|
|
- package.env
|
|
|
|
|
|
|
|
- name: Make configure files with custom ENV's settings
|
|
|
|
template:
|
|
|
|
src: "portage/env/{{ item.template }}"
|
|
|
|
dest: "/etc/portage/env/{{ item.template }}"
|
|
|
|
loop: "{{ gentoo.use.env }}"
|
|
|
|
when: gentoo.use.env is iterable
|
|
|
|
|
|
|
|
- name: Configure packages with custom ENVs
|
|
|
|
template:
|
|
|
|
src: "portage/package.env/package-list.j2"
|
|
|
|
dest: "/etc/portage/package.env/{{ item.template }}"
|
|
|
|
loop: "{{ gentoo.use.env }}"
|
|
|
|
|
|
|
|
- name: Freeze packages
|
|
|
|
template:
|
|
|
|
src: packages.j2
|
|
|
|
dest: /etc/portage/profile/package.provided
|
|
|
|
vars:
|
|
|
|
packages: "{{ apps.freeze }}"
|
|
|
|
|
|
|
|
- name: Mask packages
|
|
|
|
template:
|
|
|
|
src: packages.j2
|
|
|
|
dest: /etc/portage/package.mask/custom.clt
|
|
|
|
vars:
|
|
|
|
packages: "{{ apps.mask }}"
|
|
|
|
|
|
|
|
- name: Unmask packages
|
|
|
|
template:
|
|
|
|
src: packages.j2
|
|
|
|
dest: /etc/portage/package.accept_keywords/custom.clt
|
|
|
|
vars:
|
|
|
|
packages: "{{ apps.unmask }}"
|
|
|
|
|
|
|
|
- name: Remove default config files
|
|
|
|
become: yes
|
|
|
|
file:
|
|
|
|
path: "/etc/portage/savedconfig/{{ item }}"
|
|
|
|
state: absent
|
|
|
|
with_items: "{{ gentoo.use.config }}"
|
|
|
|
tags:
|
|
|
|
- portage
|
|
|
|
- emerge
|
|
|
|
- savedconfig
|
|
|
|
|
|
|
|
- name: Make directories for savedconfig files
|
|
|
|
file:
|
|
|
|
path: "/etc/portage/savedconfig/{{ item | dirname }}"
|
|
|
|
state: directory
|
|
|
|
with_items: "{{ gentoo.use.config }}"
|
|
|
|
|
|
|
|
- name: Copy savedconfig files
|
|
|
|
template:
|
|
|
|
src: "savedconfig/{{ item }}"
|
|
|
|
dest: "/etc/portage/savedconfig/{{ item }}"
|
|
|
|
with_items: "{{ gentoo.use.config }}"
|
|
|
|
tags:
|
|
|
|
- portage
|
|
|
|
- emerge
|
|
|
|
- savedconfig
|
|
|
|
|
|
|
|
- name: Make custom package set
|
|
|
|
template:
|
|
|
|
src: packages.j2
|
|
|
|
dest: "/etc/portage/sets/{{ apps.set_name }}"
|
|
|
|
vars:
|
|
|
|
packages: "{{ apps.install }}"
|
|
|
|
notify: emerge custom set
|
|
|
|
|
|
|
|
- name: Remove unused applications
|
|
|
|
portage:
|
|
|
|
package: "{{ apps.remove }}"
|
|
|
|
state: absent
|
|
|
|
# notify: emerge depclean
|
|
|
|
|
|
|
|
- name: Disable services
|
|
|
|
service:
|
|
|
|
name: "{{ item.name }}"
|
|
|
|
runlevel: "{{ item.runlevel | default(omit) }}"
|
|
|
|
state: stopped
|
|
|
|
enabled: no
|
|
|
|
with_items: "{{ services.disabled }}"
|
|
|
|
|
|
|
|
- name: Enable services
|
|
|
|
service:
|
|
|
|
name: "{{ item.name }}"
|
|
|
|
runlevel: "{{ item.runlevel | default(omit) }}"
|
|
|
|
state: started
|
|
|
|
enabled: yes
|
|
|
|
with_items: "{{ services.enabled }}"
|
|
|
|
|
|
|
|
# Download binaries from GitHub
|
|
|
|
# TODO: Mention binary releases in README.md
|
|
|
|
- include: install-github.yml app_name="{{ item.name }}" app_repository="{{ item.repository }}" app_type="{{ item.type }}"
|
|
|
|
with_items:
|
|
|
|
- "{{ apps.github }}"
|
|
|
|
when: false
|