Full Code of Antergos/Cnchi for AI

0.16.x 13ac2209da94 cached
449 files
10.3 MB
2.7M tokens
1480 symbols
1 requests
Copy disabled (too large) Download .txt
Showing preview only (11,006K chars total). Download the full file to get everything.
Repository: Antergos/Cnchi
Branch: 0.16.x
Commit: 13ac2209da94
Files: 449
Total size: 10.3 MB

Directory structure:
gitextract_fxpnncxq/

├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   └── feature_request.md
│   ├── ISSUE_TEMPLATE.md
│   └── stale.yaml
├── .gitignore
├── .landscape.yaml
├── .tx/
│   └── config
├── AUTHORS
├── CHANGES
├── CHANGES-0.12.0-0.14.0
├── COPYING
├── README.md
├── TODO.md
├── TRANSLATORS
├── changes-0.15.md
├── cnchi.desktop
├── data/
│   ├── .gitattributes
│   ├── GeoLite2-City.mmdb
│   ├── base.xml
│   ├── cnchi.conf
│   ├── console-keymaps.txt
│   ├── css/
│   │   ├── bootstrap-theme.css
│   │   ├── bootstrap.css
│   │   ├── gtk-style.css
│   │   ├── lightSlider.css
│   │   ├── scale.css
│   │   └── slides-style.css
│   ├── firefox.txt
│   ├── hunspell.txt
│   ├── images/
│   │   └── avatars/
│   │       └── license.txt
│   ├── js/
│   │   ├── bootstrap.js
│   │   └── npm.js
│   ├── keymaps.txt
│   ├── locale/
│   │   ├── iso3366-1.xml
│   │   ├── locales.xml
│   │   └── timezones.xml
│   ├── packages.xml
│   ├── pacman.tmpl
│   ├── pci/
│   │   ├── amdgpu.ids
│   │   ├── amdgpu_exp.ids
│   │   ├── ati.ids
│   │   ├── broadcom_b43.ids
│   │   ├── broadcom_b43_legacy.ids
│   │   ├── broadcom_wl.ids
│   │   ├── catalyst.ids
│   │   ├── nvidia-304xx.ids
│   │   ├── nvidia-340xx.ids
│   │   ├── nvidia-390xx.ids
│   │   └── nvidia.ids
│   ├── pci.ids
│   ├── powerpill.json
│   └── slides.html
├── debian.sh
├── dependencies.txt
├── docs/
│   ├── Makefile
│   ├── bootinfo.rst
│   ├── browser_window.rst
│   ├── cnchi.rst
│   ├── conf.py
│   ├── config.rst
│   ├── desktop_info.rst
│   ├── download.rst
│   ├── download_download.rst
│   ├── download_metalink.rst
│   ├── download_requests.rst
│   ├── features_info.rst
│   ├── geoip.rst
│   ├── hardware.rst
│   ├── hardware_hardware.rst
│   ├── hardware_modules.rst
│   ├── index.rst
│   ├── info.rst
│   ├── installation.rst
│   ├── installation_action.rst
│   ├── installation_auto_partition.rst
│   ├── installation_boot.rst
│   ├── installation_boot_grub2.rst
│   ├── installation_boot_loader.rst
│   ├── installation_boot_refind.rst
│   ├── installation_boot_systemd_boot.rst
│   ├── installation_firewall.rst
│   ├── installation_install.rst
│   ├── installation_lamp.rst
│   ├── installation_lemp.rst
│   ├── installation_mkinitcpio.rst
│   ├── installation_post_features.rst
│   ├── installation_post_fstab.rst
│   ├── installation_post_install.rst
│   ├── installation_process.rst
│   ├── installation_select_packages.rst
│   ├── installation_services.rst
│   ├── installation_special_dirs.rst
│   ├── installation_systemd_networkd.rst
│   ├── installation_wrapper.rst
│   ├── logging_utils.rst
│   ├── main_window.rst
│   ├── misc.rst
│   ├── misc_avatars.rst
│   ├── misc_extra.rst
│   ├── misc_gocryptfs.rst
│   ├── misc_gtkwidgets.rst
│   ├── misc_i18n.rst
│   ├── misc_keyboard_names.rst
│   ├── misc_nm.rst
│   ├── misc_osextras.rst
│   ├── misc_run_cmd.rst
│   ├── misc_tz.rst
│   ├── misc_validation.rst
│   ├── proxy.rst
│   ├── rank_mirrors.rst
│   ├── show_message.rst
│   ├── test_page.rst
│   └── update_db.rst
├── po/
│   ├── af-ZA.po
│   ├── af.po
│   ├── ar-SA.po
│   ├── ar.po
│   ├── ast.po
│   ├── az-AZ.po
│   ├── az.po
│   ├── az@latin.po
│   ├── az_IR.po
│   ├── be.po
│   ├── bg.po
│   ├── bn-BD.po
│   ├── bn.po
│   ├── bs-BA.po
│   ├── bs.po
│   ├── ca.po
│   ├── ca@valencia.po
│   ├── cnchi.pot
│   ├── cs-CZ.po
│   ├── cs.po
│   ├── da.po
│   ├── de-AT.po
│   ├── de.po
│   ├── el.po
│   ├── en.po
│   ├── en_GB.po
│   ├── eo.po
│   ├── es-ES.po
│   ├── es-VE.po
│   ├── es.po
│   ├── es_419.po
│   ├── es_AR.po
│   ├── es_CL.po
│   ├── es_MX.po
│   ├── et.po
│   ├── eu.po
│   ├── fa.po
│   ├── fa_IR.po
│   ├── fi.po
│   ├── fr-BE.po
│   ├── fr-CA.po
│   ├── fr-FR.po
│   ├── fr.po
│   ├── gl.po
│   ├── gu.po
│   ├── he.po
│   ├── hi.po
│   ├── hr.po
│   ├── hu.po
│   ├── id.po
│   ├── it-IT.po
│   ├── it.po
│   ├── it_CH.po
│   ├── ja.po
│   ├── ka.po
│   ├── ko.po
│   ├── ky.po
│   ├── lt.po
│   ├── mk.po
│   ├── mr.po
│   ├── ms.po
│   ├── ms_MY.po
│   ├── nb.po
│   ├── nl.po
│   ├── nn.po
│   ├── pa.po
│   ├── pl-PL.po
│   ├── pl.po
│   ├── pt.po
│   ├── pt_BR.po
│   ├── pt_PT.po
│   ├── ro-RO.po
│   ├── ro.po
│   ├── ru.po
│   ├── sk.po
│   ├── sl-SI.po
│   ├── sl.po
│   ├── sq.po
│   ├── sr-RS.po
│   ├── sr.po
│   ├── sr@latin.po
│   ├── sv.po
│   ├── szl.po
│   ├── ta.po
│   ├── ta_IN.po
│   ├── tg.po
│   ├── tl.po
│   ├── tl_PH.po
│   ├── tr-TR.po
│   ├── tr.po
│   ├── uk.po
│   ├── update_po.sh
│   ├── ur.po
│   ├── uz.po
│   ├── vi-VN.po
│   ├── vi.po
│   ├── wa.po
│   ├── xh.po
│   ├── zh.po
│   ├── zh_CN.GB2312.po
│   ├── zh_CN.po
│   ├── zh_TW.po
│   └── zu.po
├── requirements.txt
├── run
├── scripts/
│   ├── 10_antergos
│   ├── 60-schedulers.rules
│   ├── a2dissite
│   ├── a2ensite
│   ├── antergos.layout
│   ├── ckbcomp
│   ├── enlightenment_remote
│   ├── fonts.conf
│   ├── package_checker.py
│   ├── postinstall/
│   │   ├── 50-cros-touchpad.conf
│   │   ├── 50-synaptics.conf
│   │   ├── 99-killX.conf
│   │   ├── Xsession
│   │   ├── applications.list
│   │   ├── cbatticon.desktop
│   │   ├── first-boot-hotfix.desktop
│   │   ├── first-boot-hotfix.sh
│   │   ├── menu@cinnamon.org.json
│   │   ├── panel-launchers@cinnamon.org.json
│   │   ├── qt5ct.conf
│   │   ├── xscreensaver
│   │   └── xscreensaver.desktop
│   ├── postinstall.sh
│   ├── requirements.sh
│   └── testing.sh
├── src/
│   ├── __init__.py
│   ├── bootinfo.py
│   ├── browser_window.py
│   ├── cnchi.py
│   ├── config.py
│   ├── desktop_info.py
│   ├── download/
│   │   ├── __init__.py
│   │   ├── download.py
│   │   ├── download_hash.py
│   │   ├── download_requests.py
│   │   └── metalink.py
│   ├── features_info.py
│   ├── geoip.py
│   ├── hardware/
│   │   ├── __init__.py
│   │   ├── hardware.py
│   │   └── modules/
│   │       ├── __init__.py
│   │       ├── amdgpu.py
│   │       ├── amdgpu_exp.py
│   │       ├── broadcom_b43.py
│   │       ├── broadcom_b43_legacy.py
│   │       ├── broadcom_wl.py
│   │       ├── bumblebee.py_
│   │       ├── catalyst.py
│   │       ├── etouchscreen.py
│   │       ├── fingerprint.py
│   │       ├── firewire.py
│   │       ├── i915.py
│   │       ├── nouveau.py
│   │       ├── nvidia.py
│   │       ├── nvidia_304xx.py
│   │       ├── nvidia_340xx.py
│   │       ├── nvidia_390xx.py
│   │       ├── radeon.py
│   │       ├── uvesafb.py
│   │       ├── via.py
│   │       ├── virtualbox.py
│   │       └── vmware.py
│   ├── info.py
│   ├── installation/
│   │   ├── __init__.py
│   │   ├── action.py
│   │   ├── auto_partition.py
│   │   ├── boot/
│   │   │   ├── boot_ui.py
│   │   │   ├── grub2.py
│   │   │   ├── loader.py
│   │   │   ├── refind.py
│   │   │   └── systemd_boot.py
│   │   ├── firewall.py
│   │   ├── install.py
│   │   ├── lamp.py
│   │   ├── lemp.py
│   │   ├── luks.py
│   │   ├── mkinitcpio.py
│   │   ├── mount.py
│   │   ├── post_features.py
│   │   ├── post_fstab.py
│   │   ├── post_install.py
│   │   ├── process.py
│   │   ├── select_packages.py
│   │   ├── services.py
│   │   ├── special_dirs.py
│   │   ├── systemd_networkd.py
│   │   └── wrapper.py
│   ├── lembrame/
│   │   ├── __init__.py
│   │   ├── config.py
│   │   ├── credentials.py
│   │   ├── dialog.py
│   │   ├── gnome_extensions/
│   │   │   ├── __init__.py
│   │   │   └── downloader.py
│   │   └── lembrame.py
│   ├── logging_color.py
│   ├── logging_resources.py
│   ├── logging_utils.py
│   ├── main_window.py
│   ├── misc/
│   │   ├── __init__.py
│   │   ├── avatars.py
│   │   ├── events.py
│   │   ├── extra.py
│   │   ├── gocryptfs.py
│   │   ├── gsettings.py
│   │   ├── gtkwidgets.py
│   │   ├── i18n.py
│   │   ├── keyboard_names.py
│   │   ├── nm.py
│   │   ├── osextras.py
│   │   ├── run_cmd.py
│   │   ├── tz.py
│   │   └── validation.py
│   ├── pacman/
│   │   ├── __init__.py
│   │   ├── alpm_include.py
│   │   ├── pac.py
│   │   ├── pacman_conf.py
│   │   ├── pacman_options.txt
│   │   └── pkginfo.py
│   ├── pages/
│   │   ├── __init__.py
│   │   ├── advanced.py
│   │   ├── alongside.py
│   │   ├── ask.py
│   │   ├── automatic.py
│   │   ├── cache.py
│   │   ├── check.py
│   │   ├── desktop.py
│   │   ├── dialogs/
│   │   │   ├── __init__.py
│   │   │   ├── changelist.py
│   │   │   ├── create_partition.py
│   │   │   ├── create_table.py
│   │   │   ├── edit_partition.py
│   │   │   ├── luks_settings.py
│   │   │   └── partition_base.py
│   │   ├── features.py
│   │   ├── gtkbasebox.py
│   │   ├── keymap.py
│   │   ├── language.py
│   │   ├── location.py
│   │   ├── mirrors.py
│   │   ├── slides.py
│   │   ├── summary.py
│   │   ├── timezone.py
│   │   ├── user_info.py
│   │   ├── welcome.py
│   │   ├── wireless.py
│   │   ├── zfs.py
│   │   └── zfs_manager.py
│   ├── parted3/
│   │   ├── README
│   │   ├── __init__.py
│   │   ├── fs_module.py
│   │   ├── lvm.py
│   │   ├── partition_module.py
│   │   ├── populate_devices.py
│   │   └── used_space.py
│   ├── proxy.py
│   ├── rank_mirrors.py
│   ├── show_message.py
│   ├── test_page.py
│   ├── update_db.py
│   └── widgets/
│       ├── keyboard_widget.py
│       ├── partition_treeview.py
│       ├── timezonemap.py
│       ├── webcam_widget.py
│       └── zfs_treeview.py
├── test/
│   ├── gnome-sudoku.meta4
│   ├── pacman_conf_test.py
│   └── test_hardware_module.py
├── ui/
│   ├── advanced.ui
│   ├── alongside.ui
│   ├── ask.ui
│   ├── automatic.ui
│   ├── bootloader.ui
│   ├── cache.ui
│   ├── check.ui
│   ├── cnchi.ui
│   ├── desktop.ui
│   ├── dialogs/
│   │   ├── changelist.ui
│   │   ├── create_partition.ui
│   │   ├── create_table.ui
│   │   ├── edit_partition.ui
│   │   └── luks_settings.ui
│   ├── features.ui
│   ├── header.ui
│   ├── keymap.ui
│   ├── language.ui
│   ├── lembrame.ui
│   ├── location.ui
│   ├── mirrors.ui
│   ├── pac.ui
│   ├── proxy.ui
│   ├── slides.ui
│   ├── summary.ui
│   ├── timezone.ui
│   ├── user_info.ui
│   ├── wait.ui
│   ├── welcome.ui
│   ├── wired.ui
│   ├── wireless.ui
│   └── zfs.ui
├── update.info
└── utils/
    ├── KeyboardNames.pl
    ├── antergos-mirrorlist
    ├── compile_all.sh
    ├── download_package_list.py
    ├── fix-permissions.sh
    ├── gen_pot_file
    ├── generate_update_info.py
    ├── install-arch.sh
    ├── install-debian.sh
    ├── install-mo.sh
    ├── kbdnames-maker
    ├── keyboard.xcf
    ├── load_xml.py
    ├── mirrorlist
    ├── packages_xml.py
    ├── parted-partition.py
    ├── partedtest.py
    ├── partedtest_old.py
    ├── pkg-clean-zenity.sh
    ├── pre-commit
    ├── pygettext.py
    ├── pygi-enumerate.py
    ├── pylint.rc
    ├── reindent.py
    ├── remove_trailing_white_spaces
    ├── rm_empty_strings_pot.py
    ├── test.py
    ├── timezonemap_test.py
    ├── update-translations.sh
    ├── update.info
    └── validate_ui.sh

================================================
FILE CONTENTS
================================================

================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.md
================================================
---
name: Bug report
about: Create a report to help us improve

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Log Files**
- Use a service like http://paste2.org/ to provide links to the logs.
- Link to /var/log/cnchi/cnchi.log output.
- Link to /var/log/cnchi/cnchi-alpm.log output (if exists)
- Link to /var/log/cnchi/postinstall.log output (if exists)

**Additional context**
Add any other context about the problem here.


================================================
FILE: .github/ISSUE_TEMPLATE/feature_request.md
================================================
---
name: Feature request
about: Suggest an idea for this project

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.


================================================
FILE: .github/ISSUE_TEMPLATE.md
================================================
### Problem:
*Replace this line with a brief summary of the problem.*

### Steps To Reproduce:
1.
2.
3.

### Log Files
- Use a service like http://paste2.org/ to provide links to the logs.
- Link to /var/log/cnchi/cnchi.log output.
- Link to /var/log/cnchi/cnchi-alpm.log (if exists)
- Link to /var/log/cnchi/postinstall.log (if exists)

### Additional Notes:



================================================
FILE: .github/stale.yaml
================================================
# Configuration for probot-stale - https://github.com/probot/stale

# Number of days of inactivity before an Issue or Pull Request becomes stale
daysUntilStale: 60

# Number of days of inactivity before an Issue or Pull Request with the stale label is closed.
# Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale.
daysUntilClose: false

# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
exemptLabels:
  - pinned
  - security
  - "[Status] Maybe Later"

# Set to true to ignore issues in a project (defaults to false)
exemptProjects: false

# Set to true to ignore issues in a milestone (defaults to false)
exemptMilestones: false

# Label to use when marking as stale
staleLabel: wontfix

# Comment to post when marking as stale. Set to `false` to disable
markComment: >
  This issue has been automatically marked as stale because it has not had
  recent activity. It will be closed if no further activity occurs. Thank you
  for your contributions.

# Comment to post when removing the stale label.
# unmarkComment: >
#   Your comment here.

# Comment to post when closing a stale Issue or Pull Request.
# closeComment: >
#   Your comment here.

# Limit the number of actions per hour, from 1-30. Default is 30
limitPerRun: 30

# Limit to only `issues` or `pulls`
# only: issues

# Optionally, specify configuration settings that are specific to just 'issues' or 'pulls':
# pulls:
#   daysUntilStale: 30
#   markComment: >
#     This pull request has been automatically marked as stale because it has not had
#     recent activity. It will be closed if no further activity occurs. Thank you
#     for your contributions.

# issues:
#   exemptLabels:
#     - confirmed



================================================
FILE: .gitignore
================================================
*.py[cod]

# C extensions
*.so

# Packages
*.egg
*.egg-info
dist
build
eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg
lib
lib64
__pycache__

# Installer logs
pip-log.txt

# PyCharm
debug


# Unit test / coverage reports
.coverage
.tox
nosetests.xml

# Translations
*.mo

# Mr Developer
.mr.developer.cfg
.project
.pydevproject

# Backup files (joe et al)
*~
# PyCharm Config Files
.idea
.idea*
.idea/*.xml

# Documentation
#*.rst
#*.doctree
site/
docs/_build


================================================
FILE: .landscape.yaml
================================================
pylint:
  disable:
    - undefined-variable
python-targets:
    - 3


================================================
FILE: .tx/config
================================================
[main]
host = https://www.transifex.com
lang_map = en: en-GB, af_ZA: af-ZA, am_ET: am-ET, ar_AA: ar-AA, ar_AE: ar-AE, ar_BH: ar-BH, ar_DZ: ar-DZ, ar_EG: ar-EG, ar_IQ: ar-IQ, ar_JO: ar-JO, ar_KW: ar-KW, ar_LB: ar-LB, ar_LY: ar-LY, ar_MA: ar-MA, ar_OM: ar-OM, ar_QA: ar-QA, ar_SA: ar-SA, ar_SY: ar-SY, ar_TN: ar-TN, ar_YE: ar-YE, arn_CL: arn-CL, as_IN: as-IN, az_AZ: az-AZ, ba_RU: ba-RU, be_BY: be-BY, bg_BG: bg-BG, bn_BD: bn-BD, bn_IN: bn-IN, bo_CN: bo-CN, br_FR: br-FR, bs_BA: bs-BA, ca_ES: ca-ES, co_FR: co-FR, cs_CZ: cs-CZ, cy_GB: cy-GB, da_DK: da-DK, de_AT: de-AT, de_CH: de-CH, de_DE: de-DE, de_LI: de-LI, de_LU: de-LU, dsb_DE: dsb-DE, dv_MV: dv-MV, el_GR: el-GR, en_AU: en-AU, en_BZ: en-BZ, en_CA: en-CA, en_IE: en-IE, en_IN: en-IN, en_JM: en-JM, en_MY: en-MY, en_NZ: en-NZ, en_PH: en-PH, en_SG: en-SG, en_TT: en-TT, en_US: en-US, en_ZA: en-ZA, en_ZW: en-ZW, es_AR: es-AR, es_BO: es-BO, es_CL: es-CL, es_CO: es-CO, es_CR: es-CR, es_DO: es-DO, es_EC: es-EC, es_ES: es-ES, es_GT: es-GT, es_HN: es-HN, es_MX: es-MX, es_NI: es-NI, es_PA: es-PA, es_PE: es-PE, es_PR: es-PR, es_PY: es-PY, es_SV: es-SV, es_US: es-US, es_UY: es-UY, es_VE: es-VE, et_EE: et-EE, eu_ES: eu-ES, fa_IR: fa-IR, fi_FI: fi-FI, fil_PH: fil-PH, fo_FO: fo-FO, fr_BE: fr-BE, fr_CA: fr-CA, fr_CH: fr-CH, fr_FR: fr-FR, fr_LU: fr-LU, fr_MC: fr-MC, fy_NL: fy-NL, ga_IE: ga-IE, gl_ES: gl-ES, gsw_FR: gsw-FR, gu_IN: gu-IN, ha_NG: ha-NG, he_IL: he-IL, hi_IN: hi-IN, hr_BA: hr-BA, hr_HR: hr-HR, hsb_DE: hsb-DE, hu_HU: hu-HU, hy_AM: hy-AM, id_ID: id-ID, ig_NG: ig-NG, ii_CN: ii-CN, is_IS: is-IS, it_CH: it-CH, it_IT: it-IT, iu_CA: iu-CA, ja_JP: ja-JP, ka_GE: ka-GE, kk_KZ: kk-KZ, kl_GL: kl-GL, km_KH: km-KH, kn_IN: kn-IN, ko_KR: ko-KR, kok_IN: kok-IN, ky_KG: ky-KG, lb_LU: lb-LU, lo_LA: lo-LA, lt_LT: lt-LT, lv_LV: lv-LV, mi_NZ: mi-NZ, mk_MK: mk-MK, ml_IN: ml-IN, mn_CN: mn-CN, mn_MN: mn-MN, moh_CA: moh-CA, mr_IN: mr-IN, ms_BN: ms-BN, ms_MY: ms-MY, mt_MT: mt-MT, nb_NO: nb-NO, ne_NP: ne-NP, nl_BE: nl-BE, nl_NL: nl-NL, nn_NO: nn-NO, nso_ZA: nso-ZA, oc_FR: oc-FR, or_IN: or-IN, pa_IN: pa-IN, pl_PL: pl-PL, prs_AF: prs-AF, ps_AF: ps-AF, pt_BR: pt-BR, pt_PT: pt-PT, qut_GT: qut-GT, quz_BO: quz-BO, quz_EC: quz-EC, quz_PE: quz-PE, rm_CH: rm-CH, ro_RO: ro-RO, ru_RU: ru-RU, rw_RW: rw-RW, sa_IN: sa-IN, sah_RU: sah-RU, se_FI: se-FI, se_NO: se-NO, se_SE: se-SE, si_LK: si-LK, sk_SK: sk-SK, sl_SI: sl-SI, sma_NO: sma-NO, sma_SE: sma-SE, smj_NO: smj-NO, smj_SE: smj-SE, smn_FI: smn-FI, sms_FI: sms-FI, sq_AL: sq-AL, sr_BA: sr-BA, sr_CS: sr-CS, sr_ME: sr-ME, sr_RS: sr-RS, sv_FI: sv-FI, sv_SE: sv-SE, sw_KE: sw-KE, syr_SY: syr-SY, ta_IN: ta-IN, te_IN: te-IN, tg_TJ: tg-TJ, th_TH: th-TH, tk_TM: tk-TM, tn_ZA: tn-ZA, tr_TR: tr-TR, tt_RU: tt-RU, tzm_DZ: tzm-DZ, uk_UA: uk-UA, ur_PK: ur-PK, uz_UZ: uz-UZ, vi_VN: vi-VN, wo_SN: wo-SN, xh_ZA: xh-ZA, yo_NG: yo-NG, zh_CN: zh-CN, zh_HK: zh-HK, zh_MO: zh-MO, zh_SG: zh-SG, zh_TW: zh-TW, zu_ZA: zu-ZA, gd: gd-GB, ug: ug-CN, eo: eo-XX, ast: ast-ES, sr@latin: sr-YU, tl_PH: tl-PH, tet: tet-TL

[antergos.cnchi]
file_filter = po/<lang>.po
source_file = po/cnchi.pot
source_lang = en


================================================
FILE: AUTHORS
================================================
Cnchi - Antergos Installer

Current developers:
-------------------
Alexandre Filgueira "faidoc" <alexfilgueira.antergos.com>
Gustau Castells "karasu" <karasu.antergos.com>
Alex Skinner "axaxs" <skinner.antergos.com>
Dustin Falgout "lots.0.logs" <dustin.antergos.com>
Aidan Collier "WokSearedBacon" <studiosofinkblot.gmail.com>

Special thanks to:
------------------
Markus M. May "triplem" <mmay.javafreedom.org>


================================================
FILE: CHANGES
================================================


================================================
FILE: CHANGES-0.12.0-0.14.0
================================================
[2016-01-30 04:56:26 -0600]  update CHANGES                                                         Dustin Falgout  {f51c2fc}
[2016-01-30 04:53:29 -0600]  a few stray commits                                                    Dustin Falgout  {a94d72f}
[2016-01-30 04:37:20 -0600]  update readme                                                          Dustin Falgout  {34731df}
[2016-01-30 04:11:04 -0600]  update translation strings                                             Dustin Falgout  {5458b0c}
[2016-01-30 03:03:38 -0600]  prepping for release                                                   Dustin Falgout  {094c31c}
[2016-01-30 02:41:32 -0600]  prepping for release                                                   Dustin Falgout  {f897ff1}
[2016-01-29 16:39:03 +0100]  Minor changes                                                              karasu      {d1039a5}
[2016-01-29 11:56:41 +0100]  Merge pull request #518 from waffle-iron/master                            karasu      {d3f8dd5}
[2016-01-29 03:54:46 -0700]  add waffle.io badge                                                    Making GitHub Delicious {a54abd3}
[2016-01-28 18:16:15 +0100]  Avoid failing if bugsnag returns msg                                       karasu      {fb17c69}
[2016-01-27 23:40:07 +0100]  Try to detect zfs installed version                                        karasu      {705a4ea}
[2016-01-27 23:26:16 +0100]  Thinking about what to do if user does not want the same language a..      karasu      {fea8895}
[2016-01-27 18:51:35 +0100]  Change luks password recommendation                                        karasu      {82182ff}
[2016-01-26 17:47:54 +0100]  Fix adding features packages                                               karasu      {0ccd66a}
[2016-01-26 17:43:00 +0100]  Fix BIG typo                                                               karasu      {780e977}
[2016-01-25 20:02:52 +0100]  Be able to use arch in packages (so we can install specific package..      karasu      {1bbd650}
[2016-01-24 19:51:45 +0100]  Translate messages shown to the user                                       karasu      {48ce731}
[2016-01-24 19:36:00 +0100]  Add more info messages (shown in the gui) to give a more accurate i..      karasu      {9eeedf7}
[2016-01-24 08:12:38 +0100]  Load smbd service if smb (samba) is selected                               karasu      {c29237f}
[2016-01-22 22:16:27 +0100]  Store network manager and desktop manager in config                        karasu      {fe6137b}
[2016-01-19 19:52:27 +0100]  Fix kde session name                                                       karasu      {474b88e}
[2016-01-19 19:50:06 +0100]  detect function is needed by features screen!                              karasu      {207ffd5}
[2016-01-19 19:44:38 +0100]  Give vesafb the lowest priority                                            karasu      {04a3775}
[2016-01-19 19:29:15 +0100]  ok. be less verbose                                                        karasu      {8b3c330}
[2016-01-19 19:27:44 +0100]  Added a LOT of debugging messages to hardware (this must be removed..      karasu      {e4a3a5b}
[2016-01-19 19:10:43 +0100]  extra symlink ¿?                                                           karasu      {fe2d9d9}
[2016-01-19 17:17:48 +0100]  Fix kde package name                                                       karasu      {cbc7ce9}
[2016-01-19 17:10:46 +0100]  Merge branch 'master' of github.com:lots0logs/cnchi-dev                    karasu      {2f37742}
[2016-01-19 17:09:44 +0100]  zfs is at version 0.6.5.4                                                  karasu      {919d8f0}
[2016-01-19 09:29:49 +0100]  LUKS+ZFS is not done!                                                      karasu      {523634c}
[2016-01-18 19:11:20 +0100]  Check against networkmanager                                               karasu      {77eac6c}
[2016-01-18 19:09:47 +0100]  Best label handling                                                        karasu      {e356c9d}
[2016-01-15 20:15:47 +0100]  Not log constantly                                                         karasu      {e218a17}
[2016-01-15 19:57:43 +0100]  Merge branch 'master' of github.com:lots0logs/cnchi-dev                    karasu      {48823e4}
[2016-01-15 19:56:24 +0100]  Fix package name                                                           karasu      {45d03d4}
[2016-01-15 10:11:17 +0100]  Do not fail if timesyncd.conf file is not found                            karasu      {9bb613e}
[2016-01-14 14:09:00 +0100]  Store excluded desktop features, not needed ones (looks cleaner).          karasu      {5433c9d}
[2016-01-13 20:07:42 +0100]  Log if ntp is used or not                                                  karasu      {4463d92}
[2016-01-11 22:49:15 +0100]  Let's hope this fixes issue #417 once and for all.                         karasu      {aa1fc6a}
[2016-01-11 21:38:51 +0100]  Testing Enlightenment                                                      karasu      {5c4d0a1}
[2016-01-09 18:52:23 +0100]  backwards compatibility for GRUB_DISABLE_SUBMENU                           karasu      {60dca63}
[2016-01-08 17:13:25 -0600]  Merge pull request #501 from codyzu/master                             Dustin Falgout  {431ff81}
[2016-01-08 23:01:02 +0100]  backwards compatibility for GRUB_DISABLE_SUBMENU                           codyzu      {1ed58b9}
[2016-01-08 22:25:31 +0100]  Added p7zip                                                                karasu      {e0e295c}
[2016-01-08 22:20:43 +0100]  ksnapshot retired                                                          karasu      {653f174}
[2016-01-07 17:45:41 +0100]  Merge pull request #1 from codyzu/grub_disable_submenu                     codyzu      {04f3473}
[2016-01-07 17:37:06 +0100]  fix GRUB_DISABLE_SUBMENU check to be standard                              codyzu      {fb10d84}
[2016-01-06 17:44:21 -0600]  Fix pkgname typo from previous commit                                  Dustin Falgout  {768f1f2}
[2016-01-06 12:36:59 -0600]  Merge pull request #499 from artur9010/patch-3                         Dustin Falgout  {265bfab}
[2016-01-06 19:10:16 +0100]  .7z support                                                             Artur Motyka   {a0dd6f5}
[2016-01-03 21:13:49 +0100]  Use only the partition, not the whole disk (first disk only)               karasu      {09a4bf3}
[2016-01-03 21:01:11 +0100]  Use device paths instead of ids when creating pool : https://github..      karasu      {782f555}
[2016-01-03 19:05:27 +0100]  Of course pool does not exist, I AM CREATING IT NOW! (wtf zfs?)            karasu      {64e811f}
[2016-01-03 18:06:37 +0100]  Why insisting works?                                                       karasu      {d466578}
[2016-01-03 15:22:43 +0100]  Wait                                                                       karasu      {fbef747}
[2016-01-03 14:15:37 +0100]  Fix image buttons                                                          karasu      {d5f522d}
[2016-01-03 12:06:56 +0100]  Remove unneeded code                                                       karasu      {906c69c}
[2016-01-03 12:02:44 +0100]  Show pool type help only if asked by user                                  karasu      {5184b7b}
[2016-01-02 14:18:24 +0100]  Added some debug messages. ZFS with more than one device seems to w..      karasu      {64bd34a}
[2016-01-02 14:08:11 +0100]  Always use force option when creating pool                                 karasu      {dafd80b}
[2016-01-02 14:06:18 +0100]  zfs no pool_id found                                                       karasu      {0a3ca41}
[2016-01-02 13:20:15 +0100]  Desesperate try to make zfs realise a pool has been created before ..      karasu      {3c35759}
[2016-01-02 12:18:06 +0100]  Back to the idea of creating pool in two fases                             karasu      {278bfd1}
[2016-01-02 11:01:36 +0100]  zfs                                                                        karasu      {b0d06cd}
[2016-01-02 10:42:39 +0100]  Do not use full path.                                                      karasu      {99a33bf}
[2016-01-02 09:41:10 +0100]  Let's see if zpool can be created once and for all                         karasu      {47a6b2b}
[2016-01-01 16:42:59 +0100]  Do not use always "antergos" as pool name (this will avoid problems..      karasu      {7a1f9ac}
[2016-01-01 16:32:37 +0100]  Small zfs changes                                                          karasu      {f778308}
[2016-01-01 15:13:17 +0100]  only mirror and raidz are valid pool types                                 karasu      {a747cbe}
[2016-01-01 15:10:07 +0100]  typo                                                                       karasu      {034231b}
[2016-01-01 15:07:18 +0100]  More zfs                                                                   karasu      {123a392}
[2016-01-01 12:29:08 +0100]  hating zfs more and more...                                                karasu      {df4b86d}
[2016-01-01 12:16:53 +0100]  Is mklabel not mktable!                                                    karasu      {f9e2587}
[2016-01-01 12:05:51 +0100]  typo                                                                       karasu      {da05d18}
[2016-01-01 12:05:06 +0100]  Do not write a MBR to zfs disks                                            karasu      {896bfd3}
[2016-01-01 11:53:50 +0100]  Do not use force when adding new devices to the pool                       karasu      {aebf476}
[2016-01-01 11:45:47 +0100]  Fix typo                                                                   karasu      {8a61b23}
[2015-12-31 10:45:32 +0100]  Show raid-z help just once                                                 karasu      {7056357}
[2015-12-31 10:32:56 +0100]  Do not wait for rankmirrors (even if there's still a process going ..      karasu      {1960858}
[2015-12-30 23:15:15 +0100]  Fix zfs typos. Change var names in auto_partition (and set boot to ..      karasu      {2ee0a13}
[2015-12-30 19:41:44 +0100]  Workaround for issue #422                                                  karasu      {84fe3b9}
[2015-12-30 13:29:27 +0100]  Users have reported problems if they surf the web and then try to i..      karasu      {e1b25c5}
[2015-12-29 17:57:31 -0600]  Merge remote-tracking branch 'origin/master'                           Dustin Falgout  {b0178a5}
[2015-12-29 17:51:36 -0600]  fix bug in auto_partition (cherry picked from commit 6d260a9)          Dustin Falgout  {acdb508}
[2015-12-28 08:47:41 +0100]  Add -f (force) parameter to zpool add                                      karasu      {ae0525a}
[2015-12-28 08:41:12 +0100]  check_pool_type() zfs                                                      karasu      {caff73e}
[2015-12-28 08:34:14 +0100]  Try to create stripe pool in two steps to avoid zfs failing                karasu      {33f32cb}
[2015-12-27 22:43:10 +0100]  Try to fix zpool creation (cannot create 'antergos': no such pool o..      karasu      {1c54b6d}
[2015-12-27 13:02:43 +0100]  Fix unmount_all_in_directory. Zfs with multiple disks is working.          karasu      {328396f}
[2015-12-27 12:21:46 +0100]  Delete the ending part of the disk, too. (init_device simplified)          karasu      {141fffd}
[2015-12-27 12:05:02 +0100]  Fix typo in zfs                                                            karasu      {cfbc8e8}
[2015-12-27 12:02:43 +0100]  zfs                                                                        karasu      {250389d}
[2015-12-27 10:44:09 +0100]  zpool export fails (but if I do it manually, it works)                     karasu      {99c212f}
[2015-12-27 10:36:52 +0100]  Still working on zfs                                                       karasu      {92a5e30}
[2015-12-27 09:58:10 +0100]  Do not ask NetworkManager (it does not work inside a VM)                   karasu      {a361e32}
[2015-12-27 09:37:21 +0100]  ZFS fails if a previous zfs installation is already done                   karasu      {106a643}
[2015-12-26 22:52:21 +0100]  Wipe the first 2MB when using zfs.py                                       karasu      {a538a77}
[2015-12-26 22:12:06 +0100]  fix typo in zfs.py                                                         karasu      {294493e}
[2015-12-26 22:09:31 +0100]  Use misc.run_cmd in zfs                                                    karasu      {1ace3cd}
[2015-12-26 20:40:39 +0100]  Do not create a partition inside zfs vols                                  karasu      {beaf3d4}
[2015-12-26 19:40:41 +0100]  Fixed pool_type for zpool create                                           karasu      {a3187fb}
[2015-12-26 19:26:15 +0100]  Wrong function. Fixed.                                                     karasu      {4fbc137}
[2015-12-26 12:03:38 +0100]  TODO: Check pool name                                                      karasu      {d74b5e0}
[2015-12-26 11:58:53 +0100]  ups (add /dev/disk/by-id for full disks, too)                              karasu      {16b67dd}
[2015-12-26 11:41:55 +0100]  Hope this fixes zfs in serveral disks                                      karasu      {d8f5231}
[2015-12-26 11:33:03 +0100]  Small fix                                                                  karasu      {2e35bbb}
[2015-12-26 11:06:32 +0100]  Cleaned up a bit zfs.py                                                    karasu      {7bcf636}
[2015-12-26 10:59:08 +0100]  Avoid duplicated code                                                      karasu      {d2f2f7c}
[2015-12-25 20:19:00 +0100]  Ugly fix to try to make autopartition run with non "standard" devices      karasu      {9976268}
[2015-12-25 11:58:49 +0100]  Someday Grub2 will install ok... in a zfs system.                          karasu      {1690e86}
[2015-12-25 09:56:02 +0100]  Import missing                                                             karasu      {fcf77fe}
[2015-12-25 08:49:56 +0100]  Ups. That if was not well written                                          karasu      {21672ec}
[2015-12-25 08:40:54 +0100]  Let's see if this helps installing bootloader in zfs                       karasu      {d7d868d}
[2015-12-25 08:32:57 +0100]  Improving bootloader code a little bit. zfs.py does not inform of i..      karasu      {8c9f43c}
[2015-12-24 21:09:37 +0100]  Give more information when an Exception of type Exception is caught.       karasu      {8b36aab}
[2015-12-22 18:58:54 +0100]  ugly and temporary fix just for testing zfs                                karasu      {3e44998}
[2015-12-22 18:40:47 +0100]  zfs packages are not being installed on /install                           karasu      {a3206f9}
[2015-12-22 17:46:05 +0100]  Setting mountpoint to / makes zfs try to mount it and fail.                karasu      {570b822}
[2015-12-22 17:32:09 +0100]  Trying to fix zfs                                                          karasu      {4f6e792}
[2015-12-22 16:12:06 +0100]  Some users have reported problems when setting alsa mixer options. ..      karasu      {5a150aa}
[2015-12-22 00:28:12 +0100]  Add zfs hook                                                               karasu      {edbef3d}
[2015-12-21 21:18:22 +0100]  Where does this symlink come from?                                         karasu      {c5be3ca}
[2015-12-21 21:15:33 +0100]  More work in bootloaders                                                   karasu      {6fbd12c}
[2015-12-21 19:46:04 +0100]  bootloader was too big and confusing. THIS IS NOT FINISHED                 karasu      {91bbf12}
[2015-12-21 17:53:20 +0100]  Fix typo                                                                   karasu      {d15af7b}
[2015-12-20 06:36:27 -0600]  Update packages.xml                                                    Dustin Falgout  {ad044d0}
[2015-12-19 21:40:32 -0600]  fix indent error                                                       Dustin Falgout  {84ae72b}
[2015-12-19 14:39:08 +0100]  Little modifications in run_cmd                                            karasu      {d012ef2}
[2015-12-19 13:27:37 +0100]  Do not log as warning when update.info is missing                          karasu      {8deaa14}
[2015-12-18 04:26:18 -0600]  Update .landscape.yaml                                                 Dustin Falgout  {58b63c7}
[2015-12-17 18:26:33 -0600]  new kde screenshots app not out of testing yet                         Dustin Falgout  {a7943d6}
[2015-12-17 18:25:08 -0600]  Merge pull request #489 from Wyn10/patch-1                             Dustin Falgout  {df6d6f7}
[2015-12-17 20:05:25 +0100]  Do not fail even if timezonemap.xml is not found                           karasu      {d13e689}
[2015-12-16 23:43:35 +0100]  Not needed                                                                 karasu      {e093b4a}
[2015-12-16 15:30:39 -0500]  Update packages.xml                                                          Wyn       {d842c62}
[2015-12-15 20:41:40 +0100]  Fix automatic installation (auto_partition) in mmcblk devices (can'..      karasu      {5b57d49}
[2015-12-15 10:28:53 +0100]  Add flash as a feature                                                     karasu      {93f5b47}
[2015-12-14 21:19:58 +0100]  Merge branch 'master' of https://github.com/lots0logs/cnchi-dev            karasu      {c5d7ebb}
[2015-12-14 21:19:04 +0100]  Fatal error if Cnchi can't get mainwindow screen (or installer scre..      karasu      {9a7db67}
[2015-12-14 12:55:56 -0600]  Merge remote-tracking branch 'stable/master' into stable               Dustin Falgout  {7aea58f}
[2015-12-14 12:54:27 -0600]  kde changes                                                            Dustin Falgout  {1c7de2b}
[2015-12-14 10:28:02 -0600]  trying to fix issue with no newlines being output to /etc/default/g..  Dustin Falgout  {8d16661}
[2015-12-14 09:18:34 -0600]  fix syntax error                                                       Dustin Falgout  {ae4635e}
[2015-12-14 09:11:50 -0600]  fix invalid attribute                                                  Dustin Falgout  {2387f78}
[2015-12-14 09:46:36 +0100]  swapoff needs root privileges                                              karasu      {bbf0fbb}
[2015-12-14 08:53:46 +0100]  Do not try to read Replay Protected Memory Block                           karasu      {e60dcf7}
[2015-12-14 08:39:41 +0100]  Fix pvremove command                                                       karasu      {ee1d30f}
[2015-12-14 08:35:11 +0100]  Typo                                                                       karasu      {a2c9349}
[2015-12-14 08:34:47 +0100]  Allow to pass stdin to call in run_cmd                                     karasu      {f6c8a79}
[2015-12-13 21:49:15 +0100]  Use our own call function in subprocess (easy to track errors)             karasu      {c5c2529}
[2015-12-13 21:38:49 +0100]  Do not always refresh gpg keys (it's a too slow process)                   karasu      {e0167e2}
[2015-12-13 21:05:52 +0100]  Merge pull request #486 from Wyn10/patch-1                                 karasu      {7ef7c86}
[2015-12-13 14:41:28 -0500]  KDE4 package removed                                                         Wyn       {3b49e81}
[2015-12-13 18:24:35 +0100]  Add zfs hook to mkinitcpio                                                 karasu      {25de414}
[2015-12-12 09:36:00 -0600]  needs more testing                                                     Dustin Falgout  {fda723a}
[2015-12-12 08:23:32 -0600]  blah! :wink:                                                           Dustin Falgout  {b5dd036}
[2015-12-12 07:29:29 -0600]  ...                                                                    Dustin Falgout  {6a2631c}
[2015-12-12 07:19:03 -0600]  almost done                                                            Dustin Falgout  {85cfdb7}
[2015-12-12 06:49:18 -0600]  Maybe should have postponed this but it will be ok                     Dustin Falgout  {4af5ba7}
[2015-12-12 06:28:19 -0600]  Merge remote-tracking branch 'origin/master'                           Dustin Falgout  {1f92b55}
[2015-12-12 06:28:05 -0600]  more kde changes                                                       Dustin Falgout  {9dbb8b9}
[2015-12-12 12:58:12 +0100]  Merge branch 'master' of github.com:lots0logs/cnchi-dev                    karasu      {6897b0b}
[2015-12-12 12:57:53 +0100]  Fix some minor issues                                                      karasu      {f2770b1}
[2015-12-12 05:55:55 -0600]  was moving a little too quickly :grimacing:                            Dustin Falgout  {f96ebe7}
[2015-12-12 05:23:34 -0600]  ...                                                                    Dustin Falgout  {e6db815}
[2015-12-12 05:10:57 -0600]  started working on dropping kde4                                       Dustin Falgout  {a34795e}
[2015-12-12 01:14:56 +0100]  OK, it seems that now we're getting all output info in our log file..      karasu      {385c4db}
[2015-12-12 00:47:07 +0100]  Still fooling around with error messages (and still not finished)          karasu      {d22e3bb}
[2015-12-11 23:57:22 +0100]  Trying to beautify error messages                                          karasu      {4ea2d8a}
[2015-12-11 19:47:30 +0100]  Let's try new call function                                                karasu      {cd9e258}
[2015-12-11 19:44:07 +0100]  Testing something (aesthetic)                                              karasu      {c9b8a1f}
[2015-12-11 19:37:50 +0100]  More fixing                                                                karasu      {8cc0c8a}
[2015-12-11 19:21:31 +0100]  Fix BIG typo                                                               karasu      {c2eb87b}
[2015-12-11 12:30:59 +0100]  Fix typo in auto_partition                                                 karasu      {26818e6}
[2015-12-11 12:23:35 +0100]  More work done in auto_partition                                           karasu      {eb71a44}
[2015-12-11 11:01:55 +0100]  Trying to fix error logging once and for all (UNFINISHED)                  karasu      {8ef704d}
[2015-12-11 09:00:26 +0100]  Working on subprocess                                                      karasu      {0c07038}
[2015-12-10 21:52:03 +0100]  Must rethink all this...                                                   karasu      {b505300}
[2015-12-10 21:15:47 +0100]  Nope                                                                       karasu      {59adf50}
[2015-12-10 21:14:10 +0100]  Trying something                                                           karasu      {e87c070}
[2015-12-10 21:08:33 +0100]  zfs                                                                        karasu      {32c400e}
[2015-12-10 21:06:20 +0100]  zfs (str to float and then to int, in this case)                           karasu      {62f31c8}
[2015-12-10 20:44:33 +0100]  Fix indentation error in bootloader                                        karasu      {194189b}
[2015-12-10 12:27:44 +0100]  Improve warning/error messages in fs_module.py                             karasu      {56f5caf}
[2015-12-09 18:25:54 +0100]  Fix bug in mkinitcpio (introduced by myself xD)                            karasu      {0bda569}
[2015-12-09 17:24:39 +0100]  Still working on download_requests                                         karasu      {abeb2bf}
[2015-12-09 15:15:28 +0100]  Testing check_output to see if it caches command error messages (st..      karasu      {d96bd60}
[2015-12-09 10:00:21 +0100]  more info                                                                  karasu      {98569ae}
[2015-12-09 09:52:37 +0100]  Split in more functions download_requests                                  karasu      {98bb5dc}
[2015-12-08 22:02:58 +0100]  Log a warning message when md5 sum does not match                          karasu      {39fe95d}
[2015-12-08 21:53:08 +0100]  Hope this fixes download_requests hash check                               karasu      {dc25ad2}
[2015-12-08 21:05:08 +0100]  fix download_requests.py                                                   karasu      {5feed4f}
[2015-12-08 20:51:43 +0100]  Working on progress (user messages get stuck)                              karasu      {a3f5d44}
[2015-12-08 20:41:58 +0100]  Some pep8. Remove testing option                                           karasu      {7910a8d}
[2015-12-08 15:42:58 +0100]  pep8 used_space                                                            karasu      {d33272a}
[2015-12-08 15:34:51 +0100]  pep8 partition_module                                                      karasu      {a79aa9a}
[2015-12-08 15:11:32 +0100]  pep8 fs_module                                                             karasu      {e1d85e4}
[2015-12-08 15:01:48 +0100]  pep8 pac.py                                                                karasu      {7d3ba9a}
[2015-12-08 14:42:15 +0100]  pep8 pacman.conf                                                           karasu      {c463344}
[2015-12-08 14:26:28 +0100]  pep8 on validation                                                         karasu      {ed09457}
[2015-12-08 14:17:48 +0100]  pep8 on tz                                                                 karasu      {a486a62}
[2015-12-08 13:58:54 +0100]  More pep8, now on timezonemap                                              karasu      {6d2155e}
[2015-12-08 13:30:12 +0100]  pep8 on keyboard_widget and keyboard_names                                 karasu      {f8c0309}
[2015-12-08 13:00:57 +0100]  pep8 on keyboard_names.py                                                  karasu      {3a0792b}
[2015-12-08 12:50:43 +0100]  pep8 on i18n                                                               karasu      {55352b8}
[2015-12-08 12:48:17 +0100]  pep8 on gtkwidgets.py                                                      karasu      {5c080cd}
[2015-12-08 12:35:41 +0100]  pep8 on extra.py                                                           karasu      {b400a99}
[2015-12-08 12:08:34 +0100]  pep8 camera.py (this module needs a lot of work)                           karasu      {ba071df}
[2015-12-08 11:58:03 +0100]  Pep8 (and bugfixing) zfs.py                                                karasu      {c64fbd3}
[2015-12-08 09:23:53 +0100]  pep8 on wrapper.py                                                         karasu      {03a4e0b}
[2015-12-08 09:21:46 +0100]  pep8 on systemd_networkd                                                   karasu      {dde4bae}
[2015-12-08 09:19:29 +0100]  More pep8                                                                  karasu      {6b6dbe7}
[2015-12-05 14:38:33 +0100]  pep8 lamp.py                                                               karasu      {5abdf19}
[2015-12-05 14:33:35 +0100]  pep8 install.py                                                            karasu      {43857f7}
[2015-12-05 13:51:15 +0100]  pep8 firewall                                                              karasu      {1fc1d5a}
[2015-12-05 13:47:16 +0100]  pep8 chroot.py                                                             karasu      {80dc532}
[2015-12-05 12:44:13 +0100]  pep8 bootloader                                                            karasu      {e0a79e4}
[2015-12-05 12:23:11 +0100]  pep8 automatic                                                             karasu      {0471703}
[2015-12-05 12:12:53 +0100]  pep8 ask.py                                                                karasu      {113dbc5}
[2015-12-05 11:38:30 +0100]  more pep8, now on advanced.py                                              karasu      {453f067}
[2015-12-04 09:59:17 +0100]  Working on advanced.py                                                     karasu      {7b8ee01}
[2015-12-04 09:51:06 +0100]  fix action messages and pep8                                               karasu      {213f186}
[2015-12-04 09:29:35 +0100]  pep8 on hardware.py                                                        karasu      {954de51}
[2015-12-04 08:59:25 +0100]  And more pep8 on nvidia                                                    karasu      {0dfeb3f}
[2015-12-04 08:56:24 +0100]  pep8 catalyst hardware module                                              karasu      {0becdb1}
[2015-12-04 08:54:25 +0100]  More pep8 in hardware module                                               karasu      {621e5f8}
[2015-12-04 08:47:40 +0100]  pep8 on hardware modules                                                   karasu      {f274d5f}
[2015-12-04 08:30:50 +0100]  pep8                                                                       karasu      {5bf07ba}
[2015-12-03 23:35:33 +0100]  Fix typo                                                                   karasu      {9dcec1b}
[2015-12-03 22:39:53 +0100]  Require webkit version, too                                                karasu      {16089a8}
[2015-12-03 22:37:41 +0100]  Split a big function. Needs testing!                                       karasu      {8b1311a}
[2015-12-03 17:02:04 +0100]  Must quit                                                                  karasu      {d7eb20d}
[2015-12-03 15:55:42 +0100]  pep8 on download.py                                                        karasu      {aedd79e}
[2015-12-03 14:35:07 +0100]  More pep8                                                                  karasu      {e2f451b}
[2015-12-03 14:20:02 +0100]  pep8                                                                       karasu      {5a73535}
[2015-12-03 14:19:32 +0100]  pep8 user_info                                                             karasu      {7eaa0b3}
[2015-12-03 13:58:54 +0100]  pep8 updater.py                                                            karasu      {07b198f}
[2015-12-03 13:46:33 +0100]  More pep8                                                                  karasu      {a9396d3}
[2015-12-02 09:50:57 +0100]  Catch OSError when calling setxkbmap, too.                                 karasu      {54e4402}
[2015-12-01 22:28:03 +0100]  Some users experience problems after amixer is run ¿?                      karasu      {f4ad531}
[2015-12-01 22:17:35 +0100]  More pep8 on show_message                                                  karasu      {1e826a9}
[2015-12-01 19:14:06 +0100]  pylint                                                                     karasu      {dce5eb0}
[2015-12-01 19:06:55 +0100]  pep8 rankmirrors                                                           karasu      {b85919d}
[2015-12-01 18:57:01 +0100]  pep8 main_window                                                           karasu      {714a78e}
[2015-12-01 18:44:25 +0100]  pep8 logging_utils                                                         karasu      {524181f}
[2015-12-01 15:54:45 +0100]  pep8 wrapper                                                               karasu      {7a6b54d}
[2015-12-01 15:48:17 +0100]  pep8 zfs                                                                   karasu      {87b251c}
[2015-12-01 15:31:45 +0100]  pep8 location                                                              karasu      {4629f39}
[2015-12-01 15:28:56 +0100]  pep8 on language                                                           karasu      {ff498ce}
[2015-12-01 15:17:25 +0100]  pylint                                                                     karasu      {c4448fd}
[2015-12-01 14:31:12 +0100]  more pylint                                                                karasu      {02e63f1}
[2015-12-01 13:43:34 +0100]  pylint                                                                     karasu      {8a85f3f}
[2015-11-27 02:40:32 -0600]  Revert "change files owned by root to user 1000"                       Dustin Falgout  {31060ff}
[2015-11-27 02:31:08 -0600]  change files owned by root to user 1000                                Dustin Falgout  {395e6ee}
[2015-11-24 22:51:29 -0600]  fix typo (cherry picked from commit 0a5a7e1)                           Dustin Falgout  {f8521c6}
[2015-11-22 13:53:15 +0100]  pylint                                                                     karasu      {b3e9712}
[2015-11-22 13:31:46 +0100]  pylint                                                                     karasu      {fac0a2f}
[2015-12-01 03:34:53 -0600]  fix issue with amixer command causing postinstall.sh to hang (maybe)   Dustin Falgout  {746238c}
[2015-12-01 03:17:17 -0600]  Merge remote-tracking branch 'origin/master'                           Dustin Falgout  {4636c6b}
[2015-12-01 03:15:50 -0600]  update pre-commit hook                                                 Dustin Falgout  {920e2b6}
[2015-12-01 03:13:16 -0600]  update pre-commit hook                                                 Dustin Falgout  {3847846}
[2015-12-01 10:01:17 +0100]  pylint                                                                     karasu      {9d8bece}
[2015-11-22 12:32:55 +0100]  Little changes to keyboard_widget                                          karasu      {5d51dff}
[2015-11-29 22:08:24 +0100]  Add cache dir to pacman (again)                                            karasu      {04ac00b}
[2015-11-29 21:43:37 +0100]  Updated pacman.conf template (used while installing)                       karasu      {3b4b26a}
[2015-11-29 21:31:40 +0100]  Need to check this out, but I think that alpm won't copy xz files t..      karasu      {12c022f}
[2015-11-29 21:19:16 +0100]  Run dirmngr before refresh-keys                                            karasu      {e75f67f}
[2015-11-29 20:42:38 +0100]  Nope, it didn't help.                                                      karasu      {85a4b24}
[2015-11-29 18:49:46 +0100]  Make alpm download packages before installing. Not useful really, j..      karasu      {0fc7a65}
[2015-11-29 18:31:43 +0100]  Added some comments (nothing new)                                          karasu      {7bdf3b3}
[2015-11-29 09:46:41 -0600]  try skipping the copying of cache files and let alpm get them itself   Dustin Falgout  {22c997c}
[2015-11-29 12:57:52 +0100]  Fix cryptsetup version adquiring (not really important)                    karasu      {65b3e93}
[2015-11-29 02:46:10 -0600]  add an upgrade method (like pacman -U) to pac.py in case we need it    Dustin Falgout  {d72434a}
[2015-11-29 02:23:30 -0600]  that was dumb. revert last three commits                               Dustin Falgout  {0e74ea5}
[2015-11-29 01:11:12 -0600]  :unamused:                                                             Dustin Falgout  {5c250bc}
[2015-11-29 00:57:32 -0600]  fix some faulty logic                                                  Dustin Falgout  {6e3b056}
[2015-11-29 00:36:14 -0600]  wrong key name                                                         Dustin Falgout  {bd68b1f}
[2015-11-29 00:21:05 -0600]  copy alpm database files for pkgs copied from iso's pkg cache          Dustin Falgout  {114831f}
[2015-11-28 22:44:07 -0600]  make sure we get all data from alpm errors                             Dustin Falgout  {bbc00f3}
[2015-11-28 21:48:23 -0600]  still working on checksum ussue                                        Dustin Falgout  {8c3f432}
[2015-11-28 21:33:53 -0600]  nothing important                                                      Dustin Falgout  {4a43288}
[2015-11-28 18:56:06 -0600]  need priveldges to delete stale cache files                            Dustin Falgout  {953042e}
[2015-11-28 18:51:23 -0600]  fix files owned by root. added utility script for future use           Dustin Falgout  {196473f}
[2015-11-28 11:23:27 +0100]  auto_partition was unmounting zfs (or so it seems)                         karasu      {72268c5}
[2015-11-28 11:05:09 +0100]  ZFS is not mounted                                                         karasu      {99edbf8}
[2015-11-27 18:59:59 +0100]  Forgot to add zfs packages to destination!!!                               karasu      {f85ad0c}
[2015-11-27 18:11:58 +0100]  Merge branch 'master' of github.com:lots0logs/cnchi-dev                    karasu      {13df307}
[2015-11-27 18:10:24 +0100]  fix typo                                                                   karasu      {358656a}
[2015-11-27 10:49:48 -0600]  forgot to handle md5 check failed event in slides.py                   Dustin Falgout  {d684eb6}
[2015-11-27 17:19:46 +0100]  Fix comment                                                                karasu      {d6653e1}
[2015-11-27 17:05:52 +0100]  Fix bug in install.py (only when using Base)                               karasu      {dc6dbb0}
[2015-11-27 17:03:57 +0100]  More zfs changes                                                           karasu      {979095e}
[2015-11-27 16:53:29 +0100]  zfs - Small modifications in install.py                                    karasu      {0b10c9b}
[2015-11-27 05:16:08 -0600]  missed this                                                            Dustin Falgout  {c17291b}
[2015-11-27 05:12:00 -0600]  Possible fix for antergos/cnchi#363 NEEDS TESTING!                     Dustin Falgout  {38f6b8e}
[2015-11-22 08:24:28 +0100]  More changes in zfs BUT ALSO in install                                    karasu      {d469583}
[2015-11-26 22:21:30 +0100]  Need to fill both vars                                                     karasu      {16623d9}
[2015-11-26 18:59:25 +0100]  Size in GB must be int                                                     karasu      {1ac6e34}
[2015-11-26 18:24:34 +0100]  Still working on zfs                                                       karasu      {61b0c8a}
[2015-11-26 14:18:03 +0100]  more zfs                                                                   karasu      {634e976}
[2015-11-25 22:28:28 +0100]  zfs get_swap_size needs fixing                                             karasu      {8e388de}
[2015-11-25 21:50:27 +0100]  Forgot a return                                                            karasu      {a3f35ae}
[2015-11-25 21:35:40 +0100]  Fix zpool command                                                          karasu      {67978ac}
[2015-11-25 19:28:27 +0100]  Fix check_output                                                           karasu      {03a0bc2}
[2015-11-25 18:43:13 +0100]  Fix typo                                                                   karasu      {6aa021a}
[2015-11-25 18:26:57 +0100]  More zfs                                                                   karasu      {2365f2c}
[2015-11-25 10:01:21 +0100]  must go, zfs                                                               karasu      {c74eff0}
[2015-11-25 07:09:02 +0100]  Some zfs modifications. Unfinished.                                        karasu      {560573a}
[2015-11-24 22:51:29 -0600]  fix typo                                                               Dustin Falgout  {0a5a7e1}
[2015-11-24 20:34:58 +0100]  Fix warning message. ZFS formats and installs ok, but bootloader is..      karasu      {420f17b}
[2015-11-24 19:18:49 +0100]  avoid an empty pool name                                                   karasu      {2a46559}
[2015-11-24 19:09:47 +0100]  docs are being generated by sphinx. A bit messy, but works. Check c..      karasu      {e012825}
[2015-11-22 02:06:05 +0100]  Working on docs. Changed misc.py to extras.py                              karasu      {2330997}
[2015-11-22 01:05:45 +0100]  Playing with sphinx                                                        karasu      {f305fbd}
[2015-11-22 00:36:48 +0100]  Fix bug in ask.py                                                          karasu      {b3bfd90}
[2015-11-24 09:48:09 +0100]  zfs : use pool_name from user if selected                                  karasu      {a1b91c0}
[2015-11-24 09:34:13 +0100]  Trying to fix summary bug                                                  karasu      {79ac96c}
[2015-11-23 20:33:19 +0100]  Forgot an import                                                           karasu      {8317286}
[2015-11-23 20:29:33 +0100]  More zfs - pre setup works (with None pool and one harddisk). Let's..      karasu      {8b148b2}
[2015-11-23 10:56:35 +0100]  Added docs (just playing with sphinx)                                      karasu      {32fcc7a}
[2015-11-22 21:02:32 +0100]  typo                                                                       karasu      {67c951c}
[2015-11-22 21:00:21 +0100]  zpool export fails in cnchi, works when I try it manually ¿?               karasu      {978dfc7}
[2015-11-22 20:49:33 +0100]  More zfs                                                                   karasu      {e57d505}
[2015-11-22 20:17:14 +0100]  And.... more ZFS                                                           karasu      {87bc670}
[2015-11-22 19:55:05 +0100]  Show version with -V or --version flags                                    karasu      {f3c811b}
[2015-11-22 19:43:25 +0100]  more zfs                                                                   karasu      {b643f86}
[2015-11-22 19:23:09 +0100]  build_server, self.install or result is None ¿?                            karasu      {5bc3437}
[2015-11-22 19:17:38 +0100]  From process dialogs can't be shown                                        karasu      {45f11b6}
[2015-11-22 17:59:09 +0100]  More zfs                                                                   karasu      {32cc639}
[2015-11-22 09:37:56 +0100]  Show errors                                                                karasu      {d5202d5}
[2015-11-21 09:41:45 -0600]  Merge pull request #470 from ronhuang/taiwan-not-part-of-china         Dustin Falgout  {3a5074b}
[2015-11-21 22:48:23 +0800]  Taiwan is not part of China                                               Ron Huang    {e1fb839}
[2015-11-21 14:51:21 +0100]  More ZFS                                                                   karasu      {1f22766}
[2015-11-21 13:13:00 +0100]  Install lightdm-webkit2-greeter                                            karasu      {b9ac894}
[2015-11-21 13:11:10 +0100]  Install lightdm-webkit2-greeter                                            karasu      {74a925a}
[2015-11-21 12:47:52 +0100]  zfs                                                                        karasu      {d7b44cb}
[2015-11-21 12:11:17 +0100]  zfs                                                                        karasu      {d422420}
[2015-11-21 12:10:21 +0100]  zfs                                                                        karasu      {91c3a07}
[2015-11-21 12:09:10 +0100]  zfs minor changes                                                          karasu      {01b918a}
[2015-11-21 12:01:59 +0100]  Show stdout                                                                karasu      {6e45695}
[2015-11-21 11:06:18 +0100]  zfs added -f to create                                                     karasu      {968fe41}
[2015-11-21 01:18:20 +0100]  zfs                                                                        karasu      {0b83fcc}
[2015-11-20 23:29:52 +0100]  zukitwo themes got renamed to zuki themes                                  karasu      {4412ea8}
[2015-11-20 23:28:58 +0100]  Allow to continue even if Cnchi is not updated                             karasu      {5c60119}
[2015-11-20 23:26:48 +0100]  Allow to continue even if it's not updated                                 karasu      {1fdd2b7}
[2015-11-20 23:20:32 +0100]  zukitwo-themes is now zuki-themes                                          karasu      {19fa02b}
[2015-11-20 17:30:49 +0100]  Log which ISO version is used by the user to run Cnchi                     karasu      {131bf34}
[2015-11-20 17:15:56 +0100]  Taiwan is not part of China                                                karasu      {b4ba9fe}
[2015-11-20 17:12:53 +0100]  Fix multiple typos                                                         karasu      {4342cc5}
[2015-11-20 17:09:57 +0100]  Fix typo                                                                   karasu      {cb993e6}
[2015-11-20 11:01:36 +0100]  wip                                                                        karasu      {56de5dc}
[2015-11-20 10:05:12 +0100]  Enable proprietary driver feature                                          karasu      {38c8a17}
[2015-11-20 09:52:00 +0100]  Disable AMD catalyst proprietary driver                                    karasu      {79fa939}
[2015-11-19 21:24:21 +0100]  Add nox package in base installs in virtualbox                             karasu      {8fee70c}
[2015-11-18 19:46:39 +0100]  Nope, I was wrong.                                                         karasu      {30b5d71}
[2015-11-18 19:46:02 +0100]  Convert two if's to one.                                                   karasu      {d2a50ae}
[2015-11-18 19:35:43 +0100]  Add exception "control" to issue #465                                      karasu      {3cf1f82}
[2015-11-18 19:20:57 +0100]  Try to minimize issue #451 effects. I cannot reproduce it, though.         karasu      {4bc572f}
[2015-11-18 18:47:17 +0100]  Merge pull request #460 from prescott66/patch-7                            karasu      {da8c410}
[2015-11-18 18:43:56 +0100]  Add a control to get_used_fat                                              karasu      {5b3f28e}
[2015-11-17 14:09:20 +0100]  Fix typo                                                                   karasu      {689e5ff}
[2015-11-17 14:00:25 +0100]  Force Gtk 3.18 (also show graphic warning message if pyalpm is not ..      karasu      {b66ada3}
[2015-11-16 19:01:28 -0600]  set editor env var in postinstall (cherry picked from commit 0bce60a)  Dustin Falgout  {72d9cba}
[2015-11-16 19:01:28 -0600]  set editor env var in postinstall                                      Dustin Falgout  {0bce60a}
[2015-11-16 18:19:51 +0100]  Add -ff to pvremove (I thought that this was already done...¿?)            karasu      {f27d011}
[2015-11-16 10:00:58 +0100]  Fix typo in zfs                                                            karasu      {9aa2ad6}
[2015-11-15 20:51:15 +0100]  working on create_zfs_pool                                                 karasu      {e70e665}
[2015-11-15 20:42:18 +0100]  Fix zfs encrypt checkbox                                                   karasu      {06ba08d}
[2015-11-15 19:21:10 +0100]  zfs                                                                        karasu      {2998405}
[2015-11-15 18:31:49 +0100]  zfs                                                                        karasu      {b653f2a}
[2015-11-15 18:27:01 +0100]  zfs                                                                        karasu      {0d7fc67}
[2015-11-15 17:31:07 +0100]  Working on fix summary blank error. Not much luck with this as I ca..      karasu      {3847c51}
[2015-11-15 11:02:01 +0100]  Set right height in slides                                                 karasu      {0f3671b}
[2015-11-15 10:27:28 +0100]  Fix if typo in ask.py                                                      karasu      {bfd3295}
[2015-11-14 13:25:18 +0100]  Some beautification                                                        karasu      {1571f21}
[2015-11-13 12:49:46 -0600]  fix window size issues with new version of numix frost theme (cherr..  Dustin Falgout  {950e38c}
[2015-11-13 12:27:31 -0600]  fix window size issues with new version of numix frost theme           Dustin Falgout  {0b53a8f}
[2015-11-13 17:24:41 +0100]  Fix MATE, add Cinnamon to user-dirs patch                                  karasu      {52cb826}
[2015-11-12 23:40:10 +0100]  Fix user-dirs-update-gtk.desktop path                                      karasu      {d79e7ad}
[2015-11-12 23:38:40 +0100]  Patch for issue #464 (needs testing)                                       karasu      {971cba3}
[2015-11-12 20:56:20 +0100]  Trying to create home dirs using the right language (xfce)                 karasu      {230fb82}
[2015-11-12 18:58:57 +0100]  Install xdg-user-dirs-update in Openbox, too.                              karasu      {97bd84a}
[2015-11-11 16:23:16 -0600]  not really sure if it will help but it cant hurt so why not? anterg..  Dustin Falgout  {74ef943}
[2015-11-11 16:22:30 -0600]  don't call blkid if part value is empty. Hopefully Fixes antergos/C..  Dustin Falgout  {3b8bf16}
[2015-11-11 16:19:57 -0600]  not really sure if it will help but it cant hurt so why not? anterg..  Dustin Falgout  {b48cf3e}
[2015-11-11 15:51:08 -0600]  don't call blkid if part value is empty. Hopefully Fixes antergos/C..  Dustin Falgout  {6c0c37a}
[2015-11-11 19:47:55 +0100]  Shorten explanations                                                       karasu      {e3677b8}
[2015-11-11 19:40:01 +0100]  Fix return identation. Could fix issue #422 (needs testing)                karasu      {4e58812}
[2015-11-11 19:37:04 +0100]  Fix ugly bug (in advanced and summary screens)                             karasu      {30a4070}
[2015-11-08 13:51:29 +0100]  Add ZFS as an automatic option                                             karasu      {400fd44}
[2015-11-08 13:10:18 +0100]  Add pl to cnchi.desktop                                                    karasu      {d57fc54}
[2015-11-08 13:09:01 +0100]  Update cnchi.desktop                                                     Dušan Kazik   {eb85113}
[2015-11-08 00:34:03 +0100]  Merge pull request #459 from artur9010/patch-1                             karasu      {eb262f8}
[2015-11-07 22:29:29 +0100]  Update cnchi.desktop                                                        Artur      {3c25a49}
[2015-11-07 20:44:18 +0100]  More work on zfs. Fixed a typo in ask screen                               karasu      {f2680be}
[2015-11-07 17:47:11 +0100]  Activate forward button (in case we came back from zfs)                    karasu      {108581f}
[2015-11-07 17:43:32 +0100]  Some more changes in zfs                                                   karasu      {1775a93}
[2015-11-07 08:29:47 -0600]  dont add GRUB_ENABLE_CRYPTODISK when boot is on encrypted root part..  Dustin Falgout  {c1d762e}
[2015-10-31 20:14:14 +0100]  Fix typo in var name                                                       karasu      {28a655e}
[2015-10-31 18:49:54 +0100]  Do not show errors when livecd is full                                     karasu      {a14f1e6}
[2015-10-31 18:31:29 +0100]  Fix alsactl store command                                                  karasu      {bcee0d0}
[2015-10-31 15:36:16 +0100]  Need to be root to load zfs module                                         karasu      {3177940}
[2015-10-31 14:26:36 +0100]  do not show ZFS if module can't be loaded                                  karasu      {950af8a}
[2015-10-31 14:17:57 +0100]  Fix exception message in zfs                                               karasu      {c57a469}
[2015-10-31 13:06:32 +0100]  Try to fix get_changes                                                     karasu      {15f4759}
[2015-10-31 12:57:21 +0100]  Fix device_path                                                            karasu      {8eaf48f}
[2015-10-31 12:53:53 +0100]  Forgot to change var                                                       karasu      {42c6adb}
[2015-10-31 12:51:56 +0100]  Working on get_changes in zfs                                              karasu      {23e075a}
[2015-10-31 11:10:23 +0100]  Added force_4k message in zfs                                              karasu      {6b2b140}
[2015-10-31 10:34:26 +0100]  Fix typos in zfs                                                           karasu      {3febf21}
[2015-10-31 00:03:19 -0500]  pycharm bug grrr                                                       Dustin Falgout  {2bf48b6}
[2015-10-31 00:00:54 -0500]  Merge remote-tracking branch 'origin/master'                           Dustin Falgout  {40597c3}
[2015-10-30 19:03:25 -0500]  Update 10_antergos                                                     Julio Gutierrez {ace9baf}
[2015-10-30 23:53:27 -0500]  Merge pull request #456 from bubuntux/master                           Dustin Falgout  {077ed53}
[2015-10-30 18:03:25 -0600]  Update 10_antergos                                                     Julio Gutierrez {c7c106a}
[2015-10-30 19:17:35 +0100]  load zfs module                                                            karasu      {bcd86bc}
[2015-10-30 19:14:35 +0100]  More zfs                                                                   karasu      {c5e122d}
[2015-10-30 11:00:04 +0100]  More zfs                                                                   karasu      {a5c6ab5}
[2015-10-30 09:00:18 +0100]  Need to get disk id                                                        karasu      {539a767}
[2015-10-29 23:33:20 +0100]  zfs                                                                        karasu      {080f9bb}
[2015-10-29 20:09:08 +0100]  Working on zfs                                                             karasu      {928c567}
[2015-10-29 12:29:58 +0100]  Nothing really, just have to rush out (so I save the changes)              karasu      {8a96c2e}
[2015-10-28 23:27:50 +0100]  Fix imports (and a typo)                                                   karasu      {22d582e}
[2015-10-28 23:24:57 +0100]  Split of auto_partition in two files (wrapper and itself) for ZFS s..      karasu      {10b9cd3}
[2015-10-28 22:13:09 +0100]  Add CSS style for zfs_radio_btn                                            karasu      {8a32243}
[2015-10-28 09:46:50 +0100]  More on zfs                                                                karasu      {6201cd4}
[2015-10-27 21:46:49 +0100]  Try to get stderr when mkfs fails                                          karasu      {740a250}
[2015-10-27 21:29:58 +0100]  And more work in zfs                                                       karasu      {eb41e1c}
[2015-10-27 19:47:39 +0100]  Go back to choose vconsole in install.py (no vconsole.py). Problem ..      karasu      {2d0fa41}
[2015-10-27 14:25:05 +0100]  fill_partition_list to be finished                                         karasu      {c6e0d31}
[2015-10-27 14:22:06 +0100]  Added parted to zfs                                                        karasu      {0c8946e}
[2015-10-27 14:18:37 +0100]  And... yes, more work on zfs screen                                        karasu      {e6334bd}
[2015-10-27 14:07:22 +0100]  More work on zfs                                                           karasu      {afb0e82}
[2015-10-27 13:45:49 +0100]  More work on zfs                                                           karasu      {c21117f}
[2015-10-26 16:40:51 +0100]  Little changes                                                             karasu      {d93d0b7}
[2015-10-26 15:56:46 +0100]  ZFS dialog done                                                            karasu      {954865a}
[2015-10-24 03:52:47 -0500]  :unamused:                                                             Dustin Falgout  {7169303}
[2015-10-24 03:51:01 -0500]  quick/dirty fixes for comparing remote version with local version      Dustin Falgout  {11b5496}
[2015-10-24 03:33:48 -0500]  update my local copy of precommit hook                                 Dustin Falgout  {fa8a8dc}
[2015-10-24 03:31:45 -0500]  ups. Fix error in generate_update_info.py (cherry picked from commi..  Dustin Falgout  {41b4443}
[2015-10-24 03:30:33 -0500]  Download update.info once when checking Internet version. (cherry p..  Dustin Falgout  {0b15850}
[2015-10-24 03:28:53 -0500]  Forgotten import (cherry picked from commit ece3d1e)                   Dustin Falgout  {ab4e4d4}
[2015-10-07 03:00:16 -0500]  Working on checking version (cherry picked from commit 59e90cf)            karasu      {6cee6ce}
[2015-10-24 03:09:57 -0500]  Use time,perf_counter() for accurate bps calculation (Fixes antergo..  Dustin Falgout  {61e882e}
[2015-10-24 03:09:57 -0500]  Use time.perf_counter() in download Use time,perf_counter() for acc..  Dustin Falgout  {2c47103}
[2015-10-23 05:28:50 -0500]  looking into #429 (cherry picked from commit b3fb54d)                  Dustin Falgout  {78de954}
[2015-10-23 05:28:50 -0500]  looking into #429                                                      Dustin Falgout  {b3fb54d}
[2015-10-22 16:59:28 +0200]  playing around                                                             karasu      {6161a2e}
[2015-10-22 16:36:24 +0200]  Added zfs screen (does nothing)                                            karasu      {2621b63}
[2015-10-22 14:24:16 +0200]  Playing around with an special dialog for zfs (inspired in GhostBSD)       karasu      {6b69572}
[2015-10-20 10:00:36 +0200]  Working on vconsole.conf creation                                          karasu      {4d8c6ec}
[2015-10-17 10:23:31 +0200]  Working on rEFInd                                                          karasu      {34ccc63}
[2015-10-16 21:17:38 +0200]  Working on rEFInd (but will have to wait 0.16.x)                           karasu      {db7515e}
[2015-10-15 16:56:26 +0200]  Prepare Cnchi to be able to use rEFInd                                     karasu      {b588a1e}
[2015-10-10 16:41:13 +0200]  Wait 20 seconds before slide transition                                    karasu      {fd06e8e}
[2015-10-10 16:27:56 +0200]  Added bootstrap to easely translate slides text                            karasu      {8300b72}
[2015-10-08 16:55:04 +0200]  err.output only shows what the command returns (but not the error)...      karasu      {9763a2f}
[2015-10-08 15:48:30 +0200]  Added acpid to common                                                      karasu      {e161a06}
[2015-10-08 15:36:43 +0200]  Trying to fix #433                                                         karasu      {7e304d6}
[2015-10-08 13:08:45 +0200]  It seems there's a tab error here, but I can't find it (issue #437)        karasu      {68f4e1c}
[2015-10-08 13:00:31 +0200]  Fixes issue #440                                                           karasu      {235f979}
[2015-10-07 20:37:10 +0200]  ups. Fix error in generate_update_info.py                                  karasu      {ad838a3}
[2015-10-07 20:32:01 +0200]  Removed logserver as we use bugsnag                                        karasu      {7fabd1b}
[2015-10-07 16:40:16 +0200]  Download update.info once when checking Internet version.                  karasu      {0deb74a}
[2015-10-07 16:30:24 +0200]  Update pre-commit hook                                                     karasu      {343c963}
[2015-10-07 16:25:35 +0200]  Update pre-commit hook with update.info update                             karasu      {db2c795}
[2015-10-07 16:19:28 +0200]  Forgotten import                                                           karasu      {ece3d1e}
[2015-10-07 10:00:16 +0200]  Working on checking version                                                karasu      {59e90cf}
[2015-10-07 09:28:41 +0200]  Fix pot file                                                               karasu      {03781e8}
[2015-10-07 09:23:24 +0200]  Update translations (source pot file)                                      karasu      {ca553ab}
[2015-10-07 09:03:05 +0200]  little modification in README                                              karasu      {9fdba1c}
[2015-10-06 14:08:47 +0200]  As chroot is a static method we should be able to call it directly         karasu      {5f60d7d}
[2015-10-05 16:42:36 +0200]  Minor changes                                                              karasu      {babd64f}
[2015-10-04 22:04:47 +0200]  Fix typo                                                                   karasu      {d2ba3de}
[2015-10-04 22:02:09 +0200]  Some strings were not translated                                           karasu      {1e32949}
[2015-10-04 12:52:44 +0200]  Fix unmount_all_in_directory from auto_partition                           karasu      {c2c7dfd}
[2015-10-04 11:57:04 +0200]  We do not have metadata files in our repo                                  karasu      {8b0e0e9}
[2015-10-04 11:53:20 +0200]  Takes too long                                                             karasu      {17d49b9}
[2015-10-04 11:40:12 +0200]  Update databases and mount special dirs BEFORE installing                  karasu      {9636a72}
[2015-10-04 11:18:01 +0200]  Enable detection of linux-* named initrd. Fixes #442                       karasu      {3069d1e}
[2015-10-04 11:17:07 +0200]  Merge pull request #443 from DanySK/master                                 karasu      {b5bd04e}
[2015-10-04 10:35:39 +0200]  Fix typo                                                                   karasu      {9be3af6}
[2015-10-04 10:23:39 +0200]  Can't write xz files to cache. Permission problem?                         karasu      {810095f}
[2015-10-03 20:34:10 +0200]  Copy downloaded xz files to user's provided cache (if possible)            karasu      {cb50d47}
[2015-10-03 15:09:48 +0200]  Enable detection of linux-* named initrd. Fixes #442                   Danilo Pianini  {83467ee}
[2015-10-02 21:23:18 +0200]  Removed unused file                                                        karasu      {f0d066c}
[2015-10-02 20:12:11 +0200]  Name is pacman.log                                                         karasu      {92a46db}
[2015-10-02 18:55:08 +0200]  log alpm to /tmp/alpm.log                                                  karasu      {472d987}
[2015-10-02 12:02:56 +0200]  Fix some comments. Need to find out where pacman error messages are..      karasu      {10d5067}
[2015-10-02 10:55:03 +0200]  Log "command failed to execute correctly" as a debug message               karasu      {92c33e5}
[2015-10-02 10:36:00 +0200]  Line comments where too long                                               karasu      {438d006}
[2015-10-02 10:15:27 +0200]  Check that pacman_conf_dir is always created                               karasu      {a7c48ea}
[2015-10-02 08:54:08 +0200]  Forgot hook                                                                karasu      {3169442}
[2015-10-02 08:51:00 +0200]  Fix valuerror exception in advanced                                        karasu      {6623d2a}
[2015-10-01 22:05:03 +0200]  Added sample code (gvfs-mount)                                             karasu      {07b275f}
[2015-10-01 21:08:34 +0200]  We do not always have md5 info. If it's not present we must assume ..      karasu      {e33c3e4}
[2015-10-01 20:41:39 +0200]  Prepare code to be able to specify multiple xz package cache direct..      karasu      {986e83a}
[2015-09-30 19:45:15 +0200]  download_error when url is none (just in case is the last url we try)      karasu      {ce5834e}
[2015-09-27 05:02:05 -0500]  Update packages.xml                                                    Dustin Falgout  {22b637e}
[2015-09-27 05:00:32 -0500]  Update packages.xml                                                    Dustin Falgout  {efb91e4}
[2015-09-26 21:17:23 +0200]  Merge branch 'master' of github.com:Antergos/Cnchi                         karasu      {bf8dd82}
[2015-09-26 21:16:28 +0200]  Fix for issue #436                                                         karasu      {9cd7d03}
[2015-09-26 19:55:40 +0200]  Merge pull request #435 from fionera/master                                karasu      {b210244}
[2015-09-26 17:57:43 +0200]  Added "device"                                                         Tim Windelschmidt {3da2393}
[2015-09-26 12:46:37 +0200]  Backport hardware module changes to solve issue #431                       karasu      {0cab130}
[2015-09-25 23:07:10 -0500]  missed this                                                            Dustin Falgout  {fcae144}
[2015-09-25 22:38:39 -0500]  backport fixes for metalinks and vbox detection from dev branch (ch..  Dustin Falgout  {e083d15}
[2015-09-25 22:21:18 -0500]  send install result to build server                                    Dustin Falgout  {8dbcdac}
[2015-09-24 20:43:01 +0200]  Fix bug in warning message                                                 karasu      {60dcc0e}
[2015-09-21 23:56:00 -0500]  Merge remote-tracking branch 'stable/master' into stable               Dustin Falgout  {d745dfb}
[2015-09-21 23:54:37 -0500]  continue trying other mirrors after we catch an exception. fixes #426  Dustin Falgout  {b505188}
[2015-09-21 07:09:19 -0500]  Made a few adjustments to rankmirrors (cherry picked from commit 75..  Dustin Falgout  {4f80ead}
[2015-09-21 23:35:10 -0500]  port postinstall changes from stable                                   Dustin Falgout  {2eee631}
[2015-09-21 23:20:34 -0500]  fix metalink url sorting (needs testing). fix vbox not properly det..  Dustin Falgout  {0ae609d}
[2015-09-21 09:19:58 -0500]  working on metalinks                                                   Dustin Falgout  {10fc11e}
[2015-09-21 07:40:46 -0500]  oops :grimacing:                                                       Dustin Falgout  {bfa404e}
[2015-09-21 07:37:19 -0500]  continue trying other mirrors after we catch an exception. fixes an..  Dustin Falgout  {4d6c44f}
[2015-09-21 07:09:19 -0500]  Made a few adjustments to rankmirrors                                  Dustin Falgout  {754e727}
[2015-09-19 20:30:12 +0200]  Set lightdm greeter in Cnchi                                               karasu      {bb059a6}
[2015-09-19 19:38:09 +0200]  Check device in mount line                                                 karasu      {682285c}
[2015-09-19 18:46:00 +0200]  removed unnecessary if                                                     karasu      {8621389}
[2015-09-19 18:44:40 +0200]  Missing _()                                                                karasu      {2fa203a}
[2015-09-19 18:37:25 +0200]  Fix name                                                                   karasu      {f85f2b8}
[2015-09-19 18:30:29 +0200]  Better names for functions                                                 karasu      {38c8240}
[2015-09-19 18:00:10 +0200]  Do not delete lvm from other devices                                       karasu      {0d818df}
[2015-09-19 17:57:21 +0200]  Do not delete lvm from other devices                                       karasu      {99ecb90}
[2015-09-18 15:29:02 -0500]  dont send alpm warning level messages to bugsnag (cherry picked fro..  Dustin Falgout  {5dab4d4}
[2015-09-18 15:25:48 -0500]  dont send alpm warning level messages to bugsnag                       Dustin Falgout  {ee2c6f8}
[2015-09-18 19:52:30 +0200]  Use systemd-boot (pka gummiboot)                                           karasu      {77fc043}
[2015-09-18 19:41:41 +0200]  Do not overwrite lvm in advanced                                           karasu      {9958509}
[2015-09-15 18:09:10 +0200]  If something is mounted, unmount it (warn the user but do not ask p..      karasu      {aa12269}
[2015-09-15 17:55:59 +0200]  Show TB in advanced                                                        karasu      {52ac9d3}
[2015-09-14 23:13:06 +0200]  Trying to fix get_toplevel error                                           karasu      {4b10c4d}
[2015-09-14 20:24:14 +0200]  Port postinstall.sh stable changes                                         karasu      {42df27b}
[2015-09-14 18:32:25 +0200]  This left forward button pressed.                                          karasu      {1973cca}
[2015-09-13 20:25:36 +0200]  Working on fixing hardware module (pre-install, post-install and co..      karasu      {aa330ce}
[2015-09-13 19:18:41 +0200]  Ask for a boot partition when using f2fs as root                           karasu      {8329c5e}
[2015-09-13 17:54:16 +0200]  Show which button is selected in welcome screen                            karasu      {5c38e02}
[2015-09-13 01:00:54 -0500]  fix it for real this time                                              Dustin Falgout  {3baba93}
[2015-09-12 20:43:41 -0500]  hopefully this will fix it                                             Dustin Falgout  {ebc29bc}
[2015-09-12 18:53:12 +0200]  Formatting and partitioning makes gui nearly freeze. Makes no sense..      karasu      {cd5fc90}
[2015-09-12 18:45:05 +0200]  Show pulse bar while doing auto partition process                          karasu      {cf90cf9}
[2015-09-11 21:24:33 -0500]  go back to previous method for now                                     Dustin Falgout  {8a8cd6d}
[2015-09-11 20:13:22 -0500]  not sure why it isnt working. it works fine running the commands ma..  Dustin Falgout  {100f564}
[2015-09-11 18:48:10 -0500]  fix version again :grimacing:                                          Dustin Falgout  {c8045e6}
[2015-09-11 18:47:36 -0500]  fix version                                                            Dustin Falgout  {618514b}
[2015-09-11 18:46:35 -0500]  dont start container until after os-release files are copied.          Dustin Falgout  {de945fa}
[2015-09-11 20:37:59 +0200]  Fix queue_event in auto_partition                                          karasu      {dda8e5f}
[2015-09-11 20:30:52 +0200]  Not sure about this                                                        karasu      {3b49276}
[2015-09-11 20:21:00 +0200]  No parameter is required                                                   karasu      {d44e16f}
[2015-09-11 20:19:15 +0200]  Playing with toplevel                                                      karasu      {3b2a47d}
[2015-09-11 19:24:06 +0200]  Try to at least, show a pulse progress bar when auto partitioning          karasu      {08b16da}
[2015-09-11 14:39:37 +0200]  Fixes issue #418 https://github.com/Antergos/Cnchi/issues/418              karasu      {ec59781}
[2015-09-11 13:36:28 +0200]  Use -F in advanced (in automatic it was already being used) issue #..      karasu      {99b6c61}
[2015-09-11 13:09:22 +0200]  why * 8 ?                                                                  karasu      {3dc5a26}
[2015-09-11 12:50:36 +0200]  There's something wrong with bps                                           karasu      {39229b3}
[2015-09-11 05:01:06 -0500]  Merge remote-tracking branch 'stable/master' into stable               Dustin Falgout  {b7c712e}
[2015-09-11 04:49:27 -0500]  redirect output to logfile only once to prevent recursion (cherry p..  Dustin Falgout  {0971044}
[2015-09-11 04:34:12 -0500]  fix set-settings issue with dbus-launch (cherry picked from commit ..  Dustin Falgout  {e36f4a1}
[2015-09-11 04:49:27 -0500]  redirect output to logfile only once to prevent recursion              Dustin Falgout  {0df7c82}
[2015-09-11 04:36:12 -0500]  Merge branch 'master' of github.com:lots0logs/cnchi-dev                Dustin Falgout  {c81b06c}
[2015-09-11 11:35:59 +0200]  Run postinstall script with /dev binded                                    karasu      {3d666a0}
[2015-09-11 04:34:12 -0500]  fix set-settings issue with dbus-launch                                Dustin Falgout  {9bfc2da}
[2015-09-11 11:23:07 +0200]  Do not mount/umount /dev constantly (just do it at the beginning an..      karasu      {53c5283}
[2015-09-10 22:40:27 +0200]  Do not leave an empty if in set-settings                                   karasu      {28521d6}
[2015-09-10 22:25:37 +0200]  Do not leave an if empty                                                   karasu      {d91a234}
[2015-09-10 22:07:12 +0200]  Still don't know what's happening                                          karasu      {d44a574}
[2015-09-10 00:18:15 +0200]  Can't find what's wrong                                                    karasu      {2f0b474}
[2015-09-09 23:13:03 +0200]  Remove wrong mkdir. This solves nothing.                                   karasu      {e4712ad}
[2015-09-09 22:48:30 +0200]  Log postinstall parameters                                                 karasu      {2ad5a94}
[2015-09-09 22:22:10 +0200]  What the hell is wrong with this? Vanilla Gnome?                           karasu      {b85190c}
[2015-09-09 21:26:45 +0200]  Try to fix postinstall script in Gnome.                                    karasu      {f6e8988}
[2015-09-09 18:25:07 +0200]  Give a minute between connection tries (hoping that connection will..      karasu      {7bea1d4}
[2015-09-09 14:17:55 +0200]  Update readme                                                              karasu      {531ab2d}
[2015-09-08 17:26:06 +0200]  Use systemd-boot (previously called gummiboot)                             karasu      {dd11f62}
[2015-09-07 22:52:06 +0200]  Fixed in https://github.com/Antergos/Cnchi/issues/411                      karasu      {c0d9f26}
[2015-09-07 22:37:27 +0200]  Fixes issue #409                                                           karasu      {298ab15}
[2015-09-07 21:39:14 +0200]  Fix version number                                                         karasu      {d5cae13}
[2015-09-07 21:38:27 +0200]  Merge branch 'master' of github.com:lots0logs/cnchi-dev                    karasu      {76ae003}
[2015-09-07 21:37:38 +0200]  Fixes issue #410 but needs testing (do not merge to stable yet)            karasu      {35f6553}
[2015-09-07 12:32:20 -0500]  fix pot file header                                                    Dustin Falgout  {671e7f8}
[2015-09-07 12:29:47 -0500]  fix pot file header                                                    Dustin Falgout  {64405d2}
[2015-09-07 19:23:04 +0200]  typos                                                                      karasu      {f8428f8}
[2015-09-07 18:44:47 +0200]  Merge pull request #407 from Wyn10/master                                  karasu      {0f6c2af}
[2015-09-07 00:15:22 -0400]  Spelling error.                                                              Wyn       {0284442}
[2015-09-06 17:08:29 +0200]  6.5GB is not enough when installing KDE plus all features.                 karasu      {d5784b5}
[2015-09-06 12:37:00 +0200]  Fix kde language pack installation (pt_BR was failing)                     karasu      {6008f1b}
[2015-09-06 12:05:43 +0200]  Update cnchi.pot file                                                      karasu      {0409dde}
[2015-09-06 01:27:03 -0500]  move logging logging related classes to their own module. don't att..  Dustin Falgout  {7586224}
[2015-09-06 01:06:23 -0500]  move logging logging related classes to their own module. don't att..  Dustin Falgout  {63671ff}
[2015-09-06 07:39:15 +0200]  Added compile_all helper script                                            karasu      {b772d34}
[2015-09-05 20:11:37 -0500]  if we dont have an install id when attempting to send an error to b..  Dustin Falgout  {4a2e784}
[2015-09-05 20:11:37 -0500]  if we dont have an install id when attempting to send an error to b..  Dustin Falgout  {112a121}
[2015-09-05 19:52:28 -0500]  save change log state for v0.12.0 release announcement, update pre-..  Dustin Falgout  {e10b76a}
[2015-09-05 21:05:07 +0200]  New dev version                                                            karasu      {0369d14}
[2015-09-05 21:04:27 +0200]  Updated cnchi.pot                                                          karasu      {ded539d}

================================================
FILE: COPYING
================================================
                    GNU GENERAL PUBLIC LICENSE
                       Version 3, 29 June 2007

 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

                            Preamble

  The GNU General Public License is a free, copyleft license for
software and other kinds of works.

  The licenses for most software and other practical works are designed
to take away your freedom to share and change the works.  By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users.  We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors.  You can apply it to
your programs, too.

  When we speak of free software, we are referring to freedom, not
price.  Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.

  To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights.  Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.

  For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received.  You must make sure that they, too, receive
or can get the source code.  And you must show them these terms so they
know their rights.

  Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.

  For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software.  For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.

  Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so.  This is fundamentally incompatible with the aim of
protecting users' freedom to change the software.  The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable.  Therefore, we
have designed this version of the GPL to prohibit the practice for those
products.  If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.

  Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary.  To prevent this, the GPL assures that
patents cannot be used to render the program non-free.

  The precise terms and conditions for copying, distribution and
modification follow.

                       TERMS AND CONDITIONS

  0. Definitions.

  "This License" refers to version 3 of the GNU General Public License.

  "Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.

  "The Program" refers to any copyrightable work licensed under this
License.  Each licensee is addressed as "you".  "Licensees" and
"recipients" may be individuals or organizations.

  To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy.  The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.

  A "covered work" means either the unmodified Program or a work based
on the Program.

  To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy.  Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.

  To "convey" a work means any kind of propagation that enables other
parties to make or receive copies.  Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.

  An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License.  If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.

  1. Source Code.

  The "source code" for a work means the preferred form of the work
for making modifications to it.  "Object code" means any non-source
form of a work.

  A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.

  The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form.  A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.

  The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities.  However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work.  For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.

  The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.

  The Corresponding Source for a work in source code form is that
same work.

  2. Basic Permissions.

  All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met.  This License explicitly affirms your unlimited
permission to run the unmodified Program.  The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work.  This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.

  You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force.  You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright.  Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.

  Conveying under any other circumstances is permitted solely under
the conditions stated below.  Sublicensing is not allowed; section 10
makes it unnecessary.

  3. Protecting Users' Legal Rights From Anti-Circumvention Law.

  No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.

  When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.

  4. Conveying Verbatim Copies.

  You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.

  You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.

  5. Conveying Modified Source Versions.

  You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:

    a) The work must carry prominent notices stating that you modified
    it, and giving a relevant date.

    b) The work must carry prominent notices stating that it is
    released under this License and any conditions added under section
    7.  This requirement modifies the requirement in section 4 to
    "keep intact all notices".

    c) You must license the entire work, as a whole, under this
    License to anyone who comes into possession of a copy.  This
    License will therefore apply, along with any applicable section 7
    additional terms, to the whole of the work, and all its parts,
    regardless of how they are packaged.  This License gives no
    permission to license the work in any other way, but it does not
    invalidate such permission if you have separately received it.

    d) If the work has interactive user interfaces, each must display
    Appropriate Legal Notices; however, if the Program has interactive
    interfaces that do not display Appropriate Legal Notices, your
    work need not make them do so.

  A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit.  Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.

  6. Conveying Non-Source Forms.

  You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:

    a) Convey the object code in, or embodied in, a physical product
    (including a physical distribution medium), accompanied by the
    Corresponding Source fixed on a durable physical medium
    customarily used for software interchange.

    b) Convey the object code in, or embodied in, a physical product
    (including a physical distribution medium), accompanied by a
    written offer, valid for at least three years and valid for as
    long as you offer spare parts or customer support for that product
    model, to give anyone who possesses the object code either (1) a
    copy of the Corresponding Source for all the software in the
    product that is covered by this License, on a durable physical
    medium customarily used for software interchange, for a price no
    more than your reasonable cost of physically performing this
    conveying of source, or (2) access to copy the
    Corresponding Source from a network server at no charge.

    c) Convey individual copies of the object code with a copy of the
    written offer to provide the Corresponding Source.  This
    alternative is allowed only occasionally and noncommercially, and
    only if you received the object code with such an offer, in accord
    with subsection 6b.

    d) Convey the object code by offering access from a designated
    place (gratis or for a charge), and offer equivalent access to the
    Corresponding Source in the same way through the same place at no
    further charge.  You need not require recipients to copy the
    Corresponding Source along with the object code.  If the place to
    copy the object code is a network server, the Corresponding Source
    may be on a different server (operated by you or a third party)
    that supports equivalent copying facilities, provided you maintain
    clear directions next to the object code saying where to find the
    Corresponding Source.  Regardless of what server hosts the
    Corresponding Source, you remain obligated to ensure that it is
    available for as long as needed to satisfy these requirements.

    e) Convey the object code using peer-to-peer transmission, provided
    you inform other peers where the object code and Corresponding
    Source of the work are being offered to the general public at no
    charge under subsection 6d.

  A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.

  A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling.  In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage.  For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product.  A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.

  "Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source.  The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.

  If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information.  But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).

  The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed.  Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.

  Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.

  7. Additional Terms.

  "Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law.  If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.

  When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it.  (Additional permissions may be written to require their own
removal in certain cases when you modify the work.)  You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.

  Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:

    a) Disclaiming warranty or limiting liability differently from the
    terms of sections 15 and 16 of this License; or

    b) Requiring preservation of specified reasonable legal notices or
    author attributions in that material or in the Appropriate Legal
    Notices displayed by works containing it; or

    c) Prohibiting misrepresentation of the origin of that material, or
    requiring that modified versions of such material be marked in
    reasonable ways as different from the original version; or

    d) Limiting the use for publicity purposes of names of licensors or
    authors of the material; or

    e) Declining to grant rights under trademark law for use of some
    trade names, trademarks, or service marks; or

    f) Requiring indemnification of licensors and authors of that
    material by anyone who conveys the material (or modified versions of
    it) with contractual assumptions of liability to the recipient, for
    any liability that these contractual assumptions directly impose on
    those licensors and authors.

  All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10.  If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term.  If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.

  If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.

  Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.

  8. Termination.

  You may not propagate or modify a covered work except as expressly
provided under this License.  Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).

  However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.

  Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.

  Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License.  If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.

  9. Acceptance Not Required for Having Copies.

  You are not required to accept this License in order to receive or
run a copy of the Program.  Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance.  However,
nothing other than this License grants you permission to propagate or
modify any covered work.  These actions infringe copyright if you do
not accept this License.  Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.

  10. Automatic Licensing of Downstream Recipients.

  Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License.  You are not responsible
for enforcing compliance by third parties with this License.

  An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations.  If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.

  You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License.  For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.

  11. Patents.

  A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based.  The
work thus licensed is called the contributor's "contributor version".

  A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version.  For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.

  Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.

  In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement).  To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.

  If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients.  "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.

  If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.

  A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License.  You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.

  Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.

  12. No Surrender of Others' Freedom.

  If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all.  For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.

  13. Use with the GNU Affero General Public License.

  Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work.  The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.

  14. Revised Versions of this License.

  The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time.  Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.

  Each version is given a distinguishing version number.  If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation.  If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.

  If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.

  Later license versions may give you additional or different
permissions.  However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.

  15. Disclaimer of Warranty.

  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

  16. Limitation of Liability.

  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.

  17. Interpretation of Sections 15 and 16.

  If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.

                     END OF TERMS AND CONDITIONS

            How to Apply These Terms to Your New Programs

  If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.

  To do so, attach the following notices to the program.  It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.

    <one line to give the program's name and a brief idea of what it does.>
    Copyright (C) <year>  <name of author>

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.

Also add information on how to contact you by electronic and paper mail.

  If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:

    <program>  Copyright (C) <year>  <name of author>
    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
    This is free software, and you are welcome to redistribute it
    under certain conditions; type `show c' for details.

The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License.  Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".

  You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<http://www.gnu.org/licenses/>.

  The GNU General Public License does not permit incorporating your program
into proprietary programs.  If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library.  If this is what you want to do, use the GNU Lesser General
Public License instead of this License.  But first, please read
<http://www.gnu.org/philosophy/why-not-lgpl.html>.

================================================
FILE: README.md
================================================
# Cnchi ![GitHub release](https://img.shields.io/github/release/antergos/cnchi.svg)

**Graphical Installer for Antergos Linux**

![Read the docs](https://readthedocs.org/projects/cnchi/badge/?version=latest) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/141e37590a9e4a2da3b3d84c0a6241ac)](https://www.codacy.com/project/karasu/Cnchi/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=Antergos/Cnchi&amp;utm_campaign=Badge_Grade_Dashboard) ![License](https://img.shields.io/github/license/antergos/cnchi.svg) ![GitHub issues](https://img.shields.io/github/issues/antergos/cnchi.svg) ![Github commits](https://img.shields.io/github/commits-since/antergos/cnchi/latest.svg) ![Release date](https://img.shields.io/github/release-date/SubtitleEdit/subtitleedit.svg) [![Gitter](https://badges.gitter.im/Antergos/Cnchi.svg)](https://gitter.im/Antergos/Cnchi?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

You are viewing the `0.16.x` branch (stable).

## Current Status

|Development Stage|Branch|Version| Code Status|
----------------- | -------------- | -------------- | -------- |
|Cnchi Stable|0.16.x|![0.16.12](https://img.shields.io/github/release/antergos/cnchi.svg)|Frozen|
|Cnchi Development|0.17.x|![0.17.1](https://img.shields.io/github/release/antergos/cnchi/all.svg)|Development|
|Cnchi Next (UI agnostic)|master|master|Development|

## Usage:

```sh
sudo -E cnchi.py
```

#### Optional parameters:

|Command|Description|
----------------- | -------------- |
|```-a``` , ```--a11y```|*Set accessibility feature on by default*|
|```-c``` , ```--cache```|*Use pre-downloaded xz packages when possible*|
|```-d``` , ```--debug```|*Sets Cnchi log level to 'debug'*|
|```-e``` , ```--environment```|*Sets the Desktop Environment that will be installed, see [desktop_info.py](cnchi/desktop_info.py) for options*|
|```-f``` , ```--force```|*Runs cnchi even if it detects that another instance is running*|
|```-n``` , ```--no-check```|*Makes checks optional in check screen*|
|```-p``` , ```--packagelist```|*Install the packages referenced by a local xml instead of the defaults, see [#617](https://github.com/Antergos/Cnchi/issues/617) for proper usage*|
|```-t``` , ```--no-tryit```|*Disables first screen's 'try it' option*|
|```-v``` , ```--verbose```|*Show logging messages to stdout*|
|```-V``` , ```--version```|*Show Cnchi version and quit*|
|```-z``` , ```--hidden```|*Show options in development (for developers only, do not use this!)*|

To create logs to help debug problems:
```sh
sudo -E cnchi.py -dv
```

## Reporting bugs:

Please report any issues with Cnchi in the issue tracker. Provide all log files along with a detailed description:

* /var/log/cnchi/cnchi.log
* /var/log/cnchi/cnchi-alpm.log (if it exists)
* /var/log/cnchi/postinstall.log (if it exists)
* /var/log/cnchi/pacman.log (if it exists)

## Translations

We manage our translations via [Transifex](https://www.transifex.com/projects/p/antergos)

<a name="dependencies">Dependencies</a>

 - gtk3
 - python (python3)
 - python-cairo
 - python-chardet
 - python-dbus
 - python-feedparser
 - python-gobject
 - python-idna
 - python-mako
 - python-requests
 - geoip (python-geoip2, python-maxminddb, geoip2-database)
 - pyparted (parted, dosfstools, mtools, ntfs-3g, ntfsprogs)
 - pyalpm (alpm)
 - upower
 - gocryptfs
 - iso-codes
 - clutter, clutter-gtk, clutter-gst
 - gsteamer1.0
 - python-libnacl

## Unit tests
 - python-mock

## Fonts needed by the keyboard widget
 - ttf-aboriginal-sans
 - ttf-indic-otf
 - ttf-khmer
 - ttf-lohit-fonts
 - ttf-myanmar3
 - ttf-thaana-fonts
 - ttf-tlwg

## Building Cnchi

[PKGBUILD](https://raw.githubusercontent.com/Antergos/antergos-packages/master/antergos/cnchi-dev/PKGBUILD)

## Development

### Getting started

You will need to install all [dependencies](#dependencies).

- Fork Cnchi
- Do your changes (use 0.16.x branch as base!)

Then, you can use the run script to test Cnchi. As this is a Installer, you will need to use a [Virtual Machine](http://virtualbox.org) or an additional harddisk to test it.

How to easy prepare a sane testing environment:
1. Download Antergos ISO
2. Create a new VM in Virtualbox, add the live iso and a virtual harddisk (two harddisks if you want to cache the downloaded packages)
3. Run the VM
4. Cnchi will open, close it.
5. Remove Cnchi ISO version: `sudo rm -rf /usr/share/cnchi`
6. Install git: `sudo pacman -S git`
7. Install - Install your Cnchi version from your own repository:
```
cd /home/antergos
git clone https://github.com/<username>/cnchi
cd cnchi
sudo ln -s /home/antergos/cnchi /usr/share/cnchi
```
8. Create a screenshot of the VM (so you don't have to redo all this each time you want to test your changes).
9. Run Cnchi and start testing!

If your tests are OK, you can then create your PR and push it here (against development branch, which now it's 0.16.x)

### Development Tips

When creating a Pull Request (PR), please check that you follow the [PEP8](https://www.python.org/dev/peps/pep-0008/) style guide (you have a stylized presentation at [pep8.org](http://pep8.org)). You can use [pycodestyle](https://github.com/pycqa/pycodestyle) (former pep8) or [pylint.org](https://www.pylint.org) or whatever you prefer to check your python3 files.

#### Spaces are the preferred indentation method.

### Documented classes

To start tinkering, we would recommend to check all open [#issues](https://github.com/Antergos/Cnchi/issues) and find one you find you will be able to start with (choose something that seems easy to do), so you feel familiar with cnchi's structure. You can find info about it at [readthedocs](https://cnchi.readthedocs.io/en/latest/)


================================================
FILE: TODO.md
================================================
# CNCHI (Antergos Installer) TODO LIST

Visit our TODO repository https://github.com/Antergos/TODO


================================================
FILE: TRANSLATORS
================================================
Thanks to all of those who have helped translate Cnchi, both in the past and
currently. Our translations are currently maintained in Transifex; please read
doc/translation-help.txt for more details.

Below is a list of past translators before we switched to Transifex; more can
be found by looking in the GIT history.

If your language is not already in the various po/ subdirectories and you wish
it was, set up a team in Transifex for your language and we will be happy to
add your language to the mix.

Cnchi - Translating
====================

This document is here to guide you in helping translate Cnchi messages.

We are currently using www.transifex.com as the translation
platform for Cnchi. You will need to sign up for an account there
and then register with a translation team on the
www.transifex.com/projects/p/antergos/


Translating Messages
--------------------

Overview
~~~~~~~~

Translation message files are a specially formatted text file containing the
original message and the corresponding translation. These po files can then
either be hand edited, or modified with a tool such as poedit, gtranslator or
kbabel. Using a translation tool tends to make the job easier.

Please read up on Transifex usage using the
http://help.transifex.net/[Transifex Help] if you are not familiar.

Here is an example set of commands if you have a source code checkout and are
not worried about any local translations being overwritten. The .tx/ directory
is checked into the git repository so is preconfigured with the project
resources (See `tx status` output for a quick overview).

	tx pull -f
	poedit po/<mylang>.po
	tx push -t -l <mylang>

See the <<Notes,Notes>> section for additional hints on translating.

Pre-release Updates
~~~~~~~~~~~~~~~~~~~

A week or two before each release, the codebase will go into a string freeze
and a message will be post on our site www.antergos.com asking for translations.

At this time, the latest `.po` language files will be made available at the
Transifex project page. Translators interested in helping are encouraged to use the
features of Transifex to let others know they are currently translating their
language.

Once a translator has completed the translation (*OR* realizes they do not have
time to finish), please upload your progress back to the Transifex site.

NOTE: Please upload your translations as soon as possible- this will give other
speakers of your language time to review your translations and update them as
necessary.

Adding a New Language
~~~~~~~~~~~~~~~~~~~~~

Making a new language is not too hard, but be sure to follow all the steps.
You will have to do the following steps in the `po/` directory,
substituting where appropriate. Run the following command:

	msginit -l <lang code> -o <lang code>.po -i cnchi.pot

Look at the current message files for more guidance if necessary. Once you
create the new language file, you may need to slightly modify the headers;
try to make them look similar to the other .po file headers. In addition, for
all new translations we would strongly recommend using UTF-8 encoding.

Notes[[Notes]]
~~~~~~~~~~~~~~

msgid and msgstr 'variables' can be on as many lines as necessary. Line breaks
are ignored- if you need a literal line break, use an `\n` in your string. The
following two translations are equivalent:

	msgstr "This is a test translation"

	msgstr ""
	"This is a test translation"

If you want to test the translation:

	cp <lang code>.mo /usr/share/locale/<lang code>/LC_MESSAGES/cnchi.mo
    LANG=<lang code> ./cnchi


================================================
FILE: changes-0.15.md
================================================
# Cnchi 0.15.x (development)

## Changes

- Big code cleanup (PEP8, remove duplicated code, reduce complexity, remove unused code...)
- Rankmirrors modifications.
- Fix https://github.com/Antergos/Cnchi/issues/907
- Fixed download_requests (now uses the same mirror)
- Added cache page
- Set LTS Kernel as default in GRUB (if selected)
- Sphinx documentation in docs folder
- Check sha256 sum of packages by default if possible. Use md5 if not.
- Show logs in color when logging to stdout.
- Store logs in /var/log/cnchi instead of /tmp
- Removed self update code (we use pacman to update cnchi)
- Split advanced.py in several files (and classes).
- Added GeoIP database checking in timezone module.
- Added an "energy" feature.
- Rearranged pages (user's page before summary page).
- User is created along with its group (it does not use users group).
- Update metalink creation and error checking (metalink.py)
- Use defusedxml
- Updated Readme.md
- Split ZFS code in two modules for better readability (zfs, zfs_manager)
- Changed ZFS disk structure
- Use sha256 sum when checking downloaded files (instead of md5)
- Merged lembrame code
- Install yay as AUR helper
- Move LUKS code from auto_partition to its own module (luks)
- Move mount functions from auto_partition to its own module (mount)
- Split mkinitcpio code into several functions
- New class Events to manage... events. Removed queue_events function from several modules.
- Do not use meta packages in packages.xml
- Added i3 and Budgie to available desktops
- Use /var/tmp instead of /tmp
- self.ui got renamed to self.gui
- Be able to boot when /usr is in a separate partition
- Removed apply button in avatar choosing dialog (just double click on the wanted image)
- Once the packages list is created, check that there is no removed/renamed package in that list that will break the installation
- Set MIN_SIZE for the installation to 16GB (instead of 8GB)
- Fix user_info when going back and forth
- Set valign to center in some screens (maybe we can set it to top and make cnchi window smaller...)
- Get Cnchi latest stable version from antergos repository database (antergos.db)

## Not ready
- Encrypt home folder using gocryptfs (untested, not enabled).
- Webcam in user page (untested, not enabled).


================================================
FILE: cnchi.desktop
================================================
[Desktop Entry]
Name=Install Antergos Linux
Name[pl]=Zainstaluj Antergos Linux
Name[sk]=Inštalovať Antergos Linux
GenericName=Live Installer
Comment=Install the operating system to disk
Comment[pl]=Zainstaluj system Antergos Linux
Comment[sk]=Nainštaluje operačný systém na disk
Exec=/usr/bin/cnchi
Icon=cnchi
Terminal=False
Type=Application
Categories=System;


================================================
FILE: data/.gitattributes
================================================
*.mmdb filter=lfs diff=lfs merge=lfs -text


================================================
FILE: data/GeoLite2-City.mmdb
================================================
version https://git-lfs.github.com/spec/v1
oid sha256:891ea62394d6d915d516d960d3648e0b68ec1d3c54040ec02c193066292faf37
size 56482235


================================================
FILE: data/base.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xkbConfigRegistry SYSTEM "xkb.dtd">
<xkbConfigRegistry version="1.1">
    <modelList>
        <model>
            <configItem>
                <name>pc101</name>
                <description>Generic 101-key PC</description>
                <vendor>Generic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>pc102</name>
                <description>Generic 102-key (Intl) PC</description>
                <vendor>Generic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>pc104</name>
                <description>Generic 104-key PC</description>
                <vendor>Generic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>pc105</name>
                <description>Generic 105-key (Intl) PC</description>
                <vendor>Generic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>dell101</name>
                <description>Dell 101-key PC</description>
                <vendor>Dell</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>latitude</name>
                <description>Dell Latitude series laptop</description>
                <vendor>Dell</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>dellm65</name>
                <description>Dell Precision M65</description>
                <vendor>Dell</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>everex</name>
                <description>Everex STEPnote</description>
                <vendor>Everex</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>flexpro</name>
                <description>Keytronic FlexPro</description>
                <vendor>Keytronic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoft</name>
                <description>Microsoft Natural</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>omnikey101</name>
                <description>Northgate OmniKey 101</description>
                <vendor>Northgate</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>winbook</name>
                <description>Winbook Model XP5</description>
                <vendor>Generic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>pc98</name>
                <description>PC-98xx Series</description>
                <vendor>Generic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>a4techKB21</name>
                <description>A4Tech KB-21</description>
                <vendor>A4Tech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>a4techKBS8</name>
                <description>A4Tech KBS-8</description>
                <vendor>A4Tech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>a4_rfkb23</name>
                <description>A4Tech Wireless Desktop RFKB-23</description>
                <vendor>A4Tech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>airkey</name>
                <description>Acer AirKey V</description>
                <vendor>Acer</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>azonaRF2300</name>
                <description>Azona RF2300 wireless Internet Keyboard</description>
                <vendor>Azona</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>scorpius</name>
                <description>Advance Scorpius KI</description>
                <vendor>Scorpius</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>brother</name>
                <description>Brother Internet Keyboard</description>
                <vendor>Brother</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>btc5113rf</name>
                <description>BTC 5113RF Multimedia</description>
                <vendor>BTC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>btc5126t</name>
                <description>BTC 5126T</description>
                <vendor>BTC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>btc6301urf</name>
                <description>BTC 6301URF</description>
                <vendor>BTC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>btc9000</name>
                <description>BTC 9000</description>
                <vendor>BTC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>btc9000a</name>
                <description>BTC 9000A</description>
                <vendor>BTC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>btc9001ah</name>
                <description>BTC 9001AH</description>
                <vendor>BTC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>btc5090</name>
                <description>BTC 5090</description>
                <vendor>BTC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>btc9019u</name>
                <description>BTC 9019U</description>
                <vendor>BTC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>btc9116u</name>
                <description>BTC 9116U Mini Wireless Internet and Gaming</description>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>cherryblue</name>
                <description>Cherry Blue Line CyBo@rd</description>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>cherryblueb</name>
                <description>Cherry CyMotion Master XPress</description>
                <vendor>Cherry</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>cherrybluea</name>
                <description>Cherry Blue Line CyBo@rd (alternate option)</description>
                <vendor>Cherry</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>cherrycyboard</name>
                <description>Cherry CyBo@rd USB-Hub</description>
                <vendor>Cherry</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>cherrycmexpert</name>
                <description>Cherry CyMotion Expert</description>
                <vendor>Cherry</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>cherrybunlim</name>
                <description>Cherry B.UNLIMITED</description>
                <vendor>Cherry</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>chicony</name>
                <description>Chicony Internet Keyboard</description>
                <vendor>Chicony</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>chicony0108</name>
                <description>Chicony KU-0108</description>
                <vendor>Chicony</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>chicony0420</name>
                <description>Chicony KU-0420</description>
                <vendor>Chicony</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>chicony9885</name>
                <description>Chicony KB-9885</description>
                <vendor>Chicony</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>compaqeak8</name>
                <description>Compaq Easy Access Keyboard</description>
                <vendor>Compaq</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>compaqik7</name>
                <description>Compaq Internet Keyboard (7 keys)</description>
                <vendor>Compaq</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>compaqik13</name>
                <description>Compaq Internet Keyboard (13 keys)</description>
                <vendor>Compaq</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>compaqik18</name>
                <description>Compaq Internet Keyboard (18 keys)</description>
                <vendor>Compaq</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>cymotionlinux</name>
                <description>Cherry CyMotion Master Linux</description>
                <vendor>Cherry</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>armada</name>
                <description>Laptop/notebook Compaq (eg. Armada) Laptop Keyboard</description>
                <vendor>Compaq</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>presario</name>
                <description>Laptop/notebook Compaq (eg. Presario) Internet Keyboard</description>
                <vendor>Compaq</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>ipaq</name>
                <description>Compaq iPaq Keyboard</description>
                <vendor>Compaq</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>dell</name>
                <description>Dell</description>
                <vendor>Dell</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>dellsk8125</name>
                <description>Dell SK-8125</description>
                <vendor>Dell</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>dellsk8135</name>
                <description>Dell SK-8135</description>
                <vendor>Dell</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>dellusbmm</name>
                <description>Dell USB Multimedia Keyboard</description>
                <vendor>Dell</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>inspiron</name>
                <description>Dell Laptop/notebook Inspiron 6xxx/8xxx</description>
                <vendor>Dell</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>precision_m</name>
                <description>Dell Laptop/notebook Precision M series</description>
                <vendor>Dell</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>dexxa</name>
                <description>Dexxa Wireless Desktop Keyboard</description>
                <vendor>Dexxa</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>diamond</name>
                <description>Diamond 9801 / 9802 series</description>
                <vendor>Diamond</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>dtk2000</name>
                <description>DTK2000</description>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>ennyah_dkb1008</name>
                <description>Ennyah DKB-1008</description>
                <vendor>Ennyah</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>fscaa1667g</name>
                <description>Fujitsu-Siemens Computers AMILO laptop</description>
                <vendor>Fujitsu-Siemens</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>genius</name>
                <description>Genius Comfy KB-16M / Genius MM Keyboard KWD-910</description>
                <vendor>Genius</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>geniuscomfy</name>
                <description>Genius Comfy KB-12e</description>
                <vendor>Genius</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>geniuscomfy2</name>
                <description>Genius Comfy KB-21e-Scroll</description>
                <vendor>Genius</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>geniuskb19e</name>
                <description>Genius KB-19e NB</description>
                <vendor>Genius</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>geniuskkb2050hs</name>
                <description>Genius KKB-2050HS</description>
                <vendor>Genius</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>gyration</name>
                <description>Gyration</description>
                <vendor>Gyration</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>htcdream</name>
                <description>HTC Dream</description>
                <vendor>HTC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>kinesis</name>
                <description>Kinesis</description>
                <vendor>Kinesis</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logitech_base</name>
                <description>Logitech Generic Keyboard</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logitech_g15</name>
                <description>Logitech G15 extra keys via G15daemon</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hpi6</name>
                <description>Hewlett-Packard Internet Keyboard</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hp250x</name>
                <description>Hewlett-Packard SK-250x Multimedia Keyboard</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hpxe3gc</name>
                <description>Hewlett-Packard Omnibook XE3 GC</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hpxe3gf</name>
                <description>Hewlett-Packard Omnibook XE3 GF</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hpxt1000</name>
                <description>Hewlett-Packard Omnibook XT1000</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hpdv5</name>
                <description>Hewlett-Packard Pavilion dv5</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hpzt11xx</name>
                <description>Hewlett-Packard Pavilion ZT11xx</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hp500fa</name>
                <description>Hewlett-Packard Omnibook 500 FA</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hp5xx</name>
                <description>Hewlett-Packard Omnibook 5xx</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hpnx9020</name>
                <description>Hewlett-Packard nx9020</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hp6000</name>
                <description>Hewlett-Packard Omnibook 6000/6100</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>honeywell_euroboard</name>
                <description>Honeywell Euroboard</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hpmini110</name>
                <description>Hewlett-Packard Mini 110 Notebook</description>
                <vendor>Hewlett-Packard</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>rapidaccess</name>
                <description>IBM Rapid Access</description>
                <vendor>Lenovo (previously IBM)</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>rapidaccess2</name>
                <description>IBM Rapid Access II</description>
                <vendor>Lenovo (previously IBM)</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>thinkpad</name>
                <description>IBM ThinkPad 560Z/600/600E/A22E</description>
                <vendor>Lenovo (previously IBM)</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>thinkpad60</name>
                <description>IBM ThinkPad R60/T60/R61/T61</description>
                <vendor>Lenovo (previously IBM)</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>thinkpadz60</name>
                <description>IBM ThinkPad Z60m/Z60t/Z61m/Z61t</description>
                <vendor>Lenovo (previously IBM)</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>ibm_spacesaver</name>
                <description>IBM Space Saver</description>
                <vendor>Lenovo (previously IBM)</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logiaccess</name>
                <description>Logitech Access Keyboard</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logiclx300</name>
                <description>Logitech Cordless Desktop LX-300</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logii350</name>
                <description>Logitech Internet 350 Keyboard</description>
                <vendor>Logitech</vendor>
                <hwList>
                    <hwId>046d:c313</hwId>
                </hwList>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logimel</name>
                <description>Logitech Media Elite Keyboard</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logicd</name>
                <description>Logitech Cordless Desktop</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logicd_it</name>
                <description>Logitech Cordless Desktop iTouch</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logicd_nav</name>
                <description>Logitech Cordless Desktop Navigator</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logicd_opt</name>
                <description>Logitech Cordless Desktop Optical</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logicda</name>
                <description>Logitech Cordless Desktop (alternate option)</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logicdpa2</name>
                <description>Logitech Cordless Desktop Pro (alternate option 2)</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logicfn</name>
                <description>Logitech Cordless Freedom/Desktop Navigator</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logicdn</name>
                <description>Logitech Cordless Desktop Navigator</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logiitc</name>
                <description>Logitech iTouch Cordless Keyboard (model Y-RB6)</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logiik</name>
                <description>Logitech Internet Keyboard</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>itouch</name>
                <description>Logitech iTouch</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logicink</name>
                <description>Logitech Internet Navigator Keyboard</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logiex110</name>
                <description>Logitech Cordless Desktop EX110</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logiinkse</name>
                <description>Logitech iTouch Internet Navigator Keyboard SE</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logiinkseusb</name>
                <description>Logitech iTouch Internet Navigator Keyboard SE (USB)</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logiultrax</name>
                <description>Logitech Ultra-X Keyboard</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logiultraxc</name>
                <description>Logitech Ultra-X Cordless Media Desktop Keyboard</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logidinovo</name>
                <description>Logitech diNovo Keyboard</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>logidinovoedge</name>
                <description>Logitech diNovo Edge Keyboard</description>
                <vendor>Logitech</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>mx1998</name>
                <description>Memorex MX1998</description>
                <vendor>Memorex</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>mx2500</name>
                <description>Memorex MX2500 EZ-Access Keyboard</description>
                <vendor>Memorex</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>mx2750</name>
                <description>Memorex MX2750</description>
                <vendor>Memorex</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoft4000</name>
                <description>Microsoft Natural Ergonomic Keyboard 4000</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoft7000</name>
                <description>Microsoft Natural Wireless Ergonomic Keyboard 7000</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoftinet</name>
                <description>Microsoft Internet Keyboard</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoftpro</name>
                <description>Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoftprousb</name>
                <description>Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoftprooem</name>
                <description>Microsoft Natural Keyboard Pro OEM</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>vsonku306</name>
                <description>ViewSonic KU-306 Internet Keyboard</description>
                <vendor>ViewSonic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoftprose</name>
                <description>Microsoft Internet Keyboard Pro, Swedish</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoftoffice</name>
                <description>Microsoft Office Keyboard</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoftmult</name>
                <description>Microsoft Wireless Multimedia Keyboard 1.0A</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoftelite</name>
                <description>Microsoft Natural Keyboard Elite</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>microsoftccurve2k</name>
                <description>Microsoft Comfort Curve Keyboard 2000</description>
                <vendor>Microsoft Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>oretec</name>
                <description>Ortek MCK-800 MM/Internet keyboard</description>
                <vendor>Ortek</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>propeller</name>
                <description>Propeller Voyager (KTEZ-1000)</description>
                <vendor>KeyTronic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>qtronix</name>
                <description>QTronix Scorpius 98N+</description>
                <vendor>QTronix</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>samsung4500</name>
                <description>Samsung SDM 4500P</description>
                <vendor>Samsung</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>samsung4510</name>
                <description>Samsung SDM 4510P</description>
                <vendor>Samsung</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sanwaskbkg3</name>
                <description>Sanwa Supply SKB-KG3</description>
                <vendor>Sanwa Supply Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sk1300</name>
                <description>SK-1300</description>
                <vendor>NEC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sk2500</name>
                <description>SK-2500</description>
                <vendor>NEC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sk6200</name>
                <description>SK-6200</description>
                <vendor>NEC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sk7100</name>
                <description>SK-7100</description>
                <vendor>NEC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sp_inet</name>
                <description>Super Power Multimedia Keyboard</description>
                <vendor>Generic</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sven</name>
                <description>SVEN Ergonomic 2500</description>
                <vendor>SVEN</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sven303</name>
                <description>SVEN Slim 303</description>
                <vendor>SVEN</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>symplon</name>
                <description>Symplon PaceBook (tablet PC)</description>
                <vendor>Symplon</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>toshiba_s3000</name>
                <description>Toshiba Satellite S3000</description>
                <vendor>Toshiba</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>trust</name>
                <description>Trust Wireless Keyboard Classic</description>
                <vendor>Trust</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>trustda</name>
                <description>Trust Direct Access Keyboard</description>
                <vendor>Trust</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>trust_slimline</name>
                <description>Trust Slimline</description>
                <vendor>Trust</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>tm2020</name>
                <description>TypeMatrix EZ-Reach 2020</description>
                <vendor>TypeMatrix</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>tm2030PS2</name>
                <description>TypeMatrix EZ-Reach 2030 PS2</description>
                <vendor>TypeMatrix</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>tm2030USB</name>
                <description>TypeMatrix EZ-Reach 2030 USB</description>
                <vendor>TypeMatrix</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>tm2030USB-102</name>
                <description>TypeMatrix EZ-Reach 2030 USB (102/105:EU mode)</description>
                <vendor>TypeMatrix</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>tm2030USB-106</name>
                <description>TypeMatrix EZ-Reach 2030 USB (106:JP mode)</description>
                <vendor>TypeMatrix</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>yahoo</name>
                <description>Yahoo! Internet Keyboard</description>
                <vendor>Yahoo!</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>macbook78</name>
                <description>MacBook/MacBook Pro</description>
                <vendor>Apple</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>macbook79</name>
                <description>MacBook/MacBook Pro (Intl)</description>
                <vendor>Apple</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>macintosh</name>
                <description>Macintosh</description>
                <vendor>Apple</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>macintosh_old</name>
                <description>Macintosh Old</description>
                <vendor>Apple</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>macintosh_hhk</name>
                <description>Happy Hacking Keyboard for Mac</description>
                <vendor>Fujitsu</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>acer_c300</name>
                <description>Acer C300</description>
                <vendor>Acer</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>acer_ferrari4k</name>
                <description>Acer Ferrari 4000</description>
                <vendor>Acer</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>acer_laptop</name>
                <description>Acer Laptop</description>
                <vendor>Acer</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>asus_laptop</name>
                <description>Asus Laptop</description>
                <vendor>Asus</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>apple</name>
                <description>Apple</description>
                <vendor>Apple</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>apple_laptop</name>
                <description>Apple Laptop</description>
                <vendor>Apple</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>applealu_ansi</name>
                <description>Apple Aluminium Keyboard (ANSI)</description>
                <vendor>Apple</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>applealu_iso</name>
                <description>Apple Aluminium Keyboard (ISO)</description>
                <vendor>Apple</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>applealu_jis</name>
                <description>Apple Aluminium Keyboard (JIS)</description>
                <vendor>Apple</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>silvercrest</name>
                <description>SILVERCREST Multimedia Wireless Keyboard</description>
                <vendor>Silvercrest</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>emachines</name>
                <description>Laptop/notebook eMachines m68xx</description>
                <vendor>eMachines</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>benqx</name>
                <description>BenQ X-Touch</description>
                <vendor>BenQ</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>benqx730</name>
                <description>BenQ X-Touch 730</description>
                <vendor>BenQ</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>benqx800</name>
                <description>BenQ X-Touch 800</description>
                <vendor>BenQ</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>hhk</name>
                <description>Happy Hacking Keyboard</description>
                <vendor>Fujitsu</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>classmate</name>
                <description>Classmate PC</description>
                <vendor>Intel</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>olpc</name>
                <description>OLPC</description>
                <vendor>OLPC</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sun_type7_usb</name>
                <description>Sun Type 7 USB</description>
                <vendor>Sun Microsystems</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sun_type7_euro_usb</name>
                <description>Sun Type 7 USB (European layout)</description>
                <vendor>Sun Microsystems</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sun_type7_unix_usb</name>
                <description>Sun Type 7 USB (Unix layout)</description>
                <vendor>Sun Microsystems</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sun_type7_jp_usb</name>
                <description>Sun Type 7 USB (Japanese layout) / Japanese 106-key</description>
                <vendor>Sun Microsystems</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sun_type6_usb</name>
                <description>Sun Type 6/7 USB</description>
                <vendor>Sun Microsystems</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sun_type6_euro_usb</name>
                <description>Sun Type 6/7 USB (European layout)</description>
                <vendor>Sun Microsystems</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sun_type6_unix_usb</name>
                <description>Sun Type 6 USB (Unix layout)</description>
                <vendor>Sun Microsystems</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sun_type6_jp_usb</name>
                <description>Sun Type 6 USB (Japanese layout)</description>
                <vendor>Sun Microsystems</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>sun_type6_jp</name>
                <description>Sun Type 6 (Japanese layout)</description>
                <vendor>Sun Microsystems</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>targa_v811</name>
                <description>Targa Visionary 811</description>
                <vendor>Targa</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>unitekkb1925</name>
                <description>Unitek KB-1925</description>
                <vendor>Unitek Group</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>compalfl90</name>
                <description>FL90</description>
                <vendor>Compal Electronics Inc.</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>creativedw7000</name>
                <description>Creative Desktop Wireless 7000</description>
                <vendor>Creative</vendor>
            </configItem>
        </model>
        <model>
            <configItem>
                <name>htcdream</name>
                <description>Htc Dream phone</description>
                <vendor>htc</vendor>
            </configItem>
        </model>
    </modelList>
    <layoutList>
        <layout>
            <configItem>
                <name>us</name>
                <shortDescription>en</shortDescription>
                <description>English (US)</description>
                <languageList>
                    <iso639Id>eng</iso639Id>
                </languageList>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>chr</name>
                        <shortDescription>chr</shortDescription>
                        <description>Cherokee</description>
                        <languageList>
                            <iso639Id>chr</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>euro</name>
                        <description>English (US, with euro on 5)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>intl</name>
                        <description>English (US, international with dead keys)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>alt-intl</name>
                        <description>English (US, alternative international)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>colemak</name>
                        <description>English (Colemak)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>dvorak</name>
                        <description>English (Dvorak)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>dvorak-intl</name>
                        <description>English (Dvorak, international with dead keys)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>dvorak-alt-intl</name>
                        <description>English (Dvorak alternative international no dead keys)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>dvorak-l</name>
                        <description>English (left handed Dvorak)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>dvorak-r</name>
                        <description>English (right handed Dvorak)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>dvorak-classic</name>
                        <description>English (classic Dvorak)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>dvp</name>
                        <description>English (programmer Dvorak)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>rus</name>

                        <shortDescription>ru</shortDescription>
                        <description>Russian (US, phonetic)</description>
                        <languageList>
                            <iso639Id>rus</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>mac</name>
                        <description>English (Macintosh)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>altgr-intl</name>
                        <description>English (international AltGr dead keys)</description>
                        <languageList>
                            <iso639Id>eng</iso639Id>
                            <iso639Id>fra</iso639Id>
                            <iso639Id>ger</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>olpc2</name>
                        <description>English (the divide/multiply keys toggle the layout)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>hbs</name>
                        <description>Serbo-Croatian (US)</description>
                        <languageList>
                            <iso639Id>eng</iso639Id>
                            <iso639Id>bos</iso639Id>
                            <iso639Id>hbs</iso639Id>
                            <iso639Id>hrv</iso639Id>
                            <iso639Id>srp</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>workman</name>
                        <description>English (Workman)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>workman-intl</name>
                        <description>English (Workman, international with dead keys)</description>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>af</name>

                <shortDescription>fa</shortDescription>
                <description>Afghani</description>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>ps</name>

                        <shortDescription>ps</shortDescription>
                        <description>Pashto</description>
                        <languageList>
                            <iso639Id>pus</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>uz</name>

                        <shortDescription>uz</shortDescription>
                        <description>Uzbek (Afghanistan)</description>
                        <languageList>
                            <iso639Id>uzb</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>olpc-ps</name>

                        <shortDescription>ps</shortDescription>
                        <description>Pashto (Afghanistan, OLPC)</description>
                        <languageList>
                            <iso639Id>pus</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>fa-olpc</name>

                        <shortDescription>fa</shortDescription>
                        <description>Persian (Afghanistan, Dari OLPC)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>uz-olpc</name>

                        <shortDescription>uz</shortDescription>
                        <description>Uzbek (Afghanistan, OLPC)</description>
                        <languageList>
                            <iso639Id>uzb</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>ara</name>

                <shortDescription>ar</shortDescription>
                <description>Arabic</description>
                <countryList>
                    <iso3166Id>AE</iso3166Id>
                    <iso3166Id>BH</iso3166Id>
                    <iso3166Id>DZ</iso3166Id>
                    <iso3166Id>EG</iso3166Id>
                    <iso3166Id>EH</iso3166Id>
                    <iso3166Id>JO</iso3166Id>
                    <iso3166Id>KW</iso3166Id>
                    <iso3166Id>LB</iso3166Id>
                    <iso3166Id>LY</iso3166Id>
                    <iso3166Id>MA</iso3166Id>
                    <iso3166Id>MR</iso3166Id>
                    <iso3166Id>OM</iso3166Id>
                    <iso3166Id>PS</iso3166Id>
                    <iso3166Id>QA</iso3166Id>
                    <iso3166Id>SA</iso3166Id>
                    <iso3166Id>SD</iso3166Id>
                    <iso3166Id>SY</iso3166Id>
                    <iso3166Id>TN</iso3166Id>
                    <iso3166Id>YE</iso3166Id>
                </countryList>
                <languageList>
                    <iso639Id>ara</iso639Id>
                </languageList>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>azerty</name>
                        <description>Arabic (azerty)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>azerty_digits</name>
                        <description>Arabic (azerty/digits)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>digits</name>
                        <description>Arabic (digits)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>qwerty</name>
                        <description>Arabic (qwerty)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>qwerty_digits</name>
                        <description>Arabic (qwerty/digits)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>buckwalter</name>
                        <description>Arabic (Buckwalter)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>mac</name>
                        <description>Arabic (Macintosh)</description>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>al</name>

                <shortDescription>sq</shortDescription>
                <description>Albanian</description>
                <languageList>
                    <iso639Id>alb</iso639Id>
                </languageList>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>plisi-d1</name>
                        <description>Albanian (Plisi D1)</description>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>am</name>

                <shortDescription>hy</shortDescription>
                <description>Armenian</description>
                <languageList>
                    <iso639Id>hye</iso639Id>
                </languageList>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>phonetic</name>
                        <description>Armenian (phonetic)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>phonetic-alt</name>
                        <description>Armenian (alternative phonetic)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>eastern</name>
                        <description>Armenian (eastern)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>western</name>
                        <description>Armenian (western)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>eastern-alt</name>
                        <description>Armenian (alternative eastern)</description>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>at</name>

                <shortDescription>de</shortDescription>
                <description>German (Austria)</description>
                <languageList>
                    <iso639Id>ger</iso639Id>
                </languageList>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>nodeadkeys</name>
                        <description>German (Austria, eliminate dead keys)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>sundeadkeys</name>
                        <description>German (Austria, Sun dead keys)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>mac</name>
                        <description>German (Austria, Macintosh)</description>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>az</name>

                <shortDescription>az</shortDescription>
                <description>Azerbaijani</description>
                <languageList>
                    <iso639Id>aze</iso639Id>
                </languageList>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>cyrillic</name>
                        <description>Azerbaijani (Cyrillic)</description>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>by</name>

                <shortDescription>by</shortDescription>
                <description>Belarusian</description>
                <languageList>
                    <iso639Id>bel</iso639Id>
                </languageList>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>legacy</name>
                        <description>Belarusian (legacy)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>latin</name>
                        <description>Belarusian (Latin)</description>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>be</name>

                <shortDescription>be</shortDescription>
                <description>Belgian</description>
                <languageList>
                    <iso639Id>ger</iso639Id>
                    <iso639Id>nld</iso639Id>
                    <iso639Id>fra</iso639Id>
                </languageList>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>oss</name>
                        <description>Belgian (alternative)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>oss_latin9</name>
                        <description>Belgian (alternative, Latin-9 only)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>oss_sundeadkeys</name>
                        <description>Belgian (alternative, Sun dead keys)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>iso-alternate</name>
                        <description>Belgian (ISO alternate)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>nodeadkeys</name>
                        <description>Belgian (eliminate dead keys)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>sundeadkeys</name>
                        <description>Belgian (Sun dead keys)</description>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>wang</name>
                        <description>Belgian (Wang model 724 azerty)</description>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>bd</name>

                <shortDescription>bn</shortDescription>
                <description>Bangla</description>
                <languageList>
                    <iso639Id>ben</iso639Id>
                </languageList>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>probhat</name>
                        <description>Bangla (Probhat)</description>
                    </configItem>
                </variant>
            </variantList>
        </layout>
        <layout>
            <configItem>
                <name>in</name>

                <shortDescription>in</shortDescription>
                <description>Indian</description>
            </configItem>
            <variantList>
                <variant>
                    <configItem>
                        <name>ben</name>

                        <shortDescription>bn</shortDescription>
                        <description>Bangla (India)</description>
                        <languageList>
                            <iso639Id>ben</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>ben_probhat</name>

                        <shortDescription>bn</shortDescription>
                        <description>Bangla (India, Probhat)</description>
                        <languageList>
                            <iso639Id>ben</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>ben_baishakhi</name>
                        <description>Bangla (India, Baishakhi)</description>
                        <languageList>
                            <iso639Id>ben</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>ben_bornona</name>
                        <description>Bangla (India, Bornona)</description>
                        <languageList>
                            <iso639Id>ben</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>ben_gitanjali</name>
                        <description>Bangla (India, Uni Gitanjali)</description>
                        <languageList>
                            <iso639Id>ben</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>ben_inscript</name>
                        <description>Bangla (India, Baishakhi Inscript)</description>
                        <languageList>
                            <iso639Id>ben</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>eeyek</name>
                        <description>Manipuri (Eeyek)</description>
                        <languageList>
                            <iso639Id>mni</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>guj</name>

                        <shortDescription>gu</shortDescription>
                        <description>Gujarati</description>
                        <languageList>
                            <iso639Id>guj</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>guru</name>

                        <shortDescription>pa</shortDescription>
                        <description>Punjabi (Gurmukhi)</description>
                        <languageList>
                            <iso639Id>pan</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>jhelum</name>

                        <shortDescription>pa</shortDescription>
                        <description>Punjabi (Gurmukhi Jhelum)</description>
                        <languageList>
                            <iso639Id>pan</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>kan</name>

                        <shortDescription>kn</shortDescription>
                        <description>Kannada</description>
                        <languageList>
                            <iso639Id>kan</iso639Id>
                        </languageList>
                    </configItem>
                </variant>
                <variant>
                    <configItem>
                        <name>kan-kagapa</name>

                        <shortDescription>kn</shortDescription>
                        <description>Kannada (KaGaPa phonetic)</description>
                        <languageList>
                            <iso639Id>kan</iso639Id>
                        </languageList>
                
Download .txt
gitextract_fxpnncxq/

├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   └── feature_request.md
│   ├── ISSUE_TEMPLATE.md
│   └── stale.yaml
├── .gitignore
├── .landscape.yaml
├── .tx/
│   └── config
├── AUTHORS
├── CHANGES
├── CHANGES-0.12.0-0.14.0
├── COPYING
├── README.md
├── TODO.md
├── TRANSLATORS
├── changes-0.15.md
├── cnchi.desktop
├── data/
│   ├── .gitattributes
│   ├── GeoLite2-City.mmdb
│   ├── base.xml
│   ├── cnchi.conf
│   ├── console-keymaps.txt
│   ├── css/
│   │   ├── bootstrap-theme.css
│   │   ├── bootstrap.css
│   │   ├── gtk-style.css
│   │   ├── lightSlider.css
│   │   ├── scale.css
│   │   └── slides-style.css
│   ├── firefox.txt
│   ├── hunspell.txt
│   ├── images/
│   │   └── avatars/
│   │       └── license.txt
│   ├── js/
│   │   ├── bootstrap.js
│   │   └── npm.js
│   ├── keymaps.txt
│   ├── locale/
│   │   ├── iso3366-1.xml
│   │   ├── locales.xml
│   │   └── timezones.xml
│   ├── packages.xml
│   ├── pacman.tmpl
│   ├── pci/
│   │   ├── amdgpu.ids
│   │   ├── amdgpu_exp.ids
│   │   ├── ati.ids
│   │   ├── broadcom_b43.ids
│   │   ├── broadcom_b43_legacy.ids
│   │   ├── broadcom_wl.ids
│   │   ├── catalyst.ids
│   │   ├── nvidia-304xx.ids
│   │   ├── nvidia-340xx.ids
│   │   ├── nvidia-390xx.ids
│   │   └── nvidia.ids
│   ├── pci.ids
│   ├── powerpill.json
│   └── slides.html
├── debian.sh
├── dependencies.txt
├── docs/
│   ├── Makefile
│   ├── bootinfo.rst
│   ├── browser_window.rst
│   ├── cnchi.rst
│   ├── conf.py
│   ├── config.rst
│   ├── desktop_info.rst
│   ├── download.rst
│   ├── download_download.rst
│   ├── download_metalink.rst
│   ├── download_requests.rst
│   ├── features_info.rst
│   ├── geoip.rst
│   ├── hardware.rst
│   ├── hardware_hardware.rst
│   ├── hardware_modules.rst
│   ├── index.rst
│   ├── info.rst
│   ├── installation.rst
│   ├── installation_action.rst
│   ├── installation_auto_partition.rst
│   ├── installation_boot.rst
│   ├── installation_boot_grub2.rst
│   ├── installation_boot_loader.rst
│   ├── installation_boot_refind.rst
│   ├── installation_boot_systemd_boot.rst
│   ├── installation_firewall.rst
│   ├── installation_install.rst
│   ├── installation_lamp.rst
│   ├── installation_lemp.rst
│   ├── installation_mkinitcpio.rst
│   ├── installation_post_features.rst
│   ├── installation_post_fstab.rst
│   ├── installation_post_install.rst
│   ├── installation_process.rst
│   ├── installation_select_packages.rst
│   ├── installation_services.rst
│   ├── installation_special_dirs.rst
│   ├── installation_systemd_networkd.rst
│   ├── installation_wrapper.rst
│   ├── logging_utils.rst
│   ├── main_window.rst
│   ├── misc.rst
│   ├── misc_avatars.rst
│   ├── misc_extra.rst
│   ├── misc_gocryptfs.rst
│   ├── misc_gtkwidgets.rst
│   ├── misc_i18n.rst
│   ├── misc_keyboard_names.rst
│   ├── misc_nm.rst
│   ├── misc_osextras.rst
│   ├── misc_run_cmd.rst
│   ├── misc_tz.rst
│   ├── misc_validation.rst
│   ├── proxy.rst
│   ├── rank_mirrors.rst
│   ├── show_message.rst
│   ├── test_page.rst
│   └── update_db.rst
├── po/
│   ├── af-ZA.po
│   ├── af.po
│   ├── ar-SA.po
│   ├── ar.po
│   ├── ast.po
│   ├── az-AZ.po
│   ├── az.po
│   ├── az@latin.po
│   ├── az_IR.po
│   ├── be.po
│   ├── bg.po
│   ├── bn-BD.po
│   ├── bn.po
│   ├── bs-BA.po
│   ├── bs.po
│   ├── ca.po
│   ├── ca@valencia.po
│   ├── cnchi.pot
│   ├── cs-CZ.po
│   ├── cs.po
│   ├── da.po
│   ├── de-AT.po
│   ├── de.po
│   ├── el.po
│   ├── en.po
│   ├── en_GB.po
│   ├── eo.po
│   ├── es-ES.po
│   ├── es-VE.po
│   ├── es.po
│   ├── es_419.po
│   ├── es_AR.po
│   ├── es_CL.po
│   ├── es_MX.po
│   ├── et.po
│   ├── eu.po
│   ├── fa.po
│   ├── fa_IR.po
│   ├── fi.po
│   ├── fr-BE.po
│   ├── fr-CA.po
│   ├── fr-FR.po
│   ├── fr.po
│   ├── gl.po
│   ├── gu.po
│   ├── he.po
│   ├── hi.po
│   ├── hr.po
│   ├── hu.po
│   ├── id.po
│   ├── it-IT.po
│   ├── it.po
│   ├── it_CH.po
│   ├── ja.po
│   ├── ka.po
│   ├── ko.po
│   ├── ky.po
│   ├── lt.po
│   ├── mk.po
│   ├── mr.po
│   ├── ms.po
│   ├── ms_MY.po
│   ├── nb.po
│   ├── nl.po
│   ├── nn.po
│   ├── pa.po
│   ├── pl-PL.po
│   ├── pl.po
│   ├── pt.po
│   ├── pt_BR.po
│   ├── pt_PT.po
│   ├── ro-RO.po
│   ├── ro.po
│   ├── ru.po
│   ├── sk.po
│   ├── sl-SI.po
│   ├── sl.po
│   ├── sq.po
│   ├── sr-RS.po
│   ├── sr.po
│   ├── sr@latin.po
│   ├── sv.po
│   ├── szl.po
│   ├── ta.po
│   ├── ta_IN.po
│   ├── tg.po
│   ├── tl.po
│   ├── tl_PH.po
│   ├── tr-TR.po
│   ├── tr.po
│   ├── uk.po
│   ├── update_po.sh
│   ├── ur.po
│   ├── uz.po
│   ├── vi-VN.po
│   ├── vi.po
│   ├── wa.po
│   ├── xh.po
│   ├── zh.po
│   ├── zh_CN.GB2312.po
│   ├── zh_CN.po
│   ├── zh_TW.po
│   └── zu.po
├── requirements.txt
├── run
├── scripts/
│   ├── 10_antergos
│   ├── 60-schedulers.rules
│   ├── a2dissite
│   ├── a2ensite
│   ├── antergos.layout
│   ├── ckbcomp
│   ├── enlightenment_remote
│   ├── fonts.conf
│   ├── package_checker.py
│   ├── postinstall/
│   │   ├── 50-cros-touchpad.conf
│   │   ├── 50-synaptics.conf
│   │   ├── 99-killX.conf
│   │   ├── Xsession
│   │   ├── applications.list
│   │   ├── cbatticon.desktop
│   │   ├── first-boot-hotfix.desktop
│   │   ├── first-boot-hotfix.sh
│   │   ├── menu@cinnamon.org.json
│   │   ├── panel-launchers@cinnamon.org.json
│   │   ├── qt5ct.conf
│   │   ├── xscreensaver
│   │   └── xscreensaver.desktop
│   ├── postinstall.sh
│   ├── requirements.sh
│   └── testing.sh
├── src/
│   ├── __init__.py
│   ├── bootinfo.py
│   ├── browser_window.py
│   ├── cnchi.py
│   ├── config.py
│   ├── desktop_info.py
│   ├── download/
│   │   ├── __init__.py
│   │   ├── download.py
│   │   ├── download_hash.py
│   │   ├── download_requests.py
│   │   └── metalink.py
│   ├── features_info.py
│   ├── geoip.py
│   ├── hardware/
│   │   ├── __init__.py
│   │   ├── hardware.py
│   │   └── modules/
│   │       ├── __init__.py
│   │       ├── amdgpu.py
│   │       ├── amdgpu_exp.py
│   │       ├── broadcom_b43.py
│   │       ├── broadcom_b43_legacy.py
│   │       ├── broadcom_wl.py
│   │       ├── bumblebee.py_
│   │       ├── catalyst.py
│   │       ├── etouchscreen.py
│   │       ├── fingerprint.py
│   │       ├── firewire.py
│   │       ├── i915.py
│   │       ├── nouveau.py
│   │       ├── nvidia.py
│   │       ├── nvidia_304xx.py
│   │       ├── nvidia_340xx.py
│   │       ├── nvidia_390xx.py
│   │       ├── radeon.py
│   │       ├── uvesafb.py
│   │       ├── via.py
│   │       ├── virtualbox.py
│   │       └── vmware.py
│   ├── info.py
│   ├── installation/
│   │   ├── __init__.py
│   │   ├── action.py
│   │   ├── auto_partition.py
│   │   ├── boot/
│   │   │   ├── boot_ui.py
│   │   │   ├── grub2.py
│   │   │   ├── loader.py
│   │   │   ├── refind.py
│   │   │   └── systemd_boot.py
│   │   ├── firewall.py
│   │   ├── install.py
│   │   ├── lamp.py
│   │   ├── lemp.py
│   │   ├── luks.py
│   │   ├── mkinitcpio.py
│   │   ├── mount.py
│   │   ├── post_features.py
│   │   ├── post_fstab.py
│   │   ├── post_install.py
│   │   ├── process.py
│   │   ├── select_packages.py
│   │   ├── services.py
│   │   ├── special_dirs.py
│   │   ├── systemd_networkd.py
│   │   └── wrapper.py
│   ├── lembrame/
│   │   ├── __init__.py
│   │   ├── config.py
│   │   ├── credentials.py
│   │   ├── dialog.py
│   │   ├── gnome_extensions/
│   │   │   ├── __init__.py
│   │   │   └── downloader.py
│   │   └── lembrame.py
│   ├── logging_color.py
│   ├── logging_resources.py
│   ├── logging_utils.py
│   ├── main_window.py
│   ├── misc/
│   │   ├── __init__.py
│   │   ├── avatars.py
│   │   ├── events.py
│   │   ├── extra.py
│   │   ├── gocryptfs.py
│   │   ├── gsettings.py
│   │   ├── gtkwidgets.py
│   │   ├── i18n.py
│   │   ├── keyboard_names.py
│   │   ├── nm.py
│   │   ├── osextras.py
│   │   ├── run_cmd.py
│   │   ├── tz.py
│   │   └── validation.py
│   ├── pacman/
│   │   ├── __init__.py
│   │   ├── alpm_include.py
│   │   ├── pac.py
│   │   ├── pacman_conf.py
│   │   ├── pacman_options.txt
│   │   └── pkginfo.py
│   ├── pages/
│   │   ├── __init__.py
│   │   ├── advanced.py
│   │   ├── alongside.py
│   │   ├── ask.py
│   │   ├── automatic.py
│   │   ├── cache.py
│   │   ├── check.py
│   │   ├── desktop.py
│   │   ├── dialogs/
│   │   │   ├── __init__.py
│   │   │   ├── changelist.py
│   │   │   ├── create_partition.py
│   │   │   ├── create_table.py
│   │   │   ├── edit_partition.py
│   │   │   ├── luks_settings.py
│   │   │   └── partition_base.py
│   │   ├── features.py
│   │   ├── gtkbasebox.py
│   │   ├── keymap.py
│   │   ├── language.py
│   │   ├── location.py
│   │   ├── mirrors.py
│   │   ├── slides.py
│   │   ├── summary.py
│   │   ├── timezone.py
│   │   ├── user_info.py
│   │   ├── welcome.py
│   │   ├── wireless.py
│   │   ├── zfs.py
│   │   └── zfs_manager.py
│   ├── parted3/
│   │   ├── README
│   │   ├── __init__.py
│   │   ├── fs_module.py
│   │   ├── lvm.py
│   │   ├── partition_module.py
│   │   ├── populate_devices.py
│   │   └── used_space.py
│   ├── proxy.py
│   ├── rank_mirrors.py
│   ├── show_message.py
│   ├── test_page.py
│   ├── update_db.py
│   └── widgets/
│       ├── keyboard_widget.py
│       ├── partition_treeview.py
│       ├── timezonemap.py
│       ├── webcam_widget.py
│       └── zfs_treeview.py
├── test/
│   ├── gnome-sudoku.meta4
│   ├── pacman_conf_test.py
│   └── test_hardware_module.py
├── ui/
│   ├── advanced.ui
│   ├── alongside.ui
│   ├── ask.ui
│   ├── automatic.ui
│   ├── bootloader.ui
│   ├── cache.ui
│   ├── check.ui
│   ├── cnchi.ui
│   ├── desktop.ui
│   ├── dialogs/
│   │   ├── changelist.ui
│   │   ├── create_partition.ui
│   │   ├── create_table.ui
│   │   ├── edit_partition.ui
│   │   └── luks_settings.ui
│   ├── features.ui
│   ├── header.ui
│   ├── keymap.ui
│   ├── language.ui
│   ├── lembrame.ui
│   ├── location.ui
│   ├── mirrors.ui
│   ├── pac.ui
│   ├── proxy.ui
│   ├── slides.ui
│   ├── summary.ui
│   ├── timezone.ui
│   ├── user_info.ui
│   ├── wait.ui
│   ├── welcome.ui
│   ├── wired.ui
│   ├── wireless.ui
│   └── zfs.ui
├── update.info
└── utils/
    ├── KeyboardNames.pl
    ├── antergos-mirrorlist
    ├── compile_all.sh
    ├── download_package_list.py
    ├── fix-permissions.sh
    ├── gen_pot_file
    ├── generate_update_info.py
    ├── install-arch.sh
    ├── install-debian.sh
    ├── install-mo.sh
    ├── kbdnames-maker
    ├── keyboard.xcf
    ├── load_xml.py
    ├── mirrorlist
    ├── packages_xml.py
    ├── parted-partition.py
    ├── partedtest.py
    ├── partedtest_old.py
    ├── pkg-clean-zenity.sh
    ├── pre-commit
    ├── pygettext.py
    ├── pygi-enumerate.py
    ├── pylint.rc
    ├── reindent.py
    ├── remove_trailing_white_spaces
    ├── rm_empty_strings_pot.py
    ├── test.py
    ├── timezonemap_test.py
    ├── update-translations.sh
    ├── update.info
    └── validate_ui.sh
Download .txt
SYMBOL INDEX (1480 symbols across 134 files)

FILE: data/js/bootstrap.js
  function transitionEnd (line 34) | function transitionEnd() {
  function removeElement (line 126) | function removeElement() {
  function Plugin (line 142) | function Plugin(option) {
  function Plugin (line 251) | function Plugin(option) {
  function Plugin (line 470) | function Plugin(option) {
  function getTargetFromTrigger (line 689) | function getTargetFromTrigger($trigger) {
  function Plugin (line 701) | function Plugin(option) {
  function getParent (line 768) | function getParent($this) {
  function clearMenus (line 781) | function clearMenus(e) {
  function Plugin (line 874) | function Plugin(option) {
  function Plugin (line 1200) | function Plugin(option, _relatedTarget) {
  function complete (line 1566) | function complete() {
  function Plugin (line 1736) | function Plugin(option) {
  function Plugin (line 1845) | function Plugin(option) {
  function ScrollSpy (line 1888) | function ScrollSpy(element, options) {
  function Plugin (line 2008) | function Plugin(option) {
  function next (line 2117) | function next() {
  function Plugin (line 2163) | function Plugin(option) {
  function Plugin (line 2320) | function Plugin(option) {

FILE: scripts/package_checker.py
  function get_pkg_names (line 34) | def get_pkg_names():
  function check_names (line 62) | def check_names(pkgs):

FILE: src/bootinfo.py
  function _ (line 48) | def _(message):
  function _check_windows (line 73) | def _check_windows(mount_name):
  function _search_for_marks (line 95) | def _search_for_marks(path, marks):
  function _check_vista (line 106) | def _check_vista(system_path):
  function _check_win7 (line 115) | def _check_win7(system_path):
  function _check_winxp (line 124) | def _check_winxp(system_path):
  function _hexdump8081 (line 134) | def _hexdump8081(partition):
  function _get_partition_info (line 141) | def _get_partition_info(partition):
  function _check_reactos (line 174) | def _check_reactos(mount_name):
  function _check_dos (line 183) | def _check_dos(mount_name):
  function _check_linux (line 200) | def _check_linux(mount_name):
  function _get_os (line 250) | def _get_os(mount_name):
  function get_os_dict (line 269) | def get_os_dict():
  function windows_startup_folder (line 298) | def windows_startup_folder(mount_path):

FILE: src/browser_window.py
  class BrowserWindow (line 37) | class BrowserWindow(Gtk.Window):
    method __init__ (line 39) | def __init__(self, _title, width=800, height=600):
    method on_destroy (line 59) | def on_destroy(self, _event, _data):
    method decide_policy_cb (line 64) | def decide_policy_cb(decision, _type, data):
    method load_changed_cb (line 68) | def load_changed_cb(self, webview, load_event):
    method load_url (line 73) | def load_url(self, url):

FILE: src/cnchi.py
  function _ (line 77) | def _(message):
  class CnchiApp (line 81) | class CnchiApp(Gtk.Application):
    method __init__ (line 86) | def __init__(self, cmd_line):
    method do_activate (line 94) | def do_activate(self):
    method already_running (line 149) | def already_running(self):
  class CnchiInit (line 175) | class CnchiInit():
    method __init__ (line 188) | def __init__(self):
    method check_pacman_conf (line 248) | def check_pacman_conf(path):
    method setup_logging (line 269) | def setup_logging(self):
    method check_gtk_version (line 357) | def check_gtk_version():
    method check_pyalpm_version (line 394) | def check_pyalpm_version():
    method check_iso_version (line 412) | def check_iso_version(self):
    method parse_options (line 439) | def parse_options():
    method threads_init (line 490) | def threads_init():
    method setup_gettext (line 516) | def setup_gettext():
    method check_for_files (line 529) | def check_for_files():
    method enable_repositories (line 545) | def enable_repositories():
    method disable_suspend (line 580) | def disable_suspend(self):
    method gsettings_set (line 593) | def gsettings_set(user, schema, key, value):
  function main (line 604) | def main():

FILE: src/config.py
  class Settings (line 35) | class Settings():
    method __init__ (line 38) | def __init__(self):
    method _set_defaults (line 47) | def _set_defaults(self):
    method _get_settings (line 138) | def _get_settings(self):
    method _update_settings (line 145) | def _update_settings(self, new_settings):
    method get (line 153) | def get(self, key):
    method set (line 158) | def set(self, key, value):

FILE: src/desktop_info.py
  function _ (line 111) | def _(message):

FILE: src/download/download.py
  function _ (line 56) | def _(message):
  class DownloadPackages (line 59) | class DownloadPackages():
    method __init__ (line 63) | def __init__(self, package_names, pacman_conf, settings=None, callback...
    method start_download (line 89) | def start_download(self, metalinks=None):
    method url_sort_helper (line 116) | def url_sort_helper(self, url):
    method add_metalink_info (line 127) | def add_metalink_info(self, metalink):
    method create_metalinks_list (line 147) | def create_metalinks_list(self):
  function test (line 205) | def test():

FILE: src/download/download_hash.py
  function check_hash (line 36) | def check_hash(path, element, queue_event=None):
  function get_file_hash (line 74) | def get_file_hash(path, hash_type):
  function get_element_hash (line 91) | def get_element_hash(element, hash_type):

FILE: src/download/download_requests.py
  function _ (line 53) | def _(message):
  class CopyToCache (line 56) | class CopyToCache(threading.Thread):
    method __init__ (line 62) | def __init__(self, origin, xz_cache_dirs):
    method run (line 67) | def run(self):
  class Download (line 80) | class Download():
    method __init__ (line 85) | def __init__(self, pacman_cache_dir, xz_cache_dirs, callback_queue, pr...
    method start (line 105) | def start(self, downloads):
    method download_package (line 202) | def download_package(self, element, dst_path):
    method download_url (line 244) | def download_url(self, url, dst_path, element=None):
    method format_progress_message (line 305) | def format_progress_message(percent, bps):

FILE: src/download/metalink.py
  function get_info (line 51) | def get_info(metalink):
  function create (line 96) | def create(alpm, package_name, pacman_conf_file):
  function download_queue_to_metalink (line 132) | def download_queue_to_metalink(download_queue):
  class Metalink (line 145) | class Metalink():
    method __init__ (line 148) | def __init__(self):
    method __str__ (line 158) | def __str__(self):
    method add_urls (line 166) | def add_urls(self, element, urls):
    method add_sync_pkg (line 174) | def add_sync_pkg(self, pkg, urls, sigs=False):
    method add_file (line 197) | def add_file(self, name, urls):
    method add_db (line 204) | def add_db(self, database, sigs=False):
  class PkgSet (line 217) | class PkgSet():
    method __init__ (line 220) | def __init__(self, pkgs=None):
    method __repr__ (line 228) | def __repr__(self):
    method add (line 231) | def add(self, pkg):
    method __and__ (line 235) | def __and__(self, other):
    method __iand__ (line 239) | def __iand__(self, other):
    method __or__ (line 243) | def __or__(self, other):
    method __ior__ (line 247) | def __ior__(self, other):
    method __contains__ (line 251) | def __contains__(self, pkg):
    method __iter__ (line 254) | def __iter__(self):
    method __len__ (line 258) | def __len__(self):
  class DownloadQueue (line 262) | class DownloadQueue():
    method __init__ (line 265) | def __init__(self):
    method __bool__ (line 269) | def __bool__(self):
    method __nonzero__ (line 272) | def __nonzero__(self):
    method add_db (line 275) | def add_db(self, database, sigs=False):
    method add_sync_pkg (line 279) | def add_sync_pkg(self, pkg, urls, sigs=False):
  function parse_args (line 284) | def parse_args(args):
  function get_antergos_repo_pkgs (line 311) | def get_antergos_repo_pkgs(alpm_handle):
  function resolve_deps (line 341) | def resolve_deps(alpm_handle, other, alldeps):
  function create_package_set (line 365) | def create_package_set(requested, ant_repo_pkgs, antdb, alpm_handle):
  function build_download_queue (line 393) | def build_download_queue(alpm, args=None):
  function get_checksum (line 461) | def get_checksum(path, typ):
  function check_cache (line 478) | def check_cache(conf, pkgs):
  function needs_sig (line 494) | def needs_sig(siglevel, insistence, prefix):
  function test_module (line 511) | def test_module():

FILE: src/features_info.py
  function _ (line 63) | def _(message):

FILE: src/geoip.py
  class GeoIP (line 42) | class GeoIP():
    method __init__ (line 48) | def __init__(self):
    method _maybe_wait_for_network (line 54) | def _maybe_wait_for_network():
    method _load_data_and_ip (line 64) | def _load_data_and_ip(self):
    method _get_external_ip_address (line 83) | def _get_external_ip_address():
    method _load_database (line 95) | def _load_database(self, db_path, myip):
    method get_city (line 103) | def get_city(self):
    method get_country (line 110) | def get_country(self):
    method get_continent (line 117) | def get_continent(self):
    method get_location (line 124) | def get_location(self):
  function test_module (line 133) | def test_module():

FILE: src/hardware/hardware.py
  class Hardware (line 36) | class Hardware():
    method __init__ (line 41) | def __init__(self, class_name, class_id, vendor_id, pci_file_or_devices,
    method load_pci_file (line 62) | def load_pci_file(self, path):
    method get_packages (line 77) | def get_packages(self):
    method get_conflicts (line 82) | def get_conflicts():
    method post_install (line 86) | def post_install(self, dest_dir):
    method pre_install (line 90) | def pre_install(self, dest_dir):
    method check_device (line 94) | def check_device(self, class_id, vendor_id, product_id):
    method detect (line 111) | def detect(self):
    method is_proprietary (line 140) | def is_proprietary():
    method is_graphic_driver (line 146) | def is_graphic_driver(self):
    method get_name (line 150) | def get_name(self):
    method get_priority (line 154) | def get_priority(self):
    method chroot (line 159) | def chroot(cmd, dest_dir, stdin=None, stdout=None):
    method __str__ (line 176) | def __str__(self):
    method call_script (line 183) | def call_script(self, script_path, dest_dir):
  class HardwareInstall (line 207) | class HardwareInstall():
    method __init__ (line 210) | def __init__(self, cnchi_path, use_proprietary_graphic_drivers=False):
    method scan_driver_modules (line 232) | def scan_driver_modules(self):
    method detect_devices (line 269) | def detect_devices(self):
    method get_devices (line 352) | def get_devices():
    method get_packages (line 379) | def get_packages(self):
    method get_conflicts (line 388) | def get_conflicts(self):
    method get_found_driver_names (line 397) | def get_found_driver_names(self):
    method pre_install (line 404) | def pre_install(self, dest_dir):
    method post_install (line 409) | def post_install(self, dest_dir):
  function test (line 415) | def test():

FILE: src/hardware/modules/amdgpu.py
  class AMDGpu (line 50) | class AMDGpu(Hardware):
    method __init__ (line 53) | def __init__(self):
    method get_packages (line 57) | def get_packages():
    method pre_install (line 64) | def pre_install(self, dest_dir):
    method post_install (line 68) | def post_install(self, dest_dir):
    method is_proprietary (line 73) | def is_proprietary():

FILE: src/hardware/modules/amdgpu_exp.py
  class AMDGpuExp (line 51) | class AMDGpuExp(Hardware):
    method __init__ (line 54) | def __init__(self):
    method get_packages (line 58) | def get_packages():
    method pre_install (line 65) | def pre_install(self, dest_dir):
    method post_install (line 69) | def post_install(self, dest_dir):
    method is_proprietary (line 74) | def is_proprietary():

FILE: src/hardware/modules/broadcom_b43.py
  class BroadcomB43 (line 48) | class BroadcomB43(Hardware):
    method __init__ (line 51) | def __init__(self):
    method get_packages (line 55) | def get_packages():
    method post_install (line 60) | def post_install(dest_dir):

FILE: src/hardware/modules/broadcom_b43_legacy.py
  class BroadcomB43Legacy (line 45) | class BroadcomB43Legacy(Hardware):
    method __init__ (line 48) | def __init__(self):
    method get_packages (line 52) | def get_packages():
    method post_install (line 57) | def post_install(dest_dir):

FILE: src/hardware/modules/broadcom_wl.py
  class BroadcomWl (line 51) | class BroadcomWl(Hardware):
    method __init__ (line 54) | def __init__(self):
    method get_packages (line 58) | def get_packages():
    method post_install (line 63) | def post_install(dest_dir):
    method is_proprietary (line 71) | def is_proprietary():

FILE: src/hardware/modules/catalyst.py
  class Catalyst (line 49) | class Catalyst(Hardware):
    method __init__ (line 55) | def __init__(self):
    method get_packages (line 59) | def get_packages():
    method add_repositories (line 69) | def add_repositories(path):
    method pre_install (line 95) | def pre_install(self, dest_dir):
    method post_install (line 101) | def post_install(self, dest_dir):
    method is_proprietary (line 114) | def is_proprietary():

FILE: src/hardware/modules/etouchscreen.py
  class ETouchScreen (line 50) | class ETouchScreen(Hardware):
    method __init__ (line 53) | def __init__(self):
    method get_packages (line 57) | def get_packages():
    method post_install (line 62) | def post_install(dest_dir):

FILE: src/hardware/modules/fingerprint.py
  class FingerPrint (line 64) | class FingerPrint(Hardware):
    method __init__ (line 67) | def __init__(self):
    method get_packages (line 71) | def get_packages():
    method post_install (line 75) | def post_install(self, dest_dir):

FILE: src/hardware/modules/firewire.py
  class Firewire (line 43) | class Firewire(Hardware):
    method __init__ (line 46) | def __init__(self):
    method get_packages (line 50) | def get_packages():
    method post_install (line 54) | def post_install(self, dest_dir):

FILE: src/hardware/modules/i915.py
  class Intel915 (line 44) | class Intel915(Hardware):
    method __init__ (line 47) | def __init__(self):
    method get_packages (line 51) | def get_packages():
    method post_install (line 59) | def post_install(dest_dir):
    method is_proprietary (line 66) | def is_proprietary():

FILE: src/hardware/modules/nouveau.py
  class Nouveau (line 49) | class Nouveau(Hardware):
    method __init__ (line 52) | def __init__(self):
    method get_packages (line 56) | def get_packages():
    method get_conflicts (line 64) | def get_conflicts():
    method post_install (line 73) | def post_install(dest_dir):
    method is_proprietary (line 84) | def is_proprietary():

FILE: src/hardware/modules/nvidia.py
  class Nvidia (line 58) | class Nvidia(Hardware):
    method __init__ (line 61) | def __init__(self):
    method get_packages (line 65) | def get_packages():
    method get_conflicts (line 73) | def get_conflicts():
    method post_install (line 79) | def post_install(dest_dir):
    method is_proprietary (line 84) | def is_proprietary():

FILE: src/hardware/modules/nvidia_304xx.py
  class Nvidia304xx (line 54) | class Nvidia304xx(Hardware):
    method __init__ (line 57) | def __init__(self):
    method get_packages (line 61) | def get_packages():
    method get_conflicts (line 69) | def get_conflicts():
    method post_install (line 75) | def post_install(dest_dir):
    method is_proprietary (line 80) | def is_proprietary():

FILE: src/hardware/modules/nvidia_340xx.py
  class Nvidia340xx (line 57) | class Nvidia340xx(Hardware):
    method __init__ (line 60) | def __init__(self):
    method get_packages (line 64) | def get_packages():
    method get_conflicts (line 72) | def get_conflicts():
    method post_install (line 78) | def post_install(dest_dir):
    method is_proprietary (line 83) | def is_proprietary():

FILE: src/hardware/modules/nvidia_390xx.py
  class Nvidia390xx (line 51) | class Nvidia390xx(Hardware):
    method __init__ (line 54) | def __init__(self):
    method get_packages (line 58) | def get_packages():
    method get_conflicts (line 66) | def get_conflicts():
    method post_install (line 72) | def post_install(dest_dir):
    method is_proprietary (line 77) | def is_proprietary():

FILE: src/hardware/modules/radeon.py
  class Radeon (line 48) | class Radeon(Hardware):
    method __init__ (line 51) | def __init__(self):
    method get_packages (line 55) | def get_packages():
    method post_install (line 63) | def post_install(dest_dir):
    method is_proprietary (line 70) | def is_proprietary():

FILE: src/hardware/modules/uvesafb.py
  class VesaFB (line 48) | class VesaFB(Hardware):
    method __init__ (line 51) | def __init__(self):
    method get_packages (line 55) | def get_packages():
    method post_install (line 59) | def post_install(self, dest_dir):

FILE: src/hardware/modules/via.py
  class Via (line 45) | class Via(Hardware):
    method __init__ (line 48) | def __init__(self):
    method get_packages (line 52) | def get_packages():
    method post_install (line 57) | def post_install(dest_dir):
    method is_proprietary (line 68) | def is_proprietary():

FILE: src/hardware/modules/virtualbox.py
  class Virtualbox (line 45) | class Virtualbox(Hardware):
    method __init__ (line 48) | def __init__(self):
    method get_packages (line 52) | def get_packages():
    method post_install (line 58) | def post_install(dest_dir):

FILE: src/hardware/modules/vmware.py
  class Vmware (line 43) | class Vmware(Hardware):
    method __init__ (line 46) | def __init__(self):
    method get_packages (line 50) | def get_packages():
    method post_install (line 55) | def post_install(dest_dir):

FILE: src/installation/action.py
  function _ (line 31) | def _(message):
  class Action (line 34) | class Action():
    method __init__ (line 37) | def __init__(self, action_type, path_or_info, relabel=False,
    method __str__ (line 50) | def __str__(self):

FILE: src/installation/auto_partition.py
  function _ (line 48) | def _(message):
  class AutoPartition (line 67) | class AutoPartition():
    method __init__ (line 72) | def __init__(self, dest_dir, auto_device, settings, callback_queue):
    method mkfs (line 103) | def mkfs(self, device, fs_type, mount_point, label_name, fs_options=""...
    method get_partition_path (line 186) | def get_partition_path(device, part_num):
    method get_devices (line 199) | def get_devices(self):
    method get_mount_devices (line 260) | def get_mount_devices(self):
    method get_fs_devices (line 290) | def get_fs_devices(self):
    method get_part_sizes (line 331) | def get_part_sizes(self, disk_size, start_part_sizes=1):
    method log_part_sizes (line 396) | def log_part_sizes(self, part_sizes):
    method get_disk_size (line 414) | def get_disk_size(self):
    method run_gpt (line 437) | def run_gpt(self, part_sizes):
    method run_mbr (line 508) | def run_mbr(self, part_sizes):
    method run_lvm (line 567) | def run_lvm(self, devices, part_sizes, start_part_sizes, disk_size):
    method create_filesystems (line 615) | def create_filesystems(self, devices):
    method copy_luks_keyfiles (line 647) | def copy_luks_keyfiles(self):
    method remove_lvm (line 669) | def remove_lvm(device):
    method printk (line 707) | def printk(enable):
    method log_devices (line 715) | def log_devices(self, devices):
    method run (line 725) | def run(self):
  function test_module (line 781) | def test_module():

FILE: src/installation/boot/boot_ui.py
  function _ (line 41) | def _(message):
  class BootUI (line 44) | class BootUI():
    method __init__ (line 46) | def __init__(self, page_ui):
    method translate_ui (line 56) | def translate_ui(self):
    method fill_bootloader_device_entry (line 71) | def fill_bootloader_device_entry(self):
    method select_bootdevice (line 84) | def select_bootdevice(combobox, value):
    method fill_bootloader_entry (line 100) | def fill_bootloader_entry(self):
    method bootloader_device_check_toggled (line 123) | def bootloader_device_check_toggled(self, status):
    method bootloader_device_entry_changed (line 133) | def bootloader_device_entry_changed(self):
    method bootloader_entry_changed (line 139) | def bootloader_entry_changed(self):
    method set_bootloader (line 145) | def set_bootloader(self, settings):

FILE: src/installation/boot/grub2.py
  function _ (line 53) | def _(message):
  class Grub2 (line 57) | class Grub2():
    method __init__ (line 63) | def __init__(self, dest_dir, settings, uuids):
    method install (line 69) | def install(self):
    method check_root_uuid_in_grub (line 86) | def check_root_uuid_in_grub(self):
    method modify_grub_default (line 134) | def modify_grub_default(self):
    method set_grub_option (line 205) | def set_grub_option(self, option, cmd):
    method prepare_grub_d (line 239) | def prepare_grub_d(self):
    method grub_ripper (line 260) | def grub_ripper():
    method run_mkconfig (line 281) | def run_mkconfig(self):
    method install_bios (line 305) | def install_bios(self):
    method copy_grub_efi_files (line 346) | def copy_grub_efi_files(self):
    method efi_files_exist (line 383) | def efi_files_exist(self, bootloader_id):
    method install_efi (line 399) | def install_efi(self):
    method apply_osprober_patch (line 444) | def apply_osprober_patch(self):
    method install_locales (line 458) | def install_locales(self):
  function test_module (line 477) | def test_module():

FILE: src/installation/boot/loader.py
  class Bootloader (line 39) | class Bootloader():
    method __init__ (line 42) | def __init__(self, dest_dir, settings, mount_devices):
    method install (line 67) | def install(self):
    method freeze_unfreeze_xfs (line 89) | def freeze_unfreeze_xfs(self):

FILE: src/installation/boot/refind.py
  class REFInd (line 37) | class REFInd():
    method __init__ (line 40) | def __init__(self, dest_dir, settings, uuids):
    method install (line 45) | def install(self):

FILE: src/installation/boot/systemd_boot.py
  class SystemdBoot (line 40) | class SystemdBoot():
    method __init__ (line 43) | def __init__(self, dest_dir, settings, uuids):
    method install (line 48) | def install(self):

FILE: src/installation/firewall.py
  function _ (line 47) | def _(message):
  function run (line 51) | def run(params, dest_dir="/install"):

FILE: src/installation/install.py
  function _ (line 55) | def _(message):
  class Installation (line 58) | class Installation():
    method __init__ (line 63) | def __init__(self, settings, callback_queue, packages, metalinks,
    method queue_fatal_event (line 102) | def queue_fatal_event(self, txt):
    method mount_partitions (line 110) | def mount_partitions(self):
    method run (line 210) | def run(self):
    method download_packages (line 338) | def download_packages(self):
    method create_pacman_conf_file (line 358) | def create_pacman_conf_file(self):
    method prepare_pacman (line 379) | def prepare_pacman(self):
    method prepare_pacman_keyring (line 406) | def prepare_pacman_keyring():
    method delete_stale_pkgs (line 448) | def delete_stale_pkgs(self, stale_pkgs):
    method use_build_server_repo (line 461) | def use_build_server_repo():
    method install_packages (line 471) | def install_packages(self):
    method is_running (line 517) | def is_running(self):
    method is_ok (line 521) | def is_ok(self):

FILE: src/installation/lamp.py
  function setup (line 47) | def setup():
  function mariadb_setup (line 61) | def mariadb_setup():
  function apache_setup (line 76) | def apache_setup():
  function php_setup (line 125) | def php_setup():

FILE: src/installation/lemp.py
  function setup (line 46) | def setup():
  function mariadb_setup (line 60) | def mariadb_setup():
  function nginx_setup (line 75) | def nginx_setup():
  function php_setup (line 107) | def php_setup():

FILE: src/installation/luks.py
  function close_antergos_devices (line 38) | def close_antergos_devices():
  function setup (line 52) | def setup(luks_device, luks_name, luks_options):

FILE: src/installation/mkinitcpio.py
  function run (line 38) | def run(dest_dir, settings, mount_devices, blvm):
  function get_hooks (line 60) | def get_hooks(dest_dir, settings, swap, blvm, usr):
  function get_modules (line 106) | def get_modules(settings):
  function get_files (line 126) | def get_files(settings):
  function set_hooks_modules_and_files (line 139) | def set_hooks_modules_and_files(dest_dir, hooks, modules, files):

FILE: src/installation/mount.py
  function unmount (line 35) | def unmount(directory):
  function unmount_swap (line 41) | def unmount_swap():
  function unmount_all_in_directory (line 52) | def unmount_all_in_directory(dest_dir):
  function unmount_all_in_device (line 82) | def unmount_all_in_device(device):

FILE: src/installation/post_features.py
  class PostFeatures (line 36) | class PostFeatures():
    method __init__ (line 38) | def __init__(self, dest_dir, settings):
    method setup (line 42) | def setup(self):
    method enable_mdns (line 114) | def enable_mdns(self):
    method read_file_from_install (line 134) | def read_file_from_install(self, path):
    method set_kernel_lts (line 148) | def set_kernel_lts(self):
    method set_kernel_lts_grub (line 160) | def set_kernel_lts_grub(self):
    method set_kernel_lts_systemdboot (line 190) | def set_kernel_lts_systemdboot(self):
    method set_kernel_lts_refind (line 194) | def set_kernel_lts_refind(self):
    method enable_aur_in_pamac (line 199) | def enable_aur_in_pamac():

FILE: src/installation/post_fstab.py
  class PostFstab (line 33) | class PostFstab():
    method __init__ (line 38) | def __init__(self, method, mount_devices, fs_devices, ssd, settings):
    method get_swap_fstab_line (line 50) | def get_swap_fstab_line(self, uuid, partition_path):
    method add_vol_to_crypttab (line 67) | def add_vol_to_crypttab(vol_name, uuid, keyfile='none'):
    method get_device_fstab_line (line 79) | def get_device_fstab_line(partition_path, mount_point, myfmt, opts='de...
    method get_uuid_fstab_line (line 87) | def get_uuid_fstab_line(uuid, mount_point, myfmt, opts='defaults', chk...
    method get_mount_options (line 95) | def get_mount_options(myfmt, is_ssd):
    method run (line 119) | def run(self):

FILE: src/installation/post_install.py
  function _ (line 55) | def _(message):
  class PostInstallation (line 60) | class PostInstallation():
    method __init__ (line 65) | def __init__(
    method copy_logs (line 90) | def copy_logs(self):
    method copy_network_config (line 120) | def copy_network_config():
    method set_scheduler (line 148) | def set_scheduler(self):
    method change_user_password (line 167) | def change_user_password(user, new_password):
    method auto_timesetting (line 173) | def auto_timesetting():
    method update_pacman_conf (line 185) | def update_pacman_conf():
    method uncomment_locale_gen (line 217) | def uncomment_locale_gen(locale):
    method setup_display_manager (line 235) | def setup_display_manager(self):
    method alsa_mixer_setup (line 280) | def alsa_mixer_setup():
    method set_fluidsynth (line 309) | def set_fluidsynth():
    method patch_user_dirs_update_gtk (line 324) | def patch_user_dirs_update_gtk():
    method set_keymap (line 337) | def set_keymap(self):
    method get_installed_zfs_version (line 367) | def get_installed_zfs_version():
    method get_installed_kernel_versions (line 382) | def get_installed_kernel_versions():
    method set_desktop_settings (line 391) | def set_desktop_settings(self):
    method modify_makepkg (line 421) | def modify_makepkg():
    method add_sudoer (line 437) | def add_sudoer(username):
    method setup_user (line 453) | def setup_user(self):
    method nano_setup (line 530) | def nano_setup():
    method rebuild_zfs_modules (line 546) | def rebuild_zfs_modules(self):
    method pamac_setup (line 568) | def pamac_setup(self):
    method setup_timesyncd (line 584) | def setup_timesyncd():
    method check_btrfs (line 599) | def check_btrfs(self):
    method configure_system (line 610) | def configure_system(self, hardware_install):

FILE: src/installation/process.py
  function _ (line 52) | def _(message):
  class Process (line 56) | class Process(multiprocessing.Process):
    method __init__ (line 59) | def __init__(self, install_screen, settings, callback_queue):
    method create_metalinks_list (line 70) | def create_metalinks_list(self):
    method init_lembrame (line 97) | def init_lembrame(self):
    method prepare_lembrame (line 104) | def prepare_lembrame(self):
    method overwrite_variables_lembrame (line 122) | def overwrite_variables_lembrame(self):
    method run (line 130) | def run(self):

FILE: src/installation/select_packages.py
  function _ (line 51) | def _(message):
  class SelectPackages (line 55) | class SelectPackages():
    method __init__ (line 60) | def __init__(self, settings, callback_queue):
    method create_package_list (line 83) | def create_package_list(self):
    method refresh_pacman_databases (line 106) | def refresh_pacman_databases(self):
    method add_package (line 134) | def add_package(self, pkg):
    method load_xml_local (line 172) | def load_xml_local(self, xml_filename):
    method load_xml_remote (line 182) | def load_xml_remote(self):
    method load_xml_root_node (line 195) | def load_xml_root_node(self):
    method add_drivers (line 221) | def add_drivers(self):
    method add_filesystems (line 252) | def add_filesystems(self):
    method maybe_add_chinese_fonts (line 266) | def maybe_add_chinese_fonts(self):
    method maybe_add_bootloader (line 275) | def maybe_add_bootloader(self):
    method add_edition_packages (line 291) | def add_edition_packages(self):
    method maybe_add_vbox_packages (line 313) | def maybe_add_vbox_packages(self):
    method select_packages (line 324) | def select_packages(self):
    method check_packages (line 369) | def check_packages(self):
    method cleanup_packages_list (line 395) | def cleanup_packages_list(self):
    method add_conflicts (line 412) | def add_conflicts(self, conflicts):
    method add_hunspell (line 423) | def add_hunspell(self, language_code):
    method add_libreoffice_language (line 449) | def add_libreoffice_language(self):
    method add_firefox_language (line 471) | def add_firefox_language(self):
    method add_features (line 500) | def add_features(self):

FILE: src/installation/services.py
  function enable_services (line 35) | def enable_services(services):
  function mask_services (line 47) | def mask_services(services):

FILE: src/installation/special_dirs.py
  function _ (line 40) | def _(message):
  function _get_mounts (line 46) | def _get_mounts():
  function mount (line 69) | def mount(dest_dir):
  function umount (line 101) | def umount(dest_dir):

FILE: src/installation/systemd_networkd.py
  function setup (line 45) | def setup(ssid=None, passphrase=None):
  function _ (line 128) | def _(msg):

FILE: src/installation/wrapper.py
  function _ (line 41) | def _(message):
  function wipefs (line 45) | def wipefs(device, fatal=True):
  function run_dd (line 52) | def run_dd(input_device, output_device, bytes_block=512, count=2048, see...
  function partprobe (line 69) | def partprobe():
  function sgdisk (line 77) | def sgdisk(command, device):
  function sgdisk_new (line 93) | def sgdisk_new(device, part_num, label, size, hex_code):
  function parted_set (line 117) | def parted_set(device, number, flag, state):
  function parted_mkpart (line 130) | def parted_mkpart(device, ptype, start, end, filesystem=""):
  function _create_partition_cmd (line 153) | def _create_partition_cmd(device, cmd):
  function parted_mklabel (line 167) | def parted_mklabel(device, label_type="msdos"):

FILE: src/lembrame/config.py
  class LembrameConfig (line 33) | class LembrameConfig():
    method __init__ (line 42) | def __init__(self, temp):

FILE: src/lembrame/credentials.py
  class LembrameCredentials (line 31) | class LembrameCredentials(object):
    method __init__ (line 37) | def __init__(self, user_id, upload_code):
    method get_user_id (line 42) | def get_user_id(self):
    method get_upload_code (line 46) | def get_upload_code(self):

FILE: src/lembrame/dialog.py
  function _ (line 41) | def _(msg):
  class LembrameDialog (line 45) | class LembrameDialog(Gtk.Dialog):
    method __init__ (line 48) | def __init__(self, transient_for, gui_dir):
    method translate_ui (line 67) | def translate_ui(self):
    method get_credentials (line 80) | def get_credentials(self):

FILE: src/lembrame/gnome_extensions/downloader.py
  class GnomeExtensionsDownloader (line 38) | class GnomeExtensionsDownloader():
    method __init__ (line 46) | def __init__(self, install_user_home, config):
    method run (line 53) | def run(self, extensions):
    method download_extension (line 64) | def download_extension(self):
    method get_extension_info (line 91) | def get_extension_info(self):
    method get_latest_shell_supported (line 103) | def get_latest_shell_supported(self):
    method get_extension_download_link (line 110) | def get_extension_download_link(self):
    method extract_extension (line 126) | def extract_extension(self):

FILE: src/lembrame/lembrame.py
  function _ (line 55) | def _(msg):
  function get_key_decryption_file (line 59) | def get_key_decryption_file(pass_hash, salt):
  class Lembrame (line 66) | class Lembrame:
    method __init__ (line 81) | def __init__(self, settings):
    method download_file (line 89) | def download_file(self):
    method request_download_link (line 105) | def request_download_link(self):
    method setup (line 119) | def setup(self):
    method open_file (line 144) | def open_file(self):
    method verify_file_signature (line 152) | def verify_file_signature(self):
    method decrypt_file (line 156) | def decrypt_file(self):
    method get_decryption_hash (line 180) | def get_decryption_hash(self):
    method extract_encrypted_file (line 187) | def extract_encrypted_file(self):
    method copy_folder_to_dest (line 198) | def copy_folder_to_dest(self):
    method before_setup (line 202) | def before_setup(self):
    method get_pacman_packages (line 215) | def get_pacman_packages(self):
    method overwrite_installer_variables (line 227) | def overwrite_installer_variables(self):
    method overwrite_content (line 232) | def overwrite_content(self):
    method download_gnome_extensions (line 287) | def download_gnome_extensions(self):
    method get_synced_display_manager (line 308) | def get_synced_display_manager(self):

FILE: src/logging_color.py
  class ColoredFormatter (line 37) | class ColoredFormatter(logging.Formatter):
    method __init__ (line 48) | def __init__(self, fmt, datefmt, use_color=True):
    method formatter_message (line 54) | def formatter_message(message, use_color=True):
    method format (line 63) | def format(self, record):

FILE: src/logging_resources.py
  class ResourcesFormatter (line 34) | class ResourcesFormatter(logging.Formatter):
    method __init__ (line 37) | def __init__(self, fmt=None, datefmt=None):
    method format (line 51) | def format(self, record):

FILE: src/logging_utils.py
  class Singleton (line 40) | class Singleton(type):
    method __call__ (line 44) | def __call__(cls, *args, **kwargs):
    method __new__ (line 49) | def __new__(cls, *args, **kwargs):
  class ContextFilter (line 63) | class ContextFilter(logging.Filter, metaclass=Singleton):
    method __init__ (line 67) | def __init__(self):
    method filter (line 75) | def filter(self, record):
    method get_and_save_install_id (line 82) | def get_and_save_install_id(self, is_location_screen=False):
    method get_bugsnag_api (line 119) | def get_bugsnag_api():
    method get_url_for_id_request (line 135) | def get_url_for_id_request(self):
    method filter_log_lines (line 151) | def filter_log_lines(log):
    method bugsnag_before_notify_callback (line 175) | def bugsnag_before_notify_callback(self, notification=None):
    method send_install_result (line 213) | def send_install_result(self, result):

FILE: src/main_window.py
  function _ (line 69) | def _(message):
  function atk_set_image_description (line 72) | def atk_set_image_description(widget, description):
  function atk_set_object_description (line 80) | def atk_set_object_description(widget, description):
  class MainWindow (line 88) | class MainWindow(Gtk.ApplicationWindow):
    method __init__ (line 91) | def __init__(self, app, cmd_line):
    method header_for_all_callback (line 322) | def header_for_all_callback(self, widget, _data):
    method load_pages (line 329) | def load_pages(self):
    method set_geometry (line 379) | def set_geometry(self):
    method on_key_release (line 413) | def on_key_release(self, _widget, event, _data=None):
    method confirm_quitting (line 421) | def confirm_quitting(self):
    method on_exit_button_clicked (line 434) | def on_exit_button_clicked(self, _widget, _data=None):
    method set_progressbar_step (line 445) | def set_progressbar_step(self, add_value):
    method on_forward_button_clicked (line 458) | def on_forward_button_clicked(self, _widget, _data=None):
    method on_backwards_button_clicked (line 491) | def on_backwards_button_clicked(self, _widget, _data=None):

FILE: src/misc/avatars.py
  function _ (line 41) | def _(message):
  class Avatars (line 45) | class Avatars(Gtk.Dialog):
    method __init__ (line 51) | def __init__(self, data_path, parent=None):
    method avatar_selected (line 95) | def avatar_selected(self, _iconview, treepath):
  function test_module (line 100) | def test_module():

FILE: src/misc/events.py
  class Events (line 36) | class Events():
    method __init__ (line 38) | def __init__(self, callback_queue):
    method add (line 42) | def add(self, event_type, event_text=""):
    method add_fatal (line 83) | def add_fatal(self, event_text=""):

FILE: src/misc/extra.py
  function copytree (line 50) | def copytree(src_dir, dst_dir, symlinks=False, ignore=None):
  function utf8 (line 61) | def utf8(my_string, errors="strict"):
  function is_swap (line 69) | def is_swap(device):
  function set_groups_for_uid (line 82) | def set_groups_for_uid(uid):
  function get_uid_gid (line 98) | def get_uid_gid():
  function drop_all_privileges (line 111) | def drop_all_privileges():
  function drop_privileges (line 126) | def drop_privileges():
  function regain_privileges (line 140) | def regain_privileges():
  function drop_privileges_save (line 152) | def drop_privileges_save():
  function regain_privileges_save (line 167) | def regain_privileges_save():
  function raised_privileges (line 178) | def raised_privileges():
  function raise_privileges (line 187) | def raise_privileges(func):
  function is_removable (line 202) | def is_removable(device):
  function mount_info (line 248) | def mount_info(path):
  function udevadm_info (line 263) | def udevadm_info(args):
  function partition_to_disk (line 279) | def partition_to_disk(partition):
  function cdrom_mount_info (line 293) | def cdrom_mount_info():
  function format_size (line 304) | def format_size(size):
  function create_bool (line 327) | def create_bool(text):
  function dmimodel (line 339) | def dmimodel():
  function get_prop (line 390) | def get_prop(obj, iface, prop):
  function is_wireless_enabled (line 399) | def is_wireless_enabled():
  function get_nm_state (line 406) | def get_nm_state():
  function get_proxies (line 418) | def get_proxies():
  function has_connection (line 427) | def has_connection():
  function inside_hypervisor (line 479) | def inside_hypervisor():
  function add_connection_watch (line 494) | def add_connection_watch(func):
  function get_network (line 512) | def get_network():
  function sort_list (line 542) | def sort_list(my_list, my_locale=""):
  function gtk_refresh (line 558) | def gtk_refresh():
  function remove_temp_files (line 566) | def remove_temp_files(tmp_dir):
  function set_cursor (line 580) | def set_cursor(cursor_type):
  function partition_exists (line 597) | def partition_exists(partition):
  function is_partition_extended (line 609) | def is_partition_extended(partition):
  function get_partitions (line 634) | def get_partitions():
  function check_pid (line 647) | def check_pid(pid):
  function random_generator (line 657) | def random_generator(size=4, chars=string.ascii_lowercase + string.digits):
  function select_combobox_value (line 662) | def select_combobox_value(combobox, value):
  function select_first_combobox_item (line 679) | def select_first_combobox_item(combobox):
  class InstallError (line 686) | class InstallError(Exception):
    method __init__ (line 689) | def __init__(self, message):
    method __repr__ (line 694) | def __repr__(self):
    method __str__ (line 698) | def __str__(self):

FILE: src/misc/gocryptfs.py
  function _sync (line 40) | def _sync():
  function _gocryptfs (line 49) | def _gocryptfs(params, _username, password):
  function _copy_folder_contents (line 61) | def _copy_folder_contents(src_path, dst_path, username=None, usergroup=N...
  function _restore_user_home_files (line 75) | def _restore_user_home_files(paths, username=None, usergroup=None):
  function setup (line 88) | def setup(username, usergroup, install_dir, password):
  function test_module (line 139) | def test_module():

FILE: src/misc/gsettings.py
  function set (line 36) | def set(installation_user, schema, key, value):
  function get (line 47) | def get(installation_user, schema, key):
  function dconf_load (line 58) | def dconf_load(installation_user, schema, file):

FILE: src/misc/gtkwidgets.py
  function refresh (line 36) | def refresh():
  function draw_round_rect (line 42) | def draw_round_rect(context, rounded, start_x, start_y, width, height):
  function gtk_to_cairo_color (line 62) | def gtk_to_cairo_color(gtk_color):
  class StylizedFrame (line 69) | class StylizedFrame(Gtk.Bin):
    method __init__ (line 81) | def __init__(self):
    method do_get_property (line 86) | def do_get_property(self, prop):
    method do_set_property (line 93) | def do_set_property(self, prop, value):
    method paint_background (line 101) | def paint_background(self, context):
    method do_draw (line 111) | def do_draw(self, context):
  class DiskBox (line 127) | class DiskBox(Gtk.Box):
    method add (line 131) | def add(self, partition, size):
    method clear (line 136) | def clear(self):
  class PartitionBox (line 142) | class PartitionBox(StylizedFrame):
    method do_get_property (line 160) | def do_get_property(self, prop):
    method do_set_property (line 172) | def do_set_property(self, prop, value):
    method __init__ (line 187) | def __init__(self, title="", extra="", icon_name="", icon_file=""):
    method set_size_in_mb (line 226) | def set_size_in_mb(self, size):
    method set_size (line 230) | def set_size(self, size):
    method render_dots (line 236) | def render_dots():
    method paint_background (line 247) | def paint_background(self, context):
  class ResizeWidget (line 268) | class ResizeWidget(Gtk.Frame):
    method do_get_property (line 286) | def do_get_property(self, prop):
    method do_set_property (line 294) | def do_set_property(self, prop, value):
    method __init__ (line 304) | def __init__(self, part_size, min_size, max_size):
    method set_part_title (line 336) | def set_part_title(self, part, title, subtitle=None):
    method get_part_title_and_subtitle (line 347) | def get_part_title_and_subtitle(self, part):
    method set_part_icon (line 357) | def set_part_icon(self, part, icon_name=None, icon_file=None):
    method do_size_allocate (line 370) | def do_size_allocate(self, allocation):
    method do_draw (line 391) | def do_draw(self, context):
    method set_pref_size (line 405) | def set_pref_size(self, size):
    method get_size (line 415) | def get_size(self):
  class StateBox (line 433) | class StateBox(StylizedFrame):
    method do_get_property (line 442) | def do_get_property(self, prop):
    method do_set_property (line 448) | def do_set_property(self, prop, value):
    method __init__ (line 455) | def __init__(self, text=''):
    method set_state (line 477) | def set_state(self, state):
    method get_state (line 487) | def get_state(self):
    method show (line 491) | def show(self):
    method hide (line 495) | def hide(self):
  class Builder (line 501) | class Builder(Gtk.Builder):
    method __init__ (line 504) | def __init__(self):
    method add_from_file (line 508) | def add_from_file(self, filename):
    method get_object_ids (line 517) | def get_object_ids(self):

FILE: src/misc/i18n.py
  function utf8 (line 24) | def utf8(my_string, errors="strict"):
  function get_languages (line 32) | def get_languages(language_list="data/languagelist.data.gz", current_lan...

FILE: src/misc/keyboard_names.py
  class Model (line 33) | class Model(GObject.GObject):
    method __init__ (line 36) | def __init__(self, name, description, vendor):
    method __repr__ (line 42) | def __repr__(self):
  class Variant (line 47) | class Variant(GObject.GObject):
    method __init__ (line 50) | def __init__(self, name, short_description, description, language_list):
    method __repr__ (line 57) | def __repr__(self):
  class Layout (line 62) | class Layout(GObject.GObject):
    method __init__ (line 65) | def __init__(self, name, short_description, description, language_list):
    method __repr__ (line 73) | def __repr__(self):
    method add_variant (line 77) | def add_variant(self, variant):
    method sort_variants (line 81) | def sort_variants(self):
  class KeyboardNames (line 87) | class KeyboardNames():
    method __init__ (line 90) | def __init__(self, filename):
    method _clear (line 96) | def _clear(self):
    method _load_models (line 101) | def _load_models(self, xml_root):
    method _load_layout_item (line 112) | def _load_layout_item(self, layout_item):
    method _load_variant_items (line 130) | def _load_variant_items(self, layout_item, layout_name):
    method _load_layouts (line 151) | def _load_layouts(self, xml_root):
    method _load_xml (line 160) | def _load_xml(self):
    method sort_layouts (line 175) | def sort_layouts(self):
    method get_layout (line 182) | def get_layout(self, name):
    method get_layouts (line 188) | def get_layouts(self):
    method get_layout_description (line 192) | def get_layout_description(self, name):
    method get_layout_by_description (line 198) | def get_layout_by_description(self, description):
    method get_layout_name_by_description (line 205) | def get_layout_name_by_description(self, description):
    method has_variants (line 212) | def has_variants(self, name):
    method get_variants (line 216) | def get_variants(self, name):
    method get_variant_description (line 220) | def get_variant_description(self, name, variant_name):
    method get_variant_descriptions (line 227) | def get_variant_descriptions(self, name):
    method get_variant_name_by_description (line 235) | def get_variant_name_by_description(self, description):
  function test (line 244) | def test():

FILE: src/misc/nm.py
  function decode_ssid (line 51) | def decode_ssid(characters):
  function get_prop (line 56) | def get_prop(obj, iface, prop):
  function get_vendor_and_model (line 67) | def get_vendor_and_model(udi):
  function wireless_hardware_present (line 88) | def wireless_hardware_present():
  class NetworkManagerModel (line 105) | class NetworkManagerModel:
    method __init__ (line 107) | def __init__(self, model, state_changed=None):
    method start (line 120) | def start(self, state_changed=None):
    method get_state (line 137) | def get_state(self):
    method is_connected (line 141) | def is_connected(self, device, access_point):
    method connect_to_ap (line 154) | def connect_to_ap(self, device, access_point, passphrase=None):
    method disconnect_from_ap (line 181) | def disconnect_from_ap(self):
    method build_passphrase_cache (line 194) | def build_passphrase_cache(self):
    method ssid_in_model (line 212) | def ssid_in_model(self, iterator, ssid, security):
    method prune (line 222) | def prune(self, iterator, ssids):
    method queue_build_cache (line 234) | def queue_build_cache(self, *args):
    method properties_changed (line 240) | def properties_changed(self, props, path=None):
    method build_cache (line 258) | def build_cache(self):
  class NetworkManagerTreeView (line 305) | class NetworkManagerTreeView(Gtk.TreeView):
    method __init__ (line 310) | def __init__(self, password_entry=None, state_changed=None):
    method setup_row_expansion_handling (line 337) | def setup_row_expansion_handling(self, model):
    method rows_changed (line 364) | def rows_changed(self, *args):
    method get_state (line 379) | def get_state(self):
    method disconnect_from_ap (line 383) | def disconnect_from_ap(self):
    method row_activated (line 387) | def row_activated(self, _unused, _path, _column):
    method configure_icons (line 394) | def configure_icons(self):
    method pixbuf_func (line 413) | def pixbuf_func(self, _column, cell, model, iterator, _data):
    method data_func (line 435) | def data_func(_column, cell, model, iterator, _data):
    method get_passphrase (line 445) | def get_passphrase(self, ssid):
    method is_row_an_ap (line 453) | def is_row_an_ap(self):
    method is_row_connected (line 460) | def is_row_connected(self):
    method connect_to_selection (line 469) | def connect_to_selection(self, passphrase):
  class NetworkManagerWidget (line 480) | class NetworkManagerWidget(Gtk.Box):
    method __init__ (line 493) | def __init__(self):
    method translate (line 525) | def translate(self, password_label_text, display_password_text):
    method get_state (line 530) | def get_state(self):
    method is_row_an_ap (line 534) | def is_row_an_ap(self):
    method is_row_connected (line 538) | def is_row_connected(self):
    method select_usable_row (line 542) | def select_usable_row(self):
    method state_changed (line 546) | def state_changed(self, state):
    method password_is_valid (line 550) | def password_is_valid(self):
    method connect_to_ap (line 564) | def connect_to_ap(self, *args):
    method disconnect_from_ap (line 570) | def disconnect_from_ap(self):
    method password_entry_changed (line 574) | def password_entry_changed(self, *args):
    method display_password_toggled (line 578) | def display_password_toggled(self, *args):
    method changed (line 582) | def changed(self, selection):
  function test_module (line 604) | def test_module():

FILE: src/misc/osextras.py
  function _resolve_link_root (line 31) | def _resolve_link_root(root, path):
  function _realpath_root_recurse (line 51) | def _realpath_root_recurse(root, filename):
  function realpath_root (line 72) | def realpath_root(root, filename):
  function find_on_path_root (line 81) | def find_on_path_root(root, command):
  function find_on_path (line 95) | def find_on_path(command):
  function unlink_force (line 109) | def unlink_force(path):
  function glob_root (line 117) | def glob_root(root, pathname):

FILE: src/misc/run_cmd.py
  function ensured_executable (line 44) | def ensured_executable(cmd):
  function log_exception_info (line 64) | def log_exception_info():
  function call (line 81) | def call(cmd, warning=True, error=False, fatal=False, msg=None, timeout=...
  function chroot_call (line 129) | def chroot_call(cmd, chroot_dir=DEST_DIR, fatal=False, msg=None, timeout...
  function popen (line 191) | def popen(cmd, warning=True, error=False, fatal=False, msg=None, stdin=s...

FILE: src/misc/tz.py
  function _seconds_since_epoch (line 42) | def _seconds_since_epoch(my_datetime):
  class SystemTzInfo (line 46) | class SystemTzInfo(datetime.tzinfo):
    method __init__ (line 49) | def __init__(self, timezone=None):
    method _select_tz (line 52) | def _select_tz(self):
    method _restore_tz (line 63) | def _restore_tz(tzbackup):
    method utcoffset (line 72) | def utcoffset(self, dt):
    method get_daylight (line 91) | def get_daylight(self):
    method is_dst (line 98) | def is_dst(self, my_datetime):
    method rawutcoffset (line 106) | def rawutcoffset(self, unused_dt):
    method dst (line 115) | def dst(self, dt):
    method tzname (line 132) | def tzname(self, unused_dt):
    method tzname_letters (line 136) | def tzname_letters(self, my_datetime):
  class Iso3166 (line 146) | class Iso3166():
    method __init__ (line 149) | def __init__(self):
    method handle_entries (line 155) | def handle_entries(self, entries):
    method handle_entry (line 160) | def handle_entry(self, entry):
  function _parse_position (line 177) | def _parse_position(position, wholedigits):
  class Location (line 189) | class Location():
    method get_info (line 202) | def get_info(self):
    method is_dst (line 206) | def is_dst(self):
    method get_utc_offset (line 210) | def get_utc_offset(self):
    method get_raw_utc_offset (line 214) | def get_raw_utc_offset(self):
    method __init__ (line 218) | def __init__(self, zonetab_line, iso3166):
    method get_property (line 271) | def get_property(self, prop):
    method set_property (line 275) | def set_property(self, prop, value):
  class Database (line 280) | class Database():
    method __init__ (line 283) | def __init__(self):
    method get_loc (line 303) | def get_loc(self, timezone):
    method get_locations (line 329) | def get_locations(self):

FILE: src/misc/validation.py
  function _ (line 19) | def _(message):
  function check_grub_device (line 23) | def check_grub_device(device):
  function check (line 38) | def check(element, value):
  function check_username (line 49) | def check_username(name):
  function check_hostname (line 75) | def check_hostname(name):
  function password_strength (line 104) | def password_strength(password):
  function human_password_strength (line 136) | def human_password_strength(password):
  function check_password (line 161) | def check_password(password, verified_password, allow_empty=False):

FILE: src/pacman/pac.py
  function _ (line 57) | def _(message):
  class Pac (line 64) | class Pac():
    method __init__ (line 68) | def __init__(self, conf_path="/etc/pacman.conf", callback_queue=None):
    method format_size (line 105) | def format_size(size):
    method get_handle (line 114) | def get_handle(self):
    method get_config (line 118) | def get_config(self):
    method initialize_alpm (line 122) | def initialize_alpm(self):
    method release (line 158) | def release(self):
    method finalize_transaction (line 165) | def finalize_transaction(transaction):
    method init_transaction (line 180) | def init_transaction(self, options=None):
    method remove (line 206) | def remove(self, pkg_names, options=None):
    method refresh (line 235) | def refresh(self):
    method install (line 252) | def install(self, pkgs, conflicts=None, options=None):
    method upgrade (line 359) | def upgrade(self, pkgs, conflicts=None, options=None):
    method find_sync_package (line 396) | def find_sync_package(pkgname, syncdbs):
    method get_group_pkgs (line 406) | def get_group_pkgs(self, group):
    method get_packages_info (line 415) | def get_packages_info(self, pkg_names=None):
    method get_package_info (line 443) | def get_package_info(self, pkg_name):
    method cb_question (line 458) | def cb_question(*args):
    method cb_event (line 462) | def cb_event(self, event, event_data):
    method cb_log (line 504) | def cb_log(self, level, line):
    method cb_progress (line 528) | def cb_progress(self, target, percent, total, current):
    method cb_totaldl (line 544) | def cb_totaldl(self, total_size):
    method cb_dl (line 548) | def cb_dl(self, filename, transferred, total):
    method is_package_installed (line 574) | def is_package_installed(self, package_name):
    method setup_logger (line 583) | def setup_logger(self):
  function test (line 607) | def test():

FILE: src/pacman/pacman_conf.py
  class InvalidSyntax (line 38) | class InvalidSyntax(Warning):
    method __init__ (line 41) | def __init__(self, filename, problem, arg):
    method __str__ (line 47) | def __str__(self):
  function pacman_conf_enumerator (line 91) | def pacman_conf_enumerator(path):
  class PacmanConfig (line 152) | class PacmanConfig(collections.OrderedDict):
    method __init__ (line 155) | def __init__(self, conf=None, options=None):
    method load_from_file (line 171) | def load_from_file(self, filename):
    method load_from_options (line 188) | def load_from_options(self, options):
    method apply (line 206) | def apply(self, handle):
    method __str__ (line 237) | def __str__(self):

FILE: src/pacman/pkginfo.py
  function _ (line 45) | def _(message):
  function get_term_size (line 52) | def get_term_size():
  function format_attr (line 62) | def format_attr(attrname, value, attrformat=None):
  function format_attr_oneperline (line 83) | def format_attr_oneperline(attrname, value):
  function display_pkginfo (line 92) | def display_pkginfo(pkg, level=1, style='local'):
  function get_pkginfo (line 166) | def get_pkginfo(pkg, level=1, style='local'):

FILE: src/pages/advanced.py
  function _ (line 74) | def _(message):
  class InstallationAdvanced (line 78) | class InstallationAdvanced(GtkBaseBox):
    method __init__ (line 81) | def __init__(self, params, prev_page="installation_ask",
    method ssd_cell_toggled (line 167) | def ssd_cell_toggled(self, _widget, path):
    method format_cell_toggled (line 172) | def format_cell_toggled(self, _widget, path):
    method gen_partition_uid (line 184) | def gen_partition_uid(self, partition=None, path=None):
    method check_buttons (line 210) | def check_buttons(self, selection):
    method fill_bootloader_device_entry (line 266) | def fill_bootloader_device_entry(self):
    method fill_bootloader_entry (line 271) | def fill_bootloader_entry(self):
    method bootloader_device_check_toggled (line 275) | def bootloader_device_check_toggled(self, checkbox):
    method bootloader_device_entry_changed (line 281) | def bootloader_device_entry_changed(self, _widget):
    method bootloader_entry_changed (line 285) | def bootloader_entry_changed(self, _widget):
    method get_size (line 291) | def get_size(length, sector_size):
    method fill_partition_treeview (line 311) | def fill_partition_treeview(self):
    method show_partition_edit_error (line 557) | def show_partition_edit_error(self, error):
    method edit_partition (line 569) | def edit_partition(self, _button):
    method update_view (line 678) | def update_view(self):
    method get_disk_path_from_selection (line 688) | def get_disk_path_from_selection(model, tree_iter):
    method delete_partition (line 714) | def delete_partition(self, _button):
    method get_mount_point (line 790) | def get_mount_point(partition_path):
    method get_swap_partition (line 805) | def get_swap_partition(partition_path):
    method new_partition (line 818) | def new_partition(self, _button):
    method undo_changes (line 1009) | def undo_changes(self, _button):
    method partition_selection_changed (line 1025) | def partition_selection_changed(self, selection):
    method partition_row_activated (line 1045) | def partition_row_activated(self, _path, _column, _user_data):
    method partition_popup_menu (line 1059) | def partition_popup_menu(_widget):
    method translate_ui (line 1064) | def translate_ui(self):
    method prepare (line 1114) | def prepare(self, direction):
    method new_partition_table (line 1145) | def new_partition_table(self, _button):
    method create_bios_gpt_boot_partition (line 1199) | def create_bios_gpt_boot_partition(self, disk_path):
    method partition_lvm_activated (line 1271) | def partition_lvm_activated(self, button):
    method need_swap (line 1276) | def need_swap():
    method status_label (line 1297) | def status_label(self, mount_point, status):
    method update_check_labels (line 1321) | def update_check_labels(self):
    method check_mount_points (line 1386) | def check_mount_points(self):
    method unmount_partition (line 1418) | def unmount_partition(self, partition_path):
    method get_partition_changes (line 1461) | def get_partition_changes(self, uid, partition_path):
    method get_lvm_changes (line 1499) | def get_lvm_changes(self):
    method get_disks_changes (line 1510) | def get_disks_changes(self):
    method get_changes (line 1526) | def get_changes(self):
    method set_cursor (line 1546) | def set_cursor(cursor_type):
    method store_values (line 1554) | def store_values(self):
    method disable_all_widgets (line 1559) | def disable_all_widgets(self):
    method enable_all_widgets (line 1563) | def enable_all_widgets(self, status=True):
    method finalize_changes (line 1575) | def finalize_changes(self, disk):
    method run_format (line 1588) | def run_format(self):
    method run_install (line 1740) | def run_install(self, packages, metalinks):

FILE: src/pages/alongside.py
  function _ (line 51) | def _(message):
  function get_partition_size_info (line 55) | def get_partition_size_info(partition_path, human=False):
  class InstallationAlongside (line 102) | class InstallationAlongside(GtkBaseBox):
    method __init__ (line 108) | def __init__(self, params, prev_page="installation_ask", next_page="us...
    method get_new_device (line 123) | def get_new_device(device_to_shrink):
    method set_resize_widget (line 143) | def set_resize_widget(self, device_to_shrink):
    method get_distributor_icon_file (line 194) | def get_distributor_icon_file(self, os_name):
    method translate_ui (line 221) | def translate_ui(self):
    method choose_partition_changed (line 232) | def choose_partition_changed(self, combobox):
    method prepare (line 239) | def prepare(self, direction):
    method fill_choose_partition_combo (line 245) | def fill_choose_partition_combo(self):
    method store_values (line 280) | def store_values(self):
    method start_installation (line 287) | def start_installation(self):

FILE: src/pages/ask.py
  function _ (line 49) | def _(message):
  function check_alongside_disk_layout (line 53) | def check_alongside_disk_layout():
  function load_zfs (line 83) | def load_zfs():
  class InstallationAsk (line 97) | class InstallationAsk(GtkBaseBox):
    method __init__ (line 99) | def __init__(self, params, prev_page="mirrors", next_page=None):
    method alongside_wiki_button_clicked (line 153) | def alongside_wiki_button_clicked(self, _widget, _data=None):
    method check_alongside (line 163) | def check_alongside(self):
    method enable_automatic_options (line 203) | def enable_automatic_options(self, status):
    method prepare (line 219) | def prepare(self, direction):
    method hide_option (line 239) | def hide_option(self, option):
    method get_os_list_str (line 253) | def get_os_list_str(self):
    method translate_ui (line 272) | def translate_ui(self):
    method store_values (line 415) | def store_values(self):
    method get_next_page (line 470) | def get_next_page(self):
    method automatic_radiobutton_toggled (line 474) | def automatic_radiobutton_toggled(self, widget):
    method automatic_lvm_toggled (line 485) | def automatic_lvm_toggled(self, widget):
    method automatic_zfs_toggled (line 494) | def automatic_zfs_toggled(self, widget):
    method alongside_radiobutton_toggled (line 505) | def alongside_radiobutton_toggled(self, widget):
    method advanced_radiobutton_toggled (line 511) | def advanced_radiobutton_toggled(self, widget):

FILE: src/pages/automatic.py
  function _ (line 56) | def _(message):
  class InstallationAutomatic (line 60) | class InstallationAutomatic(GtkBaseBox):
    method __init__ (line 63) | def __init__(self, params, prev_page="installation_ask", next_page="us...
    method translate_ui (line 85) | def translate_ui(self):
    method show_password_toggled (line 120) | def show_password_toggled(self, _widget):
    method populate_devices (line 127) | def populate_devices(self):
    method select_drive_changed (line 137) | def select_drive_changed(self, _widget):
    method prepare (line 144) | def prepare(self, direction):
    method store_values (line 156) | def store_values(self):
    method luks_password_changed (line 167) | def luks_password_changed(self, _widget):
    method fill_bootloader_entry (line 189) | def fill_bootloader_entry(self):
    method bootloader_device_check_toggled (line 193) | def bootloader_device_check_toggled(self, checkbox):
    method bootloader_device_entry_changed (line 199) | def bootloader_device_entry_changed(self, _widget):
    method bootloader_entry_changed (line 203) | def bootloader_entry_changed(self, _widget):
    method get_changes (line 207) | def get_changes(self):
    method run_format (line 239) | def run_format(self):
    method run_install (line 263) | def run_install(self, packages, metalinks):

FILE: src/pages/cache.py
  class Cache (line 49) | class Cache(GtkBaseBox):
    method __init__ (line 54) | def __init__(self, params, prev_page="features", next_page="mirrors"):
    method translate_ui (line 64) | def translate_ui(self):
    method populate_devices_and_partitions (line 94) | def populate_devices_and_partitions(self):
    method select_part_changed (line 106) | def select_part_changed(self, _widget):
    method prepare (line 113) | def prepare(self, direction):
    method prepare_whole_device (line 120) | def prepare_whole_device(self, device_path):
    method umount_cache (line 148) | def umount_cache():
    method mount_cache (line 164) | def mount_cache(self, device_path, partition_path):
    method mount_partition (line 192) | def mount_partition(path, mount_dir):
    method store_values (line 210) | def store_values(self):
  function _ (line 231) | def _(message):

FILE: src/pages/check.py
  function _ (line 57) | def _(message):
  class Check (line 61) | class Check(GtkBaseBox):
    method __init__ (line 68) | def __init__(self, params, prev_page="language", next_page="location"):
    method translate_ui (line 92) | def translate_ui(self):
    method on_timer (line 136) | def on_timer(self):
    method store_values (line 148) | def store_values(self):
    method go_back (line 162) | def go_back(self):
    method check_partitioning_completion (line 166) | def check_partitioning_completion(self):
    method prepare (line 176) | def prepare(self, direction):
  class CheckProcess (line 195) | class CheckProcess(multiprocessing.Process):
    method __init__ (line 198) | def __init__(self, results, settings):
    method run (line 204) | def run(self):
    method check_all (line 209) | def check_all(self):
    method on_battery (line 234) | def on_battery(self):
    method has_battery (line 249) | def has_battery(self):
    method has_enough_space (line 264) | def has_enough_space():
    method is_updated (line 281) | def is_updated(self):
    method compare_versions (line 291) | def compare_versions(remote, local):
    method get_cnchi_version_in_repo (line 297) | def get_cnchi_version_in_repo():

FILE: src/pages/desktop.py
  class DesktopAsk (line 45) | class DesktopAsk(GtkBaseBox):
    method __init__ (line 48) | def __init__(self, params, prev_page="keymap", next_page="features"):
    method translate_ui (line 71) | def translate_ui(self, desktop, set_header=True):
    method prepare (line 136) | def prepare(self, direction):
    method set_desktop_list (line 141) | def set_desktop_list(self):
    method listbox_sort_by_name (line 176) | def listbox_sort_by_name(row1, row2, _user_data):
    method select_default_row (line 198) | def select_default_row(self, desktop_name):
    method set_desktop (line 209) | def set_desktop(self, desktop):
    method on_listbox_row_selected (line 217) | def on_listbox_row_selected(self, _listbox, listbox_row):
    method store_values (line 227) | def store_values(self):
    method scroll_to_cell (line 236) | def scroll_to_cell(treeview, path):
  function _ (line 246) | def _(message):

FILE: src/pages/dialogs/changelist.py
  function _ (line 42) | def _(message):
  class ChangeListDialog (line 45) | class ChangeListDialog(Gtk.Dialog):
    method __init__ (line 50) | def __init__(self, gui_dir, transient_for=None):
    method translate_ui (line 66) | def translate_ui(self):

FILE: src/pages/dialogs/create_partition.py
  function _ (line 41) | def _(message):
  class CreatePartitionDialog (line 44) | class CreatePartitionDialog(PartitionBaseDialog):
    method __init__ (line 50) | def __init__(self, gui_dir, transient_for=None):
    method get_partition_size (line 57) | def get_partition_size(self):
    method wants_primary (line 63) | def wants_primary(self):
    method wants_logical (line 67) | def wants_logical(self):
    method wants_extended (line 71) | def wants_extended(self):
    method prepare_radiobuttons (line 75) | def prepare_radiobuttons(self, params):
    method prepare_size_spin (line 113) | def prepare_size_spin(self, max_size_mb):
    method prepare (line 123) | def prepare(self, params):

FILE: src/pages/dialogs/create_table.py
  function _ (line 44) | def _(message):
  class CreateTableDialog (line 47) | class CreateTableDialog(Gtk.Dialog):
    method __init__ (line 54) | def __init__(self, gui_dir, transient_for=None):
    method get_table_type (line 76) | def get_table_type(self):
    method prepare (line 86) | def prepare(self):

FILE: src/pages/dialogs/edit_partition.py
  function _ (line 37) | def _(message):
  class EditPartitionDialog (line 40) | class EditPartitionDialog(PartitionBaseDialog):
    method __init__ (line 46) | def __init__(self, gui_dir, transient_for=None):
    method wants_format (line 54) | def wants_format(self):
    method prepare (line 59) | def prepare(self):
    method set_partition_info (line 66) | def set_partition_info(self, partition_info):
    method set_filesystem (line 75) | def set_filesystem(self, filesystem):
    method set_mount_point (line 89) | def set_mount_point(self, mount_point):
    method set_label (line 94) | def set_label(self, label):
    method set_format (line 99) | def set_format(self, format_active, format_sensitive):

FILE: src/pages/dialogs/luks_settings.py
  function _ (line 46) | def _(message):
  class LuksSettingsDialog (line 49) | class LuksSettingsDialog(Gtk.Dialog):
    method __init__ (line 54) | def __init__(self, gui_dir, transient_for=None):
    method maybe_show_warning_message (line 79) | def maybe_show_warning_message(self):
    method prepare (line 87) | def prepare(self, options):
    method translate_ui (line 123) | def translate_ui(self):
    method get_use_luks (line 139) | def get_use_luks(self):
    method get_vol_name (line 144) | def get_vol_name(self):
    method get_password (line 149) | def get_password(self):
    method get_password_confirm (line 154) | def get_password_confirm(self):
    method use_luks_switch_activated (line 159) | def use_luks_switch_activated(self, widget, _data):
    method enable_widgets (line 163) | def enable_widgets(self, status):
    method get_options (line 184) | def get_options(self):
    method hide_password_info (line 211) | def hide_password_info(self):
    method password_changed (line 217) | def password_changed(self, _widget=None):

FILE: src/pages/dialogs/partition_base.py
  function _ (line 47) | def _(message):
  class PartitionBaseDialog (line 50) | class PartitionBaseDialog(Gtk.Dialog):
    method __init__ (line 53) | def __init__(self, child, gui_info, transient_for):
    method add_stock_buttons (line 80) | def add_stock_buttons(self):
    method get_beginning_point (line 101) | def get_beginning_point(self):
    method get_label (line 106) | def get_label(self):
    method get_mount_point (line 123) | def get_mount_point(self):
    method get_filesystem (line 130) | def get_filesystem(self):
    method create_type_extended_toggled (line 140) | def create_type_extended_toggled(self, widget):
    method luks_settings_clicked (line 159) | def luks_settings_clicked(self, _widget):
    method use_combo_changed (line 179) | def use_combo_changed(self, selection):
    method prepare (line 193) | def prepare(self):
    method translate_ui (line 222) | def translate_ui(self):

FILE: src/pages/features.py
  class Graphics (line 56) | class Graphics():
    method nvidia (line 60) | def nvidia():
    method amd (line 68) | def amd():
    method i915 (line 76) | def i915():
    method bumblebee (line 80) | def bumblebee(self):
  class Features (line 85) | class Features(GtkBaseBox):
    method __init__ (line 93) | def __init__(self, params, prev_page="desktop", next_page="cache"):
    method show_advanced_toggled (line 125) | def show_advanced_toggled(self, _widget):
    method on_listbox_row_selected (line 131) | def on_listbox_row_selected(_listbox, listbox_row):
    method add_feature_icon (line 140) | def add_feature_icon(self, feature, box):
    method add_feature_label (line 155) | def add_feature_label(self, feature, box):
    method on_switch_activated (line 176) | def on_switch_activated(self, switch, _gparam):
    method extra_switch_actions (line 186) | def extra_switch_actions(self, feature, is_active):
    method add_feature_switch (line 217) | def add_feature_switch(self, feature, box):
    method fill_listbox (line 229) | def fill_listbox(self):
    method update_advanced_features (line 262) | def update_advanced_features(self):
    method listbox_sort_by_name (line 278) | def listbox_sort_by_name(row1, row2, _user_data):
    method set_row_text (line 302) | def set_row_text(self, feature, title, desc, tooltip):
    method translate_ui (line 313) | def translate_ui(self):
    method switch_defaults_on (line 331) | def switch_defaults_on(self):
    method show_disclaimer_messages (line 368) | def show_disclaimer_messages(self):
    method show_info_dialog (line 380) | def show_info_dialog(self, feature):
    method ask_nginx (line 412) | def ask_nginx(self):
    method ask_lembrame (line 432) | def ask_lembrame(self):
    method store_switches (line 449) | def store_switches(self):
    method store_values (line 458) | def store_values(self):
    method prepare (line 470) | def prepare(self, direction):
    method load_values (line 489) | def load_values(self):
  function _ (line 502) | def _(message):

FILE: src/pages/gtkbasebox.py
  class GtkBaseBox (line 39) | class GtkBaseBox(Gtk.Box):
    method __init__ (line 42) | def __init__(self, child, params, name, prev_page, next_page):
    method get_prev_page (line 71) | def get_prev_page(self):
    method get_next_page (line 75) | def get_next_page(self):
    method translate_ui (line 79) | def translate_ui(self):
    method prepare (line 83) | def prepare(self, direction):
    method store_values (line 87) | def store_values(self):
    method go_back (line 91) | def go_back(self):
    method get_name (line 95) | def get_name(self):
    method get_ancestor_window (line 99) | def get_ancestor_window(self):
    method get_toplevel_window (line 103) | def get_toplevel_window(self):
    method get_main_window (line 111) | def get_main_window(self):

FILE: src/pages/keymap.py
  class Keymap (line 45) | class Keymap(GtkBaseBox):
    method __init__ (line 48) | def __init__(self, params, prev_page="timezone", next_page="desktop"):
    method clear (line 76) | def clear(self):
    method translate_ui (line 85) | def translate_ui(self):
    method prepare (line 101) | def prepare(self, direction):
    method populate_keymap_treeview (line 152) | def populate_keymap_treeview(self):
    method select_in_treeview (line 169) | def select_in_treeview(self, treeview, value0, value1=None):
    method scroll_to_cell (line 209) | def scroll_to_cell(treeview, path):
    method get_selected_in_treeview (line 215) | def get_selected_in_treeview(treeview):
    method on_keymap_row_activated (line 231) | def on_keymap_row_activated(self, _treeview, _iterator, _path):
    method store_values (line 237) | def store_values(self):
    method set_keymap (line 279) | def set_keymap(self):
    method set_keyboard_widget_keymap (line 308) | def set_keyboard_widget_keymap(self):
  function _ (line 319) | def _(message):

FILE: src/pages/language.py
  function _ (line 56) | def _(message):
  class Language (line 60) | class Language(GtkBaseBox):
    method __init__ (line 62) | def __init__(self, params, prev_page="welcome", next_page="check"):
    method get_lang (line 88) | def get_lang():
    method get_locale (line 93) | def get_locale():
    method on_listbox_row_selected (line 101) | def on_listbox_row_selected(self, _listbox, listbox_row):
    method translate_ui (line 113) | def translate_ui(self):
    method langcode_to_lang (line 140) | def langcode_to_lang(self, display_map):
    method set_languages_list (line 150) | def set_languages_list(self):
    method set_language (line 170) | def set_language(self, locale_code):
    method select_default_row (line 194) | def select_default_row(self, language):
    method store_values (line 203) | def store_values(self):
    method prepare (line 223) | def prepare(self, direction):
    method on_setup_proxy (line 234) | def on_setup_proxy(self, _widget, _data=None):

FILE: src/pages/location.py
  class Location (line 49) | class Location(GtkBaseBox):
    method __init__ (line 51) | def __init__(self, params, prev_page="check", next_page="timezone"):
    method all_locations_toggled (line 78) | def all_locations_toggled(self, button, _name):
    method translate_ui (line 85) | def translate_ui(self):
    method select_first_listbox_item (line 109) | def select_first_listbox_item(self):
    method select_detected_country (line 114) | def select_detected_country(self):
    method hide_all (line 135) | def hide_all(self):
    method prepare (line 146) | def prepare(self, direction):
    method load_locales (line 159) | def load_locales(self):
    method get_areas (line 207) | def get_areas(self):
    method fill_listbox (line 230) | def fill_listbox(self):
    method on_listbox_row_selected (line 245) | def on_listbox_row_selected(self, _listbox, listbox_row):
    method set_locale (line 252) | def set_locale(self, mylocale):
    method store_values (line 292) | def store_values(self):
    method get_and_save_install_id (line 320) | def get_and_save_install_id():
  function _ (line 330) | def _(message):

FILE: src/pages/mirrors.py
  function _ (line 58) | def _(message):
  class MirrorListBoxRow (line 62) | class MirrorListBoxRow(Gtk.ListBoxRow):
    method __init__ (line 64) | def __init__(self, url, active, switch_cb, drag_cbs):
    method is_active (line 119) | def is_active(self):
  class MirrorListBox (line 124) | class MirrorListBox(Gtk.ListBox):
    method __init__ (line 134) | def __init__(self, mirrors_file_path, settings):
    method uncommented_mirrors_first (line 151) | def uncommented_mirrors_first(mirrors):
    method load_mirrors (line 162) | def load_mirrors(self):
    method fillme (line 205) | def fillme(self):
    method set_mirror_active (line 222) | def set_mirror_active(self, url, active):
    method get_active_mirrors (line 229) | def get_active_mirrors(self):
    method switch_activated (line 237) | def switch_activated(self, switch, _gparam):
    method drag_begin (line 244) | def drag_begin(self, widget, drag_context):
    method drag_data_get (line 264) | def drag_data_get(self, widget, _drag_context, selection_data, _info, ...
    method drag_data_received (line 273) | def drag_data_received(
    method trim_mirror_url (line 289) | def trim_mirror_url(server_line):
    method save_changes (line 303) | def save_changes(self, use_rankmirrors=False):
  class Mirrors (line 334) | class Mirrors(GtkBaseBox):
    method __init__ (line 341) | def __init__(self, params, prev_page="cache", next_page="installation_...
    method switch_activated (line 367) | def switch_activated(self, _widget):
    method check_active_mirrors (line 372) | def check_active_mirrors(self):
    method rank_radiobutton_toggled (line 380) | def rank_radiobutton_toggled(self, _widget):
    method leave_radiobutton_toggled (line 388) | def leave_radiobutton_toggled(self, _widget):
    method user_radiobutton_toggled (line 396) | def user_radiobutton_toggled(self, _widget):
    method start_rank_mirrors (line 404) | def start_rank_mirrors(self):
    method prepare (line 421) | def prepare(self, direction):
    method translate_ui (line 429) | def translate_ui(self):
    method store_values (line 468) | def store_values(self):
    method get_next_page (line 477) | def get_next_page(self):

FILE: src/pages/slides.py
  function _ (line 54) | def _(message):
  class Slides (line 57) | class Slides(GtkBaseBox):
    method __init__ (line 66) | def __init__(self, params, prev_page=None, next_page=None):
    method translate_ui (line 90) | def translate_ui(self):
    method prepare (line 97) | def prepare(self, direction):
    method reveal_next_slide (line 118) | def reveal_next_slide(self):
    method image_revealed (line 141) | def image_revealed(self, revealer, _revealed):
    method hide_slide (line 151) | def hide_slide(self):
    method store_values (line 158) | def store_values():
    method stop_pulse (line 162) | def stop_pulse(self):
    method start_pulse (line 168) | def start_pulse(self):
    method manage_events_from_cb_queue (line 187) | def manage_events_from_cb_queue(self):
    method empty_queue (line 256) | def empty_queue(self):
    method reboot (line 266) | def reboot():
    method check_bootloader (line 277) | def check_bootloader(self):
    method installation_finished (line 300) | def installation_finished(self):
    method install_error (line 331) | def install_error(self, error):

FILE: src/pages/summary.py
  function _ (line 53) | def _(message):
  class Summary (line 64) | class Summary(GtkBaseBox):
    method __init__ (line 67) | def __init__(self, params, prev_page="user_info", next_page="slides"):
    method translate_ui (line 84) | def translate_ui(self):
    method get_install_screen (line 161) | def get_install_screen(self):
    method prepare (line 174) | def prepare(self, direction):
    method store_values (line 190) | def store_values(self):
    method create_wait_window (line 212) | def create_wait_window(self):
    method wait_rankmirrors (line 246) | def wait_rankmirrors(self):

FILE: src/pages/timezone.py
  function _ (line 52) | def _(message):
  class Timezone (line 56) | class Timezone(GtkBaseBox):
    method __init__ (line 59) | def __init__(self, params, prev_page="location", next_page="keymap"):
    method translate_ui (line 92) | def translate_ui(self):
    method on_location_changed (line 108) | def on_location_changed(self, _tzmap, tz_location):
    method update_comboboxes (line 120) | def update_comboboxes(self, timezone):
    method select_combobox_item (line 128) | def select_combobox_item(combobox, item):
    method set_timezone (line 141) | def set_timezone(self, timezone):
    method on_zone_combobox_changed (line 149) | def on_zone_combobox_changed(self, _widget):
    method on_region_combobox_changed (line 155) | def on_region_combobox_changed(self, _widget):
    method populate_zones (line 165) | def populate_zones(self):
    method populate_cities (line 178) | def populate_cities(self, selected_zone):
    method prepare (line 193) | def prepare(self, direction):
    method start_auto_timezone_process (line 223) | def start_auto_timezone_process(self):
    method log_location (line 231) | def log_location(loc):
    method store_values (line 247) | def store_values(self):
    method on_switch_ntp_activate (line 286) | def on_switch_ntp_activate(self, ntp_switch, _data):
  class AutoTimezoneProcess (line 291) | class AutoTimezoneProcess(multiprocessing.Process):
    method __init__ (line 294) | def __init__(self, coords_queue, settings):
    method run (line 299) | def run(self):
    method use_geoip (line 325) | def use_geoip():
    method maybe_wait_for_network (line 334) | def maybe_wait_for_network():
    method use_geo_antergos (line 344) | def use_geo_antergos(self):

FILE: src/pages/user_info.py
  function _ (line 52) | def _(message):
  class UserInfo (line 56) | class UserInfo(GtkBaseBox):
    method __init__ (line 67) | def __init__(self, params, prev_page=None, next_page="summary"):
    method load_widgets (line 115) | def load_widgets(self):
    method set_avatar (line 153) | def set_avatar(self, avatar):
    method avatar_clicked (line 182) | def avatar_clicked(self, _widget, _button):
    method translate_ui (line 193) | def translate_ui(self):
    method hide_widgets (line 243) | def hide_widgets(self):
    method store_values (line 265) | def store_values(self):
    method prepare (line 289) | def prepare(self, direction):
    method show_password_toggled (line 315) | def show_password_toggled(self, _widget):
    method authentication_toggled (line 322) | def authentication_toggled(self, widget):
    method validate (line 330) | def validate(self, element, value):
    method set_icon_and_label (line 341) | def set_icon_and_label(self, element, label_text=""):
    method format_validation_error (line 364) | def format_validation_error(validation_error):
    method validate_all (line 377) | def validate_all(self):
    method info_loop (line 386) | def info_loop(self, widget=None):
    method validate_password (line 409) | def validate_password(self):
    method get_prev_page (line 415) | def get_prev_page(self):

FILE: src/pages/welcome.py
  function _ (line 47) | def _(message):
  class Welcome (line 51) | class Welcome(GtkBaseBox):
    method __init__ (line 54) | def __init__(self, params, prev_page=None, next_page="language"):
    method translate_ui (line 101) | def translate_ui(self):
    method quit_cnchi (line 126) | def quit_cnchi(self):
    method on_tryit_button_clicked (line 134) | def on_tryit_button_clicked(self, _widget, _data=None):
    method on_graph_button_clicked (line 138) | def on_graph_button_clicked(self, _widget, _data=None):
    method show_loading_message (line 146) | def show_loading_message(self, do_show=True):
    method store_values (line 157) | def store_values(self):
    method prepare (line 162) | def prepare(self, direction):

FILE: src/pages/wireless.py
  class Wireless (line 34) | class Wireless(GtkBaseBox):
    method __init__ (line 36) | def __init__(self, params, prev_page="check", next_page="desktop"):
    method translate_ui (line 65) | def translate_ui(self):
    method selection_changed (line 81) | def selection_changed(self, _unused):
    method wireless_toggled (line 97) | def wireless_toggled(self, _unused):
    method state_changed (line 133) | def state_changed(self, _unused, state):
    method pw_validated (line 150) | def pw_validated(self, _unused, _validated):
    method prepare (line 155) | def prepare(self, direction):
    method store_values (line 165) | def store_values():
  function _ (line 174) | def _(message):

FILE: src/pages/zfs.py
  function _ (line 46) | def _(message):
  function is_int (line 53) | def is_int(num):
  class InstallationZFS (line 58) | class InstallationZFS(GtkBaseBox):
    method __init__ (line 65) | def __init__(
    method use_device_toggled (line 114) | def use_device_toggled(self, _widget, _path):
    method fill_bootloader_entry (line 118) | def fill_bootloader_entry(self):
    method on_bootloader_entry_changed (line 139) | def on_bootloader_entry_changed(self, _widget):
    method fill_text_combobox (line 145) | def fill_text_combobox(self, object_name, text, zfs_option):
    method translate_ui (line 156) | def translate_ui(self):
    method check_pool_type (line 220) | def check_pool_type(self, show_warning=False):
    method on_pool_type_help_btn_clicked (line 276) | def on_pool_type_help_btn_clicked(self, _widget):
    method show_pool_type_help (line 284) | def show_pool_type_help(self, pool_type):
    method on_force_4k_help_btn_clicked (line 312) | def on_force_4k_help_btn_clicked(self, _widget):
    method on_encrypt_swap_btn_toggled (line 325) | def on_encrypt_swap_btn_toggled(self, _widget):
    method on_encrypt_disk_btn_toggled (line 329) | def on_encrypt_disk_btn_toggled(self, widget):
    method on_pool_name_btn_toggled (line 343) | def on_pool_name_btn_toggled(self, _widget):
    method on_force_4k_btn_toggled (line 350) | def on_force_4k_btn_toggled(self, _widget):
    method partition_scheme_changed (line 354) | def partition_scheme_changed(self, widget):
    method pool_type_combo_changed (line 361) | def pool_type_combo_changed(self, widget):
    method prepare (line 369) | def prepare(self, direction):
    method store_values (line 379) | def store_values(self):
    method append_change (line 408) | def append_change(self, action_type, device, info=""):
    method get_changes (line 422) | def get_changes(self):
    method create_efi_partition (line 483) | def create_efi_partition(self, device_path, part_num, mount_point):
    method create_boot_partition (line 496) | def create_boot_partition(self, device_path, part_num):
    method run_format_gpt (line 504) | def run_format_gpt(self, device_path):
    method run_format (line 525) | def run_format(self):
    method run_install (line 583) | def run_install(self, packages, metalinks):

FILE: src/pages/zfs_manager.py
  function _ (line 39) | def _(message):
  function init_device (line 55) | def init_device(device_path, scheme="GPT"):
  function get_pool_size (line 92) | def get_pool_size(pool_name):
  function get_home_size (line 118) | def get_home_size(pool_name):
  function get_swap_size (line 133) | def get_swap_size(pool_name):
  function set_mountpoint (line 172) | def set_mountpoint(zvol, mount_point):
  function clear_dest_dir (line 190) | def clear_dest_dir():
  function load_existing_pools (line 212) | def load_existing_pools():
  function destroy_pools (line 234) | def destroy_pools():
  function get_pool_id (line 247) | def get_pool_id(pool_name, include_offline=False):
  function pool_name_is_valid (line 259) | def pool_name_is_valid(name):
  function settle (line 272) | def settle():
  function create_pool (line 278) | def create_pool(pool_name, pool_type, device_paths, force_4k):
  function create_swap (line 331) | def create_swap(pool_name, vol_name):
  function create_vol (line 346) | def create_vol(pool_name, vol_name, swap_size=None):
  function get_partition_path (line 376) | def get_partition_path(device, part_num):
  function setup (line 390) | def setup(solaris_partition_number, zfs_options, use_home):

FILE: src/parted3/fs_module.py
  function _ (line 49) | def _(message):
  function get_uuid (line 52) | def get_uuid(part):
  function get_label (line 61) | def get_label(part):
  function get_info (line 72) | def get_info(part):
  function get_type (line 95) | def get_type(part):
  function get_pknames (line 108) | def get_pknames():
  function label_fs (line 138) | def label_fs(fstype, part, label):
  function create_fs (line 174) | def create_fs(part, fstype, label='', options=''):
  function is_ssd (line 254) | def is_ssd(disk_path):
  function resize (line 276) | def resize(part, fs_type, new_size_in_mb):
  function resize_ntfs (line 295) | def resize_ntfs(part, new_size_in_mb):
  function resize_fat (line 313) | def resize_fat(_part, _new_size_in_mb):
  function resize_ext (line 321) | def resize_ext(part, new_size_in_mb):

FILE: src/parted3/lvm.py
  function _ (line 43) | def _(message):
  function get_lvm_partitions (line 47) | def get_lvm_partitions():
  function get_volume_groups (line 64) | def get_volume_groups():
  function get_logical_volumes (line 75) | def get_logical_volumes(volume_group):
  function remove_logical_volume (line 88) | def remove_logical_volume(logical_volume):
  function remove_volume_group (line 101) | def remove_volume_group(volume_group):
  function remove_physical_volume (line 120) | def remove_physical_volume(physical_volume):

FILE: src/parted3/partition_module.py
  function _ (line 79) | def _(message):
  function get_devices (line 84) | def get_devices():
  function make_new_disk (line 140) | def make_new_disk(dev_path, new_type):
  function get_partitions (line 148) | def get_partitions(diskob):
  function delete_partition (line 200) | def delete_partition(diskob, part):
  function get_partition_size (line 211) | def get_partition_size(diskob, part):
  function get_size_txt (line 221) | def get_size_txt(length, sector_size):
  function create_partition (line 238) | def create_partition(diskob, part_type, geom):
  function geom_builder (line 272) | def geom_builder(diskob, first_sector, last_sector, size_in_mbytes,
  function check_mounted (line 307) | def check_mounted(part):
  function get_used_space (line 315) | def get_used_space(part):
  function get_used_space_from_path (line 320) | def get_used_space_from_path(path):
  function get_largest_size (line 338) | def get_largest_size(diskob, part):
  function set_flag (line 351) | def set_flag(flagno, part):
  function unset_flag (line 361) | def unset_flag(flagno, part):
  function get_flags (line 371) | def get_flags(part):
  function get_flag (line 376) | def get_flag(part, flag):
  function finalize_changes (line 382) | def finalize_changes(diskob):
  function order_partitions (line 391) | def order_partitions(partdic):
  function split_partition (line 406) | def split_partition(device_path, partition_path, new_size_in_mb):
  function example (line 454) | def example():

FILE: src/parted3/populate_devices.py
  function populate_devices (line 37) | def populate_devices(do_partitions=False, min_size_gb=0):
  function populate_partitions (line 74) | def populate_partitions(dev, min_size_gb=0):

FILE: src/parted3/used_space.py
  function _ (line 42) | def _(message):
  function get_used_ntfs (line 47) | def get_used_ntfs(part):
  function get_used_ext (line 73) | def get_used_ext(part):
  function get_used_fat (line 99) | def get_used_fat(part):
  function get_used_jfs (line 135) | def get_used_jfs(part):
  function get_used_reiser (line 162) | def get_used_reiser(part):
  function get_used_btrfs (line 192) | def get_used_btrfs(part, show_error=True):
  function get_used_xfs (line 234) | def get_used_xfs(part):
  function get_used_f2fs (line 262) | def get_used_f2fs(part):
  function is_btrfs (line 269) | def is_btrfs(part):
  function get_used_space (line 278) | def get_used_space(part, part_type):

FILE: src/proxy.py
  function _ (line 43) | def _(message):
  class ProxyDialog (line 47) | class ProxyDialog(Gtk.Dialog):
    method __init__ (line 50) | def __init__(self, transient_for, proxies, use_same_proxy, gui_dir):
    method use_same_proxy_activated (line 82) | def use_same_proxy_activated(self, switch, _data):
    method setup_port_spin_buttons (line 98) | def setup_port_spin_buttons(self):
    method translate_ui (line 112) | def translate_ui(self):
    method set_proxies (line 135) | def set_proxies(self, proxies):
    method use_same_proxy (line 158) | def use_same_proxy(self):
    method get_proxies (line 163) | def get_proxies(self):

FILE: src/rank_mirrors.py
  function _ (line 54) | def _(message):
  class RankMirrors (line 57) | class RankMirrors(multiprocessing.Process):
    method __init__ (line 80) | def __init__(self, fraction_pipe, settings):
    method is_good_mirror (line 92) | def is_good_mirror(mirror):
    method get_mirror_stats (line 104) | def get_mirror_stats(self):
    method get_antergos_mirror_url (line 146) | def get_antergos_mirror_url(mirror_url):
    method get_package_version (line 159) | def get_package_version(name):
    method sort_mirrors_by_speed (line 172) | def sort_mirrors_by_speed(self, mirrors=None, max_threads=8):
    method uncomment_mirrors (line 303) | def uncomment_mirrors():
    method filter_and_sort_mirrorlists (line 336) | def filter_and_sort_mirrorlists(self):
    method run (line 363) | def run(self):
    method update_mirrorlists (line 390) | def update_mirrorlists():
  function test_module (line 405) | def test_module():

FILE: src/show_message.py
  function _ (line 45) | def _(msg):
  function fatal_error (line 49) | def fatal_error(parent, my_message):
  function error (line 63) | def error(parent, my_message):
  function warning (line 81) | def warning(parent, my_message):
  function message (line 99) | def message(parent, my_message):
  function question (line 117) | def question(parent, my_message):

FILE: src/test_page.py
  function get_page (line 52) | def get_page(page_name, params):
  function run (line 117) | def run(page_name):

FILE: src/update_db.py
  function sync (line 38) | def sync():
  function update_mirrorlists (line 47) | def update_mirrorlists():
  function test (line 78) | def test():

FILE: src/widgets/keyboard_widget.py
  function unicode_to_string (line 46) | def unicode_to_string(raw):
  class KeyboardWidget (line 55) | class KeyboardWidget(Gtk.DrawingArea):
    method __init__ (line 89) | def __init__(self):
    method set_layout (line 104) | def set_layout(self, layout):
    method set_font (line 108) | def set_font(self):
    method set_variant (line 148) | def set_variant(self, variant):
    method load_info (line 157) | def load_info(self):
    method rounded_rectangle (line 168) | def rounded_rectangle(context, start_x, start_y, width, height, aspect...
    method draw_ext_return (line 192) | def draw_ext_return(context, point1, width1, point2, rect_x, key_width):
    method draw_row (line 229) | def draw_row(self, context, row, start_x, start_y, max_width, key_widt...
    method do_draw (line 278) | def do_draw(self, context):
    method regular_text (line 363) | def regular_text(self, index):
    method shift_text (line 370) | def shift_text(self, index):
    method ctrl_text (line 377) | def ctrl_text(self, index):
    method alt_text (line 384) | def alt_text(self, index):
    method load_codes (line 391) | def load_codes(self):

FILE: src/widgets/partition_treeview.py
  function _ (line 39) | def _(message):
  class PartitionTreeview (line 43) | class PartitionTreeview(Gtk.TreeView):
    method __init__ (line 65) | def __init__(self):
    method prepare (line 73) | def prepare(self):
    method connect_format_cell (line 129) | def connect_format_cell(self, callback):
    method connect_ssd_cell (line 133) | def connect_ssd_cell(self, callback):
    method format_cell_toggled (line 137) | def format_cell_toggled(self, _widget, path):
    method ssd_cell_toggled (line 142) | def ssd_cell_toggled(self, _widget, path):
    method append (line 147) | def append(self, parent, row):
    method create_store (line 151) | def create_store(self):
    method load_model (line 161) | def load_model(self):

FILE: src/widgets/timezonemap.py
  class TimezoneMap (line 57) | class TimezoneMap(Gtk.Widget):
    method __init__ (line 92) | def __init__(self):
    method load_olsen_map_timezones (line 132) | def load_olsen_map_timezones(self):
    method do_get_preferred_width (line 144) | def do_get_preferred_width(self):
    method do_get_preferred_height (line 155) | def do_get_preferred_height(self):
    method do_size_allocate (line 166) | def do_size_allocate(self, allocation):
    method do_realize (line 205) | def do_realize(self):
    method draw_text_bubble (line 235) | def draw_text_bubble(self, context, pointx, pointy):
    method do_draw (line 295) | def do_draw(self, context):
    method set_location (line 359) | def set_location(self, tz_location):
    method get_loc_for_xy (line 382) | def get_loc_for_xy(self, my_x, my_y):
    method do_button_press_event (line 433) | def do_button_press_event(self, event):
    method set_timezone (line 449) | def set_timezone(self, time_zone):
    method set_bubble_text (line 473) | def set_bubble_text(self, location):
    method get_location (line 487) | def get_location(self):
    method get_timezone_at_coords (line 491) | def get_timezone_at_coords(self, latitude, longitude):
    method convert_longitude_to_x (line 523) | def convert_longitude_to_x(longitude, map_width):
    method convert_latitude_to_y (line 529) | def convert_latitude_to_y(latitude, map_height):
    method clamp (line 549) | def clamp(x_value, min_value, max_value):
  function test_module (line 560) | def test_module():

FILE: src/widgets/webcam_widget.py
  class WebcamWidget (line 44) | class WebcamWidget(Gtk.DrawingArea):
    method __init__ (line 48) | def __init__(self, width=160, height=90):
    method create_video_pipeline (line 72) | def create_video_pipeline(self, width, height):
    method show_all (line 109) | def show_all(self):
    method on_destroy (line 118) | def on_destroy(self, _data):
    method on_sync_message (line 125) | def on_sync_message(self, _bus, msg):
    method on_error (line 132) | def on_error(_bus, msg):
    method clicked (line 136) | def clicked(self, _event_box, _event_button):
  function test_module (line 143) | def test_module():

FILE: src/widgets/zfs_treeview.py
  function _ (line 35) | def _(message):
  function is_int (line 50) | def is_int(num):
  class ZFSTreeview (line 55) | class ZFSTreeview(Gtk.TreeView):
    method __init__ (line 68) | def __init__(self, zfs_ui):
    method use_device_toggled (line 81) | def use_device_toggled(self, _widget, path):
    method connect_use_device (line 86) | def connect_use_device(self, callback):
    method prepare_device_list (line 91) | def prepare_device_list(self):
    method fill_device_list (line 132) | def fill_device_list(self):
    method get_ids (line 164) | def get_ids(self):
    method get_num_drives (line 175) | def get_num_drives(self):
    method get_device_paths (line 183) | def get_device_paths(self):

FILE: test/pacman_conf_test.py
  function test (line 30) | def test():

FILE: test/test_hardware_module.py
  function setup_logging (line 40) | def setup_logging():
  function test (line 59) | def test():

FILE: utils/generate_update_info.py
  function get_md5 (line 30) | def get_md5(file_name):
  function get_files (line 39) | def get_files(path):
  function create_update_info (line 61) | def create_update_info():

FILE: utils/parted-partition.py
  class Partition (line 37) | class Partition():
    method __init__ (line 39) | def __init__(self, disk=None, type=None, fs=None, geometry=None, PedPa...
    method __eq__ (line 70) | def __eq__(self, other):
    method __ne__ (line 73) | def __ne__(self, other):
    method __str__ (line 82) | def __str__(self):
    method __writeOnly (line 99) | def __writeOnly(self, property):
    method active (line 104) | def active(self):
    method busy (line 110) | def busy(self):
    method disk (line 115) | def disk(self):
    method path (line 121) | def path(self):
    method name (line 127) | def name(self):
    method number (line 135) | def number(self):
    method getFlag (line 145) | def getFlag(self, flag):
    method setFlag (line 153) | def setFlag(self, flag):
    method unsetFlag (line 160) | def unsetFlag(self, flag):
    method getMaxGeometry (line 167) | def getMaxGeometry(self, constraint):
    method isFlagAvailable (line 173) | def isFlagAvailable(self, flag):
    method nextPartition (line 179) | def nextPartition(self):
    method getSize (line 189) | def getSize(self, unit="MB"):
    method getLength (line 199) | def getLength(self, unit='sectors'):
    method getFlagsAsString (line 206) | def getFlagsAsString(self):
    method getMaxAvailableSize (line 217) | def getMaxAvailableSize(self, unit="MB"):
    method getDeviceNodeName (line 241) | def getDeviceNodeName(self):
    method getPedPartition (line 245) | def getPedPartition(self):

FILE: utils/partedtest.py
  function get_devices (line 26) | def get_devices():
  function get_partitions (line 48) | def get_partitions(diskob):
  function delete_partition (line 92) | def delete_partition(diskob, part):
  function create_partition (line 96) | def create_partition(diskob, part_type, geom):
  function geom_builder (line 120) | def geom_builder(diskob, start_sector, size_in_mbytes):
  function check_mounted (line 129) | def check_mounted(part):
  function get_largest_size (line 136) | def get_largest_size(diskob, part):
  function finalize_changes (line 143) | def finalize_changes(diskob):
  function main (line 146) | def main():

FILE: utils/pygettext.py
  function usage (line 197) | def usage(code, msg=''):
  function make_escapes (line 204) | def make_escapes(pass_nonascii):
  function escape_ascii (line 225) | def escape_ascii(s, encoding):
  function escape_nonascii (line 229) | def escape_nonascii(s, encoding):
  function safe_eval (line 233) | def safe_eval(s):
  function normalize (line 238) | def normalize(s, encoding):
  function containsAny (line 255) | def containsAny(str, set):
  function _visit_pyfiles (line 260) | def _visit_pyfiles(list, dirname, names):
  function _get_modpkg_path (line 276) | def _get_modpkg_path(dotted_name, pathlist=None):
  function getFilesForName (line 314) | def getFilesForName(name):
  class TokenEater (line 344) | class TokenEater:
    method __init__ (line 345) | def __init__(self, options):
    method __call__ (line 354) | def __call__(self, ttype, tstring, stup, etup, line):
    method __waiting (line 361) | def __waiting(self, ttype, tstring, lineno):
    method __suiteseen (line 380) | def __suiteseen(self, ttype, tstring, lineno):
    method __suitedocstring (line 385) | def __suitedocstring(self, ttype, tstring, lineno):
    method __keywordseen (line 394) | def __keywordseen(self, ttype, tstring, lineno):
    method __openseen (line 402) | def __openseen(self, ttype, tstring, lineno):
    method __addentry (line 421) | def __addentry(self, msg, lineno=None, isdocstring=0):
    method set_filename (line 428) | def set_filename(self, filename):
    method write (line 432) | def write(self, fp):
  function main (line 484) | def main():

FILE: utils/pygi-enumerate.py
  function do_recurse (line 5) | def do_recurse(obj, base_name):
  function main (line 30) | def main():

FILE: utils/reindent.py
  function usage (line 44) | def usage(msg=None):
  function errprint (line 49) | def errprint(*args):
  function main (line 56) | def main():
  function check (line 83) | def check(file):
  function _rstrip (line 127) | def _rstrip(line, JUNK='\n \t'):
  class Reindenter (line 140) | class Reindenter:
    method __init__ (line 142) | def __init__(self, f):
    method run (line 163) | def run(self):
    method write (line 232) | def write(self, f):
    method getline (line 236) | def getline(self):
    method tokeneater (line 245) | def tokeneater(self, type, token, (sline, scol), end, line,
  function getlspace (line 284) | def getlspace(line):

FILE: utils/rm_empty_strings_pot.py
  function handle_match (line 36) | def handle_match(match):

FILE: utils/timezonemap_test.py
  function on_timezone_changed (line 5) | def on_timezone_changed(tz_map, timezone):
  function on_destroy (line 8) | def on_destroy(window):
Copy disabled (too large) Download .json
Condensed preview — 449 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (11,736K chars).
[
  {
    "path": ".github/ISSUE_TEMPLATE/bug_report.md",
    "chars": 747,
    "preview": "---\nname: Bug report\nabout: Create a report to help us improve\n\n---\n\n**Describe the bug**\nA clear and concise descriptio"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/feature_request.md",
    "chars": 560,
    "preview": "---\nname: Feature request\nabout: Suggest an idea for this project\n\n---\n\n**Is your feature request related to a problem? "
  },
  {
    "path": ".github/ISSUE_TEMPLATE.md",
    "chars": 361,
    "preview": "### Problem:\n*Replace this line with a brief summary of the problem.*\n\n### Steps To Reproduce:\n1.\n2.\n3.\n\n### Log Files\n-"
  },
  {
    "path": ".github/stale.yaml",
    "chars": 1779,
    "preview": "# Configuration for probot-stale - https://github.com/probot/stale\n\n# Number of days of inactivity before an Issue or Pu"
  },
  {
    "path": ".gitignore",
    "chars": 465,
    "preview": "*.py[cod]\n\n# C extensions\n*.so\n\n# Packages\n*.egg\n*.egg-info\ndist\nbuild\neggs\nparts\nbin\nvar\nsdist\ndevelop-eggs\n.installed."
  },
  {
    "path": ".landscape.yaml",
    "chars": 68,
    "preview": "pylint:\n  disable:\n    - undefined-variable\npython-targets:\n    - 3\n"
  },
  {
    "path": ".tx/config",
    "chars": 3070,
    "preview": "[main]\nhost = https://www.transifex.com\nlang_map = en: en-GB, af_ZA: af-ZA, am_ET: am-ET, ar_AA: ar-AA, ar_AE: ar-AE, ar"
  },
  {
    "path": "AUTHORS",
    "chars": 414,
    "preview": "Cnchi - Antergos Installer\n\nCurrent developers:\n-------------------\nAlexandre Filgueira \"faidoc\" <alexfilgueira.antergos"
  },
  {
    "path": "CHANGES",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "CHANGES-0.12.0-0.14.0",
    "chars": 75105,
    "preview": "[2016-01-30 04:56:26 -0600]  update CHANGES                                                         Dustin Falgout  {f51"
  },
  {
    "path": "COPYING",
    "chars": 35146,
    "preview": "                    GNU GENERAL PUBLIC LICENSE\n                       Version 3, 29 June 2007\n\n Copyright (C) 2007 Free "
  },
  {
    "path": "README.md",
    "chars": 5687,
    "preview": "# Cnchi ![GitHub release](https://img.shields.io/github/release/antergos/cnchi.svg)\n\n**Graphical Installer for Antergos "
  },
  {
    "path": "TODO.md",
    "chars": 99,
    "preview": "# CNCHI (Antergos Installer) TODO LIST\n\nVisit our TODO repository https://github.com/Antergos/TODO\n"
  },
  {
    "path": "TRANSLATORS",
    "chars": 3548,
    "preview": "Thanks to all of those who have helped translate Cnchi, both in the past and\ncurrently. Our translations are currently m"
  },
  {
    "path": "changes-0.15.md",
    "chars": 2275,
    "preview": "# Cnchi 0.15.x (development)\n\n## Changes\n\n- Big code cleanup (PEP8, remove duplicated code, reduce complexity, remove un"
  },
  {
    "path": "cnchi.desktop",
    "chars": 361,
    "preview": "[Desktop Entry]\nName=Install Antergos Linux\nName[pl]=Zainstaluj Antergos Linux\nName[sk]=Inštalovať Antergos Linux\nGeneri"
  },
  {
    "path": "data/.gitattributes",
    "chars": 43,
    "preview": "*.mmdb filter=lfs diff=lfs merge=lfs -text\n"
  },
  {
    "path": "data/GeoLite2-City.mmdb",
    "chars": 133,
    "preview": "version https://git-lfs.github.com/spec/v1\noid sha256:891ea62394d6d915d516d960d3648e0b68ec1d3c54040ec02c193066292faf37\ns"
  },
  {
    "path": "data/base.xml",
    "chars": 261110,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE xkbConfigRegistry SYSTEM \"xkb.dtd\">\n<xkbConfigRegistry version=\"1.1\">\n "
  },
  {
    "path": "data/cnchi.conf",
    "chars": 32,
    "preview": "2580656b5c7be34e4144a3129a95e421"
  },
  {
    "path": "data/console-keymaps.txt",
    "chars": 2045,
    "preview": "ANSI-dvorak\namiga-de\namiga-us\napplkey\natari-de\natari-se\natari-uk-falcon\natari-us\nazerty\nbackspace\nbashkir\nbe-latin1\nbg-c"
  },
  {
    "path": "data/css/bootstrap-theme.css",
    "chars": 26132,
    "preview": "/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://gi"
  },
  {
    "path": "data/css/bootstrap.css",
    "chars": 147430,
    "preview": "/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://gi"
  },
  {
    "path": "data/css/gtk-style.css",
    "chars": 4861,
    "preview": "#main {\n    font-family: 'Open Sans';\n    font-size: 11px;\n}\n\n#location {\n    font-size: 11px;\n}\n\nwindow {\n    border-co"
  },
  {
    "path": "data/css/lightSlider.css",
    "chars": 7049,
    "preview": "/** /!!! core css Should not edit !!!/**/\n\n.lSSlideOuter {\n    overflow: hidden;\n    -webkit-touch-callout: none;\n    -w"
  },
  {
    "path": "data/css/scale.css",
    "chars": 437,
    "preview": "GtkScale#myslider {\n    -GtkRange-slider-width: 60;\n    background-color: grey;\n    font-size: 10px;\n    border-radius: "
  },
  {
    "path": "data/css/slides-style.css",
    "chars": 704,
    "preview": "html, body {\n    background: transparent;\n    width: 100%;\n    height: 100%;\n    margin: 0px;\n    max-height: 324px;\n   "
  },
  {
    "path": "data/firefox.txt",
    "chars": 340,
    "preview": "ach af an ar as ast az be bg bn-bd bn-in br bs ca cs cy da de dsb el en-gb en-us en-za eo es-ar es-cl es-es es-mx et eu "
  },
  {
    "path": "data/hunspell.txt",
    "chars": 190,
    "preview": "de-frami de en en_AU en_CA en_GB en_US es_any es_ar es_bo es_cl es_co es_cr es_cu es_do es_ec es_es es_gt es_hn es_mx es"
  },
  {
    "path": "data/images/avatars/license.txt",
    "chars": 96,
    "preview": "Avatars by jozef89\nWebsite: https://jozef89.deviantart.com\nFree for personal and comercial use\n\n"
  },
  {
    "path": "data/js/bootstrap.js",
    "chars": 68890,
    "preview": "/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under the MIT license"
  },
  {
    "path": "data/js/npm.js",
    "chars": 484,
    "preview": "// This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment.\nrequ"
  },
  {
    "path": "data/keymaps.txt",
    "chars": 2017,
    "preview": "ANSI-dvorak\namiga-de\namiga-us\napplkey\natari-de\natari-se\natari-uk-falcon\natari-us\nazerty\nbackspace\nbashkir\nbe-latin1\nbg-c"
  },
  {
    "path": "data/locale/iso3366-1.xml",
    "chars": 9355,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<iso3366>\n\t<code value=\"AF\">Afghanistan</code>\n\t<code value=\"AX\">Åland Islands</"
  },
  {
    "path": "data/locale/locales.xml",
    "chars": 16156,
    "preview": "<locales>\n\t<language>\n\t\t<language_name>Afar Djibouti (DJ)</language_name>\n\t\t<locale_name>aa_DJ.UTF-8</locale_name>\n\t</la"
  },
  {
    "path": "data/locale/timezones.xml",
    "chars": 32848,
    "preview": "<timezones>\n    <timezone>\n        <timezone_name>Africa/Abidjan</timezone_name>\n    </timezone>\n    <timezone>\n        "
  },
  {
    "path": "data/packages.xml",
    "chars": 36248,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<cnchi>\n    <editions>\n        <edition name=\"common\" description=\"Packages commo"
  },
  {
    "path": "data/pacman.tmpl",
    "chars": 524,
    "preview": "[options]\nArchitecture = auto\nCheckSpace\nSigLevel = Required DatabaseOptional\nLocalFileSigLevel = Optional\n\nRootDir = ${"
  },
  {
    "path": "data/pci/amdgpu.ids",
    "chars": 160,
    "preview": "7300\n6929\n692b\n692f\n6938\n6939\n6900\n6901\n6921\n6938\n6980\n6981\n6985\n6986\n6987\n67e0\n67e1\n67e3\n67e8\n67e9\n67eb\n67ef\n67ff\n67c0\n"
  },
  {
    "path": "data/pci/amdgpu_exp.ids",
    "chars": 665,
    "preview": "6826\n682d\n682f\n6828\n6829\n682c\n6830\n6831\n6835\n6837\n683d\n683f\n6825\n6827\n6800\n6802\n6808\n6809\n6816\n6817\n6818\n6819\n6660\n6663\n"
  },
  {
    "path": "data/pci/ati.ids",
    "chars": 3910,
    "preview": "1304\n1305\n1306\n1307\n1309\n130A\n130B\n130C\n130D\n130E\n130F\n1310\n1311\n1312\n1313\n1315\n1316\n1317\n1318\n131B\n131C\n131D\n3150\n3151\n"
  },
  {
    "path": "data/pci/broadcom_b43.ids",
    "chars": 126,
    "preview": "0576\n4307\n4311\n4312\n4315\n4318\n4319\n4320\n4322\n4324\n432a\n432c\n432d\n4331\n4350\n4353\n4357\n4358\n4359\n43a9\n43aa\na8d6\na8d8\na8db\n"
  },
  {
    "path": "data/pci/broadcom_b43_legacy.ids",
    "chars": 26,
    "preview": "4301\n4306\n4320\n4324\n4325\n\n"
  },
  {
    "path": "data/pci/broadcom_wl.ids",
    "chars": 37,
    "preview": "4311\n04b5\n4727\n1361\n4328\n432b\n43b1\n\n\n"
  },
  {
    "path": "data/pci/catalyst.ids",
    "chars": 985,
    "preview": "665F\n6664\n6667\n6700\n6701\n6702\n6703\n6704\n6705\n6706\n6707\n6708\n6709\n6718\n6719\n671C\n671D\n671F\n6720\n6721\n6722\n6723\n6724\n6725\n"
  },
  {
    "path": "data/pci/nvidia-304xx.ids",
    "chars": 2601,
    "preview": "0040 0041 0042 0043 0044 0045 0046 0047 0048 004e 0090 0091 0092 0093 0095 0098 0099 009d 00c0 00c1 00c2 00c3 00c8 00c9 "
  },
  {
    "path": "data/pci/nvidia-340xx.ids",
    "chars": 2430,
    "preview": "0191 0193 0194 0197 019d 019e 0400 0401 0402 0403 0404 0405 0406 0407 0408 0409 040a 040b 040c 040d 040e 040f 0410 0420 "
  },
  {
    "path": "data/pci/nvidia-390xx.ids",
    "chars": 1850,
    "preview": "06c0 06c4 06ca 06cd 06d1 06d2 06d8 06d9 06da 06dc 06dd 06de 06df 0dc0 0dc4 0dc5 0dc6 0dcd 0dce 0dd1 0dd2 0dd3 0dd6 0dd8 "
  },
  {
    "path": "data/pci/nvidia.ids",
    "chars": 1285,
    "preview": "0fc0 0fc1 0fc2 0fc6 0fc8 0fc9 0fcd 0fce 0fd1 0fd2 0fd3 0fd4 0fd5 0fd8 0fd9 0fdf 0fe0 0fe1 0fe2 0fe3 0fe4 0fe9 0fea 0fec "
  },
  {
    "path": "data/pci.ids",
    "chars": 947560,
    "preview": "#\n#\tList of PCI ID's\n#\n#\tVersion: 2014.10.27\n#\tDate:    2014-10-27 03:15:01\n#\n#\tMaintained by Martin Mares <mj@ucw.cz> a"
  },
  {
    "path": "data/powerpill.json",
    "chars": 927,
    "preview": "{\n  \"aria2\": {\n    \"args\": [\n      \"--allow-overwrite=true\",\n      \"--always-resume=false\",\n      \"--auto-file-renaming="
  },
  {
    "path": "data/slides.html",
    "chars": 4851,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-widt"
  },
  {
    "path": "debian.sh",
    "chars": 807,
    "preview": "#!/usr/bin/bash\n# Install debian dependencies\n\n# Python gobject\nsudo apt -y install python3-gi python3-cairo python3-dbu"
  },
  {
    "path": "dependencies.txt",
    "chars": 363,
    "preview": "gtk3\npython3\npython-cairo\npython-dbus\npython-feedparser\npython-gobject\npython-mako\npython-requests\npython-geoip2\npython-"
  },
  {
    "path": "docs/Makefile",
    "chars": 602,
    "preview": "# Minimal makefile for Sphinx documentation\n#\n\n# You can set these variables from the command line.\nSPHINXOPTS    =\nSPHI"
  },
  {
    "path": "docs/bootinfo.rst",
    "chars": 57,
    "preview": "bootinfo\n========\n\n.. automodule:: bootinfo\n   :members:\n"
  },
  {
    "path": "docs/browser_window.rst",
    "chars": 75,
    "preview": "browser_window\n==============\n\n.. automodule:: browser_window\n   :members:\n"
  },
  {
    "path": "docs/cnchi.rst",
    "chars": 48,
    "preview": "cnchi\n=====\n\n.. automodule:: cnchi\n   :members:\n"
  },
  {
    "path": "docs/conf.py",
    "chars": 6054,
    "preview": "# -*- coding: utf-8 -*-\n#\n# Configuration file for the Sphinx documentation builder.\n#\n# This file does only contain a s"
  },
  {
    "path": "docs/config.rst",
    "chars": 51,
    "preview": "config\n======\n\n.. automodule:: config\n   :members:\n"
  },
  {
    "path": "docs/desktop_info.rst",
    "chars": 69,
    "preview": "desktop_info\n============\n\n.. automodule:: desktop_info\n   :members:\n"
  },
  {
    "path": "docs/download.rst",
    "chars": 153,
    "preview": "download (module)\n=================\n\n.. toctree::\n   :maxdepth: 2\n   :caption: Contents:\n\n   download_download\n   downlo"
  },
  {
    "path": "docs/download_download.rst",
    "chars": 84,
    "preview": "download.download\n=================\n\n.. automodule:: download.download\n   :members:\n"
  },
  {
    "path": "docs/download_metalink.rst",
    "chars": 84,
    "preview": "download.metalink\n=================\n\n.. automodule:: download.metalink\n   :members:\n"
  },
  {
    "path": "docs/download_requests.rst",
    "chars": 111,
    "preview": "download.download_requests\n==========================\n\n.. automodule:: download.download_requests\n   :members:\n"
  },
  {
    "path": "docs/features_info.rst",
    "chars": 72,
    "preview": "features_info\n=============\n\n.. automodule:: features_info\n   :members:\n"
  },
  {
    "path": "docs/geoip.rst",
    "chars": 48,
    "preview": "geoip\n=====\n\n.. automodule:: geoip\n   :members:\n"
  },
  {
    "path": "docs/hardware.rst",
    "chars": 131,
    "preview": "hardware (module)\n=================\n\n.. toctree::\n   :maxdepth: 2\n   :caption: Contents:\n\n   hardware_hardware\n   hardwa"
  },
  {
    "path": "docs/hardware_hardware.rst",
    "chars": 84,
    "preview": "hardware.hardware\n=================\n\n.. automodule:: hardware.hardware\n   :members:\n"
  },
  {
    "path": "docs/hardware_modules.rst",
    "chars": 1234,
    "preview": "hardware.modules\n================\n\n.. automodule:: hardware.modules.amdgpu_exp\n   :members:\n\n.. automodule:: hardware.mo"
  },
  {
    "path": "docs/index.rst",
    "chars": 676,
    "preview": ".. Cnchi documentation master file, created by\n   sphinx-quickstart on Mon Jul  9 14:22:14 2018.\n   You can adapt this f"
  },
  {
    "path": "docs/info.rst",
    "chars": 45,
    "preview": "info\n====\n\n.. automodule:: info\n   :members:\n"
  },
  {
    "path": "docs/installation.rst",
    "chars": 545,
    "preview": "installation (module)\n=====================\n\n.. toctree::\n   :maxdepth: 2\n   :caption: Contents:\n\n   installation_action"
  },
  {
    "path": "docs/installation_action.rst",
    "chars": 90,
    "preview": "installation.action\n===================\n\n.. automodule:: installation.action\n   :members:\n"
  },
  {
    "path": "docs/installation_auto_partition.rst",
    "chars": 114,
    "preview": "installation.auto_partition\n===========================\n\n.. automodule:: installation.auto_partition\n   :members:\n"
  },
  {
    "path": "docs/installation_boot.rst",
    "chars": 225,
    "preview": "installation.boot (module)\n==========================\n\n.. toctree::\n   :maxdepth: 2\n   :caption: Contents:\n\n   installat"
  },
  {
    "path": "docs/installation_boot_grub2.rst",
    "chars": 102,
    "preview": "installation.boot.grub2\n=======================\n\n.. automodule:: installation.boot.grub2\n   :members:\n"
  },
  {
    "path": "docs/installation_boot_loader.rst",
    "chars": 105,
    "preview": "installation.boot.loader\n========================\n\n.. automodule:: installation.boot.loader\n   :members:\n"
  },
  {
    "path": "docs/installation_boot_refind.rst",
    "chars": 105,
    "preview": "installation.boot.refind\n========================\n\n.. automodule:: installation.boot.refind\n   :members:\n"
  },
  {
    "path": "docs/installation_boot_systemd_boot.rst",
    "chars": 123,
    "preview": "installation.boot.systemd_boot\n==============================\n\n.. automodule:: installation.boot.systemd_boot\n   :member"
  },
  {
    "path": "docs/installation_firewall.rst",
    "chars": 96,
    "preview": "installation.firewall\n=====================\n\n.. automodule:: installation.firewall\n   :members:\n"
  },
  {
    "path": "docs/installation_install.rst",
    "chars": 93,
    "preview": "installation.install\n====================\n\n.. automodule:: installation.install\n   :members:\n"
  },
  {
    "path": "docs/installation_lamp.rst",
    "chars": 84,
    "preview": "installation.lamp\n=================\n\n.. automodule:: installation.lamp\n   :members:\n"
  },
  {
    "path": "docs/installation_lemp.rst",
    "chars": 84,
    "preview": "installation.lemp\n=================\n\n.. automodule:: installation.lemp\n   :members:\n"
  },
  {
    "path": "docs/installation_mkinitcpio.rst",
    "chars": 102,
    "preview": "installation.mkinitcpio\n=======================\n\n.. automodule:: installation.mkinitcpio\n   :members:\n"
  },
  {
    "path": "docs/installation_post_features.rst",
    "chars": 111,
    "preview": "installation.post_features\n==========================\n\n.. automodule:: installation.post_features\n   :members:\n"
  },
  {
    "path": "docs/installation_post_fstab.rst",
    "chars": 102,
    "preview": "installation.post_fstab\n=======================\n\n.. automodule:: installation.post_fstab\n   :members:\n"
  },
  {
    "path": "docs/installation_post_install.rst",
    "chars": 108,
    "preview": "installation.post_install\n=========================\n\n.. automodule:: installation.post_install\n   :members:\n"
  },
  {
    "path": "docs/installation_process.rst",
    "chars": 93,
    "preview": "installation.process\n====================\n\n.. automodule:: installation.process\n   :members:\n"
  },
  {
    "path": "docs/installation_select_packages.rst",
    "chars": 117,
    "preview": "installation.select_packages\n============================\n\n.. automodule:: installation.select_packages\n   :members:\n"
  },
  {
    "path": "docs/installation_services.rst",
    "chars": 96,
    "preview": "installation.services\n=====================\n\n.. automodule:: installation.services\n   :members:\n"
  },
  {
    "path": "docs/installation_special_dirs.rst",
    "chars": 108,
    "preview": "installation.special_dirs\n=========================\n\n.. automodule:: installation.special_dirs\n   :members:\n"
  },
  {
    "path": "docs/installation_systemd_networkd.rst",
    "chars": 120,
    "preview": "installation.systemd_networkd\n=============================\n\n.. automodule:: installation.systemd_networkd\n   :members:\n"
  },
  {
    "path": "docs/installation_wrapper.rst",
    "chars": 93,
    "preview": "installation.wrapper\n====================\n\n.. automodule:: installation.wrapper\n   :members:\n"
  },
  {
    "path": "docs/logging_utils.rst",
    "chars": 72,
    "preview": "logging_utils\n=============\n\n.. automodule:: logging_utils\n   :members:\n"
  },
  {
    "path": "docs/main_window.rst",
    "chars": 66,
    "preview": "main_window\n===========\n\n.. automodule:: main_window\n   :members:\n"
  },
  {
    "path": "docs/misc.rst",
    "chars": 260,
    "preview": "misc (module)\n=============\n\n.. toctree::\n   :maxdepth: 2\n   :caption: Contents:\n\n   misc_avatars\n   misc_extra\n   misc_"
  },
  {
    "path": "docs/misc_avatars.rst",
    "chars": 69,
    "preview": "misc.avatars\n============\n\n.. automodule:: misc.avatars\n   :members:\n"
  },
  {
    "path": "docs/misc_extra.rst",
    "chars": 63,
    "preview": "misc.extra\n==========\n\n.. automodule:: misc.extra\n   :members:\n"
  },
  {
    "path": "docs/misc_gocryptfs.rst",
    "chars": 75,
    "preview": "misc.gocryptfs\n==============\n\n.. automodule:: misc.gocryptfs\n   :members:\n"
  },
  {
    "path": "docs/misc_gtkwidgets.rst",
    "chars": 78,
    "preview": "misc.gtkwidgets\n===============\n\n.. automodule:: misc.gtkwidgets\n   :members:\n"
  },
  {
    "path": "docs/misc_i18n.rst",
    "chars": 60,
    "preview": "misc.i18n\n=========\n\n.. automodule:: misc.i18n\n   :members:\n"
  },
  {
    "path": "docs/misc_keyboard_names.rst",
    "chars": 90,
    "preview": "misc.keyboard_names\n===================\n\n.. automodule:: misc.keyboard_names\n   :members:\n"
  },
  {
    "path": "docs/misc_nm.rst",
    "chars": 54,
    "preview": "misc.nm\n=======\n\n.. automodule:: misc.nm\n   :members:\n"
  },
  {
    "path": "docs/misc_osextras.rst",
    "chars": 72,
    "preview": "misc.osextras\n=============\n\n.. automodule:: misc.osextras\n   :members:\n"
  },
  {
    "path": "docs/misc_run_cmd.rst",
    "chars": 69,
    "preview": "misc.run_cmd\n============\n\n.. automodule:: misc.run_cmd\n   :members:\n"
  },
  {
    "path": "docs/misc_tz.rst",
    "chars": 54,
    "preview": "misc.tz\n=======\n\n.. automodule:: misc.tz\n   :members:\n"
  },
  {
    "path": "docs/misc_validation.rst",
    "chars": 78,
    "preview": "misc.validation\n===============\n\n.. automodule:: misc.validation\n   :members:\n"
  },
  {
    "path": "docs/proxy.rst",
    "chars": 48,
    "preview": "proxy\n=====\n\n.. automodule:: proxy\n   :members:\n"
  },
  {
    "path": "docs/rank_mirrors.rst",
    "chars": 69,
    "preview": "rank_mirrors\n============\n\n.. automodule:: rank_mirrors\n   :members:\n"
  },
  {
    "path": "docs/show_message.rst",
    "chars": 69,
    "preview": "show_message\n============\n\n.. automodule:: show_message\n   :members:\n"
  },
  {
    "path": "docs/test_page.rst",
    "chars": 60,
    "preview": "test_page\n=========\n\n.. automodule:: test_page\n   :members:\n"
  },
  {
    "path": "docs/update_db.rst",
    "chars": 60,
    "preview": "update_db\n=========\n\n.. automodule:: update_db\n   :members:\n"
  },
  {
    "path": "po/af-ZA.po",
    "chars": 56711,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/af.po",
    "chars": 56690,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/ar-SA.po",
    "chars": 56708,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/ar.po",
    "chars": 57588,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# ahmed nabil <one.man100100@gmail.com>, 2014\n# Hamam <hmam."
  },
  {
    "path": "po/ast.po",
    "chars": 94896,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Ḷḷumex03 <tornes@opmbx.org>, 2014-2015\nmsgid \"\"\nmsgstr \"\"\n"
  },
  {
    "path": "po/az-AZ.po",
    "chars": 56711,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/az.po",
    "chars": 56692,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/az@latin.po",
    "chars": 57279,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Elşad <elsad.ipaf.92@mail.ru>, 2015\nmsgid \"\"\nmsgstr \"\"\n\"Pr"
  },
  {
    "path": "po/az_IR.po",
    "chars": 56705,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/be.po",
    "chars": 56835,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/bg.po",
    "chars": 57121,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Emil Georgiev <svinqvmraka@gmail.com>, 2015\n# Kiril Ivailo"
  },
  {
    "path": "po/bn-BD.po",
    "chars": 56707,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/bn.po",
    "chars": 57669,
    "preview": "# SOME DESCRIPTIVE TITLE\n# This file is distributed under the same license as the PACKAGE package.\n# Translators:\nmsgid "
  },
  {
    "path": "po/bs-BA.po",
    "chars": 56784,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/bs.po",
    "chars": 56753,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/ca.po",
    "chars": 112431,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Arseni garcia <tot3lmon@gmail.com>, 2013\n# faidoc <alexfil"
  },
  {
    "path": "po/ca@valencia.po",
    "chars": 59348,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Arseni garcia <tot3lmon@gmail.com>, 2013\nmsgid \"\"\nmsgstr \""
  },
  {
    "path": "po/cnchi.pot",
    "chars": 57589,
    "preview": "#\n# SOME DESCRIPTIVE TITLE\n# This file is distributed under the same license as the PACKAGE package.\n# FIRST AUTHOR <EMA"
  },
  {
    "path": "po/cs-CZ.po",
    "chars": 56736,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/cs.po",
    "chars": 109152,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Martin Kříž <slovanworks.czech@gmail.com>, 2015\n# Miroslav"
  },
  {
    "path": "po/da.po",
    "chars": 62791,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Nikolaj Madsen <nikolajlmadsen@gmail.com>, 2015\nmsgid \"\"\nm"
  },
  {
    "path": "po/de-AT.po",
    "chars": 56703,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/de.po",
    "chars": 112134,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# theradialactive <account@d2ns.org>, 2013-2015\n# Alexandre "
  },
  {
    "path": "po/el.po",
    "chars": 115570,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Efstathios Iosifidis <iefstathios@gmail.com>, 2014-2015\n# "
  },
  {
    "path": "po/en.po",
    "chars": 92622,
    "preview": "# SOME DESCRIPTIVE TITLE.\n# Copyright (C) YEAR ORGANIZATION\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Ant"
  },
  {
    "path": "po/en_GB.po",
    "chars": 59733,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Andi Chandler <andi@gowling.com>, 2015\nmsgid \"\"\nmsgstr \"\"\n"
  },
  {
    "path": "po/eo.po",
    "chars": 56807,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Michael Moroni <michael.moroni@openmailbox.org>, 2014\nmsgi"
  },
  {
    "path": "po/es-ES.po",
    "chars": 78614,
    "preview": "# SOME DESCRIPTIVE TITLE\n# This file is distributed under the same license as the PACKAGE package.\n# Translators:\n# Albe"
  },
  {
    "path": "po/es-VE.po",
    "chars": 56706,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/es.po",
    "chars": 101107,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alexandre Filgueira <faidoc@gmail.com>, 2013\n# Alexandre F"
  },
  {
    "path": "po/es_419.po",
    "chars": 56712,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/es_AR.po",
    "chars": 113194,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alexandre Filgueira <faidoc@gmail.com>, 2013\n# Antonio de "
  },
  {
    "path": "po/es_CL.po",
    "chars": 80177,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/es_MX.po",
    "chars": 101611,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alexandre Filgueira <faidoc@gmail.com>, 2013\n# Antonio de "
  },
  {
    "path": "po/et.po",
    "chars": 56689,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/eu.po",
    "chars": 56687,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/fa.po",
    "chars": 57276,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# royaniva <royaniva@outlook.com>, 2013\nmsgid \"\"\nmsgstr \"\"\n\""
  },
  {
    "path": "po/fa_IR.po",
    "chars": 56694,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/fi.po",
    "chars": 77893,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Niko Henriksson <niko.henriksson@gmail.com>, 2015\nmsgid \"\""
  },
  {
    "path": "po/fr-BE.po",
    "chars": 114546,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# december9 <alison.labory@hotmail.com>, 2015\n# december9 <a"
  },
  {
    "path": "po/fr-CA.po",
    "chars": 56701,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/fr-FR.po",
    "chars": 56701,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/fr.po",
    "chars": 115039,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alexandre Filgueira <faidoc@gmail.com>, 2013\n# Jean-David "
  },
  {
    "path": "po/gl.po",
    "chars": 74036,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Aitor1995 <aitor1995@outlook.es>, 2014\n# Alexandre Filguei"
  },
  {
    "path": "po/gu.po",
    "chars": 56689,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/he.po",
    "chars": 60791,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Elia Shreidler <elia.shreidler@gmail.com>, 2015\n# enosh <t"
  },
  {
    "path": "po/hi.po",
    "chars": 56686,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/hr.po",
    "chars": 71696,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Emir Pasanovic <emir.pasanovic@gmail.com>, 2015\n# Ivica  K"
  },
  {
    "path": "po/hu.po",
    "chars": 80336,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# lacika501 <80kiri@gmail.com>, 2013\n# Dr. Tibor Attila Anca"
  },
  {
    "path": "po/id.po",
    "chars": 92548,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Cahya Legawa <haridiva@gmail.com>, 2014-2015\n# Febrian <fe"
  },
  {
    "path": "po/it-IT.po",
    "chars": 56702,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/it.po",
    "chars": 103029,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alexandre Filgueira <faidoc@gmail.com>, 2013\n# Benedetto G"
  },
  {
    "path": "po/it_CH.po",
    "chars": 101687,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alexandre Filgueira <faidoc@gmail.com>, 2013\n# Benedetto G"
  },
  {
    "path": "po/ja.po",
    "chars": 95708,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# ABE Satoru <s@polamjag.info>, 2014-2015\n# hiyokotaisa <the"
  },
  {
    "path": "po/ka.po",
    "chars": 56682,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/ko.po",
    "chars": 58614,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Jaeyoung Jung <j43y0ung@gmail.com>, 2015\n# sukso96100 <suk"
  },
  {
    "path": "po/ky.po",
    "chars": 56680,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/lt.po",
    "chars": 95295,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Moo, 2015\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos"
  },
  {
    "path": "po/mk.po",
    "chars": 74760,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# exoos <mince.lesovski@gmail.com>, 2014\nmsgid \"\"\nmsgstr \"\"\n"
  },
  {
    "path": "po/mr.po",
    "chars": 56688,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/ms.po",
    "chars": 60049,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Muhd Akmal Hakim <akimlinux@gmail.com>, 2013\n# Muhd Akmal "
  },
  {
    "path": "po/ms_MY.po",
    "chars": 56705,
    "preview": "# SOME DESCRIPTIVE TITLE.\n# Copyright (C) YEAR ORGANIZATION\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Ant"
  },
  {
    "path": "po/nb.po",
    "chars": 57129,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# bobbaluba <bobbaluba@gmail.com>, 2014\nmsgid \"\"\nmsgstr \"\"\n\""
  },
  {
    "path": "po/nl.po",
    "chars": 81673,
    "preview": "# Cnchi\n# Copyright (C) 2013-2017 Antergos\n#\n# Translators:\n# BertRobbus <bert_robberechts@yahoo.com>, 2014\n# Heimen Sto"
  },
  {
    "path": "po/nn.po",
    "chars": 57670,
    "preview": "# SOME DESCRIPTIVE TITLE\n# This file is distributed under the same license as the PACKAGE package.\n# Translators:\nmsgid "
  },
  {
    "path": "po/pa.po",
    "chars": 56698,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/pl-PL.po",
    "chars": 83739,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Hubert Cwajda <cwajdahubert@gmail.com>, 2015\n# Konrad Miet"
  },
  {
    "path": "po/pl.po",
    "chars": 83347,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# adiq <adiq117@gmail.com>, 2013-2014\n# Hubert Cwajda <cwajd"
  },
  {
    "path": "po/pt.po",
    "chars": 100468,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alexandre Filgueira <faidoc@gmail.com>, 2013\n# abdo hamdam"
  },
  {
    "path": "po/pt_BR.po",
    "chars": 106245,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alan Guerra Costa <alancosta.unit@hotmail.com>, 2014-2015\n"
  },
  {
    "path": "po/pt_PT.po",
    "chars": 56727,
    "preview": "# SOME DESCRIPTIVE TITLE.\n# Copyright (C) YEAR ORGANIZATION\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Ant"
  },
  {
    "path": "po/ro-RO.po",
    "chars": 100887,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# George Abraham <george.abraham.ro@gmail.com>, 2015\n# Linux"
  },
  {
    "path": "po/ro.po",
    "chars": 94905,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# LinuxVideoRO, 2013\n# LinuxVideoRO, 2013\n# robert_datcu <ro"
  },
  {
    "path": "po/ru.po",
    "chars": 110342,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alexandre Filgueira <faidoc@gmail.com>, 2013\n# Barigosha <"
  },
  {
    "path": "po/sk.po",
    "chars": 111969,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Dušan Kazik <prescott66@gmail.com>, 2014-2015\nmsgid \"\"\nmsg"
  },
  {
    "path": "po/sl-SI.po",
    "chars": 56750,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/sl.po",
    "chars": 57196,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Abomination1 <drozic1989@gmail.com>, 2015\nmsgid \"\"\nmsgstr "
  },
  {
    "path": "po/sq.po",
    "chars": 57666,
    "preview": "# SOME DESCRIPTIVE TITLE\n# This file is distributed under the same license as the PACKAGE package.\n# Translators:\nmsgid "
  },
  {
    "path": "po/sr-RS.po",
    "chars": 57888,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Nikola Stojkovic <dragstor@gmail.com>, 2014\nmsgid \"\"\nmsgst"
  },
  {
    "path": "po/sr.po",
    "chars": 56765,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/sr@latin.po",
    "chars": 56804,
    "preview": "# SOME DESCRIPTIVE TITLE.\n# Copyright (C) YEAR ORGANIZATION\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Ant"
  },
  {
    "path": "po/sv.po",
    "chars": 95297,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\n# Alexandre Filgueira <faidoc@gmail.com>, 2013\n# Daniel <dan"
  },
  {
    "path": "po/szl.po",
    "chars": 56752,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/ta.po",
    "chars": 56686,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/ta_IN.po",
    "chars": 56700,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/tg.po",
    "chars": 56686,
    "preview": "# Cnchi\n# Copyright (C) 2013-2015 Antergos\n#\n# Translators:\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: Antergos\\n\"\n\"POT-Cre"
  },
  {
    "path": "po/tl.po",
    "chars": 58478,
    "preview": "# SOME DESCRIPTIVE TITLE\n# This file is distributed under the same license as the PACKAGE package.\n# Translators:\n# vien"
  }
]

// ... and 249 more files (download for full content)

About this extraction

This page contains the full source code of the Antergos/Cnchi GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 449 files (10.3 MB), approximately 2.7M tokens, and a symbol index with 1480 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!