Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/don-rumata/ansible-role-install-firefox
Ansible Role: Install Firefox
https://github.com/don-rumata/ansible-role-install-firefox
ansible ansible-galaxy ansible-role centos debian deploy desktop fedora firefox linux mozilla opensuse ubuntu windows windows-10 windows-7
Last synced: about 2 months ago
JSON representation
Ansible Role: Install Firefox
- Host: GitHub
- URL: https://github.com/don-rumata/ansible-role-install-firefox
- Owner: don-rumata
- License: apache-2.0
- Created: 2020-04-28T12:07:34.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-01-13T12:07:26.000Z (12 months ago)
- Last Synced: 2024-10-11T14:21:20.065Z (3 months ago)
- Topics: ansible, ansible-galaxy, ansible-role, centos, debian, deploy, desktop, fedora, firefox, linux, mozilla, opensuse, ubuntu, windows, windows-10, windows-7
- Language: Jinja
- Homepage: https://galaxy.ansible.com/don_rumata/ansible_role_install_firefox
- Size: 76.2 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Ansible Role: Install Firefox
[![License][license-image]][license-url] [![Ansible Galaxy][ansible-galaxy-image]][ansible-galaxy-url] [![CircleCI][circleci-image]][circleci-url]
Install [Firefox](https://www.firefox.com/) for Linux and Windows.
## Work on
### Ansible Galaxy style
```yaml
platforms:
- name: Fedora
versions:
- 31
- 32
- name: Ubuntu
versions:
- focal
- bionic
- xenial
- name: Debian
version:
- oldstable
- stable
# - testing
- name: EL (CentOS)
versions:
- 7
- 8
- name: opensuse
vesrion:
- tumbleweed
- name: ArchLinux
version:
- any
- name: windows
version:
- 2008x64 (7 64bit)
- 2008x86 (7 32bit)
- 2019 (10 64bit)
```### Table style
- :heavy_check_mark: - work, tested, ok.
- :construction: - TODO. Work in progress.
- :x: - not work. Don't try.|. |Firefox stable |Firefox beta |Firefox nightly |Firefox developer |Firefox esr |. |Flatpak |Snap |msi |exe |tar.bz2 |. |32 bit |64 bit |
|---------------|------------------|------------------|------------------|------------------|------------------|---|------------------|------------------|------------------|------------------|------------------|---|------------------|------------------|
|OS | | | | | | | | | | | | | | |
|Windows | | | | | | | | | | | | | | |
|7 |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:x: |:x: |:heavy_check_mark:|:heavy_check_mark:|:x: | |:heavy_check_mark:|:heavy_check_mark:|
|10 |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:x: |:x: |:heavy_check_mark:|:heavy_check_mark:|:x: | |:heavy_check_mark:|:heavy_check_mark:|
|. | | | | | | | | | | | | | | |
|Ubuntu | | | | | | | | | | | | | | |
|focal |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|eoan |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|disco |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|cosmic |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|bionic |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|xenial |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|. | | | | | | | | | | | | | | |
|Debian | | | | | | | | | | | | | | |
|jessie |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|stretch |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|buster |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|stable |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|testing |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|. | | | | | | | | | | | | | | |
|EL (CentOS) | | | | | | | | | | | | | | |
|8 |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|7 |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|. | | | | | | | | | | | | | | |
|opensuse | | | | | | | | | | | | | | |
|tumbleweed |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|:x: |:x: |:heavy_check_mark:| |:heavy_check_mark:|:heavy_check_mark:|
|. | | | | | | | | | | | | | | |
|ArchLinux | | | | | | | | | | | | | | |
|any |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| |:heavy_check_mark:|:construction: |:x: |:x: |:heavy_check_mark:| |:x: |:heavy_check_mark:|
|. | | | | | | | | | | | | | | |
|Fedora | | | | | | | | | | | | | | |
|32 |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| | | | | | | |:heavy_check_mark:|:heavy_check_mark:|
|31 |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| | | | | | | |:heavy_check_mark:|:heavy_check_mark:|
|. | | | | | | | | | | | | | | |
|Package manager| | | | | | | | | | | | | | |
|deb/rpm |:heavy_check_mark:|:x: |:x: |:heavy_check_mark:/:x: |:x: | | | | | | | | | |
|Flatpak |:heavy_check_mark:|:x: |:x: |:x: |:x: | | | | | | | | | |
|Snap |:heavy_check_mark:|:heavy_check_mark:|:construction: |:construction: |:heavy_check_mark:| | | | | | | |:x: |:heavy_check_mark:|
|msi |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| | | | | | | | | |
|exe |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| | | | | | | | | |
|tar.bz2 |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| | | | | | | | | |
|. | | | | | | | | | | | | | | |
|Architecture | | | | | | | | | | | | | | |
|32 |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| | | | | | | | | |
|64 |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| | | | | | | | | |## Requirements
[min_ansible_version: 2.8](https://docs.ansible.com/ansible/latest/modules/flatpak_module.html)
## Role Variables
```yaml
---
#--- Firefox Edition ---#firefox_edition: stable
# https://www.mozilla.org/en-US/firefox/channel/desktop/#beta
# firefox_edition: beta# https://www.mozilla.org/en-US/firefox/channel/desktop/#nightly
# firefox_edition: nightly# https://www.mozilla.org/en/firefox/developer/
# firefox_edition: developer# https://www.mozilla.org/en/firefox/enterprise/
# firefox_edition: esr#--- Firefox method install ---#
# https://repology.org/project/firefox/versions
firefox_method_install: package-manager# https://en.wikipedia.org/wiki/Flatpak
# https://flathub.org/apps/details/org.mozilla.firefox
# firefox_method_install: flatpak# https://en.wikipedia.org/wiki/Snappy_(package_manager)
# https://snapcraft.io/firefox
# firefox_method_install: snap# https://www.mozilla.org/en/firefox/download/thanks/
# firefox_method_install: tar.bz2#--- Firefox architecture ---#
firefox_arch: 64
# https://en.wikipedia.org/wiki/64-bit_computing
# firefox_arch: 32#--- Firefox language ---#
# Default value: firefox_lang == your_windows_system_language
# firefox_lang: ru
# firefox_lang: en-US#--- Firefox api urls ---#
firefox_versions_url: https://product-details.mozilla.org/1.0/firefox_versions.json
# Need for Windows.
firefox_available_languages_url: https://product-details.mozilla.org/1.0/languages.json#--- Firefox installer type. Windows only!!! ---#
firefox_win_installer_type: exe
# firefox_win_installer_type: msi
#--- Firefox local download path ---#
firefox_windows_local_download_path: '{{ ansible_env.TMP }}\firefox'
firefox_linux_local_download_path: '/var/cache/firefox'
#--- Firefox install paths. Only for tar.bz2 ---#
firefox_linux_install_path: '/opt/firefox/{{ firefox_edition }}'
firefox_linux_path_to_bin: '{{ firefox_linux_install_path }}/firefox/firefox'
firefox_linux_path_to_icon: '{{ firefox_linux_install_path }}/firefox/browser/chrome/icons/default/default128.png'
#--- Firefox checksum algorithm ---#
firefox_checksum_algorithm: sha256
# firefox_checksum_algorithm: sha512
#--- Firefox version ---#
firefox_version: latest
# firefox_version: 75.0
#--- Apt repo section ---#
# https://repolib.readthedocs.io/en/latest/deb822-format.html
# If you *NOT* use apt-cacher-ng or other caching proxy - select "https".
http_or_https: http
# http_or_https: https# https://www.opennet.ru/opennews/art.shtml?num=60019
mozilla_apt_repo_path_to_sources: /etc/apt/sources.list.d/mozilla.sources
mozilla_gpg_repo_key_url: https://packages.mozilla.org/apt/repo-signing-key.gpg
mozilla_apt_repo_architectures:
- amd64
mozilla_apt_repo_components:
- main
mozilla_apt_repo_suites:
- mozilla
mozilla_apt_repo_types:
- deb
mozilla_apt_repo_uris:
- "{{ http_or_https }}://packages.mozilla.org/apt"
mozilla_apt_repo_x_repolib_name: Official Mozilla repo```
## Dependencies
### If you want install over Flatpak
Version one:
```bash
cd /path/to/you/ansible/roles
git clone https://github.com/don-rumata/ansible-role-install-flatpak
```Version two:
```bash
ansible-galaxy install don_rumata.ansible_role_install_flatpak
```### If you want install over Snap
Version one:
```bash
cd /path/to/you/ansible/roles
git clone https://github.com/don-rumata/ansible-role-install-snap
```Version two:
```bash
ansible-galaxy install don_rumata.ansible_role_install_snap
```### If you want deploy to Windows 7
Download and install [Windows Management Framework 5.1](https://www.microsoft.com/en-us/download/details.aspx?id=54616)
## HowTo
Quick config WinRM for Windows:
## Example Playbooks
Install latest stable Firefox on Windows or Linux over package manager of you distro:
`install-firefox.yml`:
```yaml
- name: Install FireFox
hosts: all
strategy: free
serial:
- "100%"
roles:
- ansible-role-install-firefox
tasks:
````install-firefox-over-flatpak-v1.yml`:
```yaml
- name: Install FireFox
hosts: all
strategy: free
serial:
- "100%"
roles:
- ansible-role-install-flatpak
- ansible-role-install-firefox
vars:
firefox_method_install: flatpak
tasks:
````install-firefox-over-snap-v2.yml`:
```yaml
- name: Install FireFox
hosts: all
strategy: free
serial:
- "100%"
roles:
- don_rumata.ansible_role_install_snap
- ansible-role-install-firefox
vars:
firefox_method_install: snap
tasks:
```## License
Apache License, Version 2.0
## Author Information
[don Rumata](https://github.com/don-rumata)
## TODO
- ~~Add tests.~~
- Add more tests.
- Add ArchLinux firefox-i18n-{{ system_lang }}
- Add custom languages.
- Add get links over http-header
- Add uninstall.yml
## Thanks
- [Arkadiy Illarionov](https://github.com/qarkai)
- [RedMadness](https://github.com/RedMadness)
-
-
-
-
[license-image]: https://img.shields.io/github/license/don-rumata/ansible-role-install-firefox.svg
[license-url]: https://opensource.org/licenses/Apache-2.0[ansible-galaxy-image]: https://img.shields.io/badge/ansible_galaxy-don__rumata.ansible__role__install__firefox-blue.svg
[ansible-galaxy-url]: https://galaxy.ansible.com/don_rumata/ansible_role_install_firefox[circleci-image]: https://circleci.com/gh/don-rumata/ansible-role-install-firefox.svg?style=shield
[circleci-url]: https://circleci.com/gh/don-rumata/ansible-role-install-firefox