diff --git a/CHANGELOG.md b/CHANGELOG.md
index 19e89166..f394ff33 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
-## [0.7.3] 2019-
+## [0.7.3] 2019-11
### Improvements
- Not breaking the application when a i18n (translation) key was not found
- Adding all english (**en**) i18n keys to help people with the application translation
@@ -13,6 +13,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- AUR
- The optimized **makepkg.conf** file is now generated at **~/.config/bauh/arch/makepkg.conf** and passed as a parameter during package builds to not provoke the auto-merge of **/etc/makepkg.conf** and the old generated **~/.makepkg.conf**.
(P.S: if your **~/.makepkg.conf** was generated by bauh, consider deleting it as it will be useless for bauh now and may impact your other Arch compilation tools). Behavior discussed in [#30](https://github.com/vinifmor/bauh/issues/30).
+ - Now AUR packages are enabled by default, but a warning is displayed in the installation dialog
+ - New package suggestions
- Caching Snap and Flatpak suggestions [#23](https://github.com/vinifmor/bauh/issues/23)
- i18n:
- Catalan contributions by [fitojb](https://github.com/fitojb)
diff --git a/README.md b/README.md
index 1062cafe..d2654fb5 100644
--- a/README.md
+++ b/README.md
@@ -94,25 +94,6 @@ In order to autostart the application, use your Desktop Environment settings to
#### Snap ( snap )
- The user is able to search, install, uninstall, refresh, launch and downgrade applications
-#### AUR ( arch )
-- It is **not enabled by default**
-- The user is able to search, install, uninstall, downgrade, launch and retrieve the packages history
-- It handles conflicts, and missing / optional packages installations ( including from your distro mirrors )
-- If [**aria2**](https://github.com/aria2/aria2) is installed on your system and multi-threaded downloads are enabled ( see **BAUH_DOWNLOAD_MULTITHREAD** ), the source packages
-will be pre-downloaded faster ( it does **NOT** modify your **pacman** settings ).
-- Automatically makes simple package compilation improvements:
-
- a) if **MAKEFLAGS** is not set in **/etc/makepkg.conf** and **~/.makepkg.conf** does not exist,
- then a copy of **/etc/makepkg.conf** will be generated at **~/.makepkg.conf** defining MAKEFLAGS to work with
- the number of your machine processors (**-j${nproc}**).
-
- b) same as previous, but related to **COMPRESSXZ** definition ( if '--threads=0' is not defined )
-
- Obs: this feature can be disabled through the environment variable **BAUH_ARCH_OPTIMIZE=0**
- ( For more information about these optimizations, check: https://wiki.archlinux.org/index.php/Makepkg )
-- Arch package memory-indexer running every 20 minutes. This memory index is used when AUR Api cannot handle the amount of results found for a given search. It can be disabled via the environment variable **BAUH_ARCH_AUR_INDEX_UPDATER=0**.
-- If some of your installed packages are not categorized, send an e-mail to **bauh4linux@gmail.com** informing their names and categories in the following format: ```name=category1[,category2,category3,...]```
-
#### AppImage ( appimage )
- The user is able to search, install, uninstall, downgrade, launch and retrieve the applications history
- Supported sources: [AppImageHub](https://appimage.github.io) ( **applications with no releases published to GitHub are currently not available** )
@@ -125,6 +106,24 @@ will be pre-downloaded faster ( it does **NOT** modify your **pacman** settings
Obs: There are some crashes when **AppImageLauncher** is installed. It is advisable to uninstall it and reboot the system before trying to install an AppImage application.
+#### AUR ( arch )
+- The user is able to search, install, uninstall, downgrade, launch and retrieve the packages history
+- It handles conflicts, and missing / optional packages installations ( including from your distro mirrors )
+- If [**aria2**](https://github.com/aria2/aria2) is installed on your system and multi-threaded downloads are enabled ( see **BAUH_DOWNLOAD_MULTITHREAD** ), the source packages
+will be pre-downloaded faster ( it does **NOT** modify your **pacman** settings ).
+- Automatically makes simple package compilation improvements:
+
+ a) if **MAKEFLAGS** is not set in **/etc/makepkg.conf**,
+ then a copy of **/etc/makepkg.conf** will be generated at **~/.config/bauh/arch/makepkg.conf** defining MAKEFLAGS to work with
+ the number of your machine processors (**-j${nproc}**).
+
+ b) same as previous, but related to **COMPRESSXZ** definition ( if '--threads=0' is not defined )
+
+ Obs: this feature can be disabled through the environment variable **BAUH_ARCH_OPTIMIZE=0**
+ ( For more information about these optimizations, have a look at [Makepkg](https://wiki.archlinux.org/index.php/Makepkg)
+- Arch package memory-indexer running every 20 minutes. This memory index is used when AUR Api cannot handle the amount of results found for a given search. It can be disabled via the environment variable **BAUH_ARCH_AUR_INDEX_UPDATER=0**.
+- If some of your installed packages are not categorized, send an e-mail to **bauh4linux@gmail.com** informing their names and categories in the following format: ```name=category1[,category2,category3,...]```
+
### General settings
You can change some application settings via environment variables or arguments (type ```bauh --help``` to get more information).
diff --git a/bauh/gems/arch/controller.py b/bauh/gems/arch/controller.py
index 0d77fb9c..af5531df 100644
--- a/bauh/gems/arch/controller.py
+++ b/bauh/gems/arch/controller.py
@@ -747,7 +747,7 @@ class ArchManager(SoftwareManager):
return res
def is_default_enabled(self) -> bool:
- return False
+ return True
def launch(self, pkg: ArchPackage):
if pkg.command:
diff --git a/bauh/gems/arch/resources/locale/ca b/bauh/gems/arch/resources/locale/ca
index 3f912e7e..dd47dff2 100644
--- a/bauh/gems/arch/resources/locale/ca
+++ b/bauh/gems/arch/resources/locale/ca
@@ -1,5 +1,6 @@
gem.arch.label=AUR
gem.arch.info=Els paquets AUR són mantinguts per una comunitat d’usuaris independent. No hi ha cap garantia que funcionin o que no danyin el vostre sistema.
+gem.aur.install.warning=Els paquets AUR són mantinguts per una comunitat d’usuaris independent. No hi ha cap garantia que funcionin o que no danyin el vostre sistema.
aur.info.architecture=arquitectura
aur.info.architecture.any=qualsevol
aur.info.build date=data de compilació
diff --git a/bauh/gems/arch/resources/locale/de b/bauh/gems/arch/resources/locale/de
index c4b3bce3..647ff73f 100644
--- a/bauh/gems/arch/resources/locale/de
+++ b/bauh/gems/arch/resources/locale/de
@@ -1,5 +1,6 @@
gem.arch.label=AUR
gem.arch.info=AUR Pakete werden von einer unabhängigen Nutzergemeinschaft geflegt. Es keine Garantie das sie funktionieren oder kein Schaden verursachen.
+gem.aur.install.warning=AUR Pakete werden von einer unabhängigen Nutzergemeinschaft geflegt. Es keine Garantie das sie funktionieren oder kein Schaden verursachen.
arch.install.conflict.popup.title=Konflikt entdeckt
arch.install.conflict.popup.body=Die Anwendungen {} können nicht gleichzeitig installiert sein. Du musst eine deinstallieren um die andere zu installieren. Fortfahren?
arch.missing_deps.title=Fehlende Abhängigkeiten
diff --git a/bauh/gems/arch/resources/locale/en b/bauh/gems/arch/resources/locale/en
index 04f78d3d..4c2b35e9 100644
--- a/bauh/gems/arch/resources/locale/en
+++ b/bauh/gems/arch/resources/locale/en
@@ -1,5 +1,6 @@
gem.arch.label=AUR
-gem.arch.info=AUR packages are maintained by an independent user community. There is no warranty that they will work or not harm you system.
+gem.arch.info=AUR packages are maintained by an independent user community. There is no warranty that they will work or not harm your system.
+gem.aur.install.warning=AUR packages are maintained by an independent user community. There is no warranty that they will work or not harm your system.
arch.install.conflict.popup.title=Conflict detected
arch.install.conflict.popup.body=The applications {} are in conflict. You must uninstall one to install the other. Continue ?
arch.missing_deps.title=Missing dependencies
diff --git a/bauh/gems/arch/resources/locale/es b/bauh/gems/arch/resources/locale/es
index d8a54105..ef7c3183 100644
--- a/bauh/gems/arch/resources/locale/es
+++ b/bauh/gems/arch/resources/locale/es
@@ -1,5 +1,6 @@
gem.arch.label=AUR
gem.arch.info=Los paquetes AUR son mantenidos por una comunidad de usuarios independiente. No hay garantía de que funcionen o que no dañen su sistema.
+gem.aur.install.warning=Los paquetes AUR son mantenidos por una comunidad de usuarios independiente. No hay garantía de que funcionen o que no dañen su sistema.
aur.info.architecture=arquitectura
aur.info.architecture.any=cualquier
aur.info.build date=fecha de construcción
diff --git a/bauh/gems/arch/resources/locale/it b/bauh/gems/arch/resources/locale/it
index 4b0e5bc0..cb2b7e5a 100644
--- a/bauh/gems/arch/resources/locale/it
+++ b/bauh/gems/arch/resources/locale/it
@@ -1,5 +1,6 @@
gem.arch.label=AUR
gem.arch.info=I pacchetti AUR sono gestiti da una comunità di utenti indipendenti. Non esiste alcuna garanzia che funzionino o non danneggino il sistema.
+gem.aur.install.warning=I pacchetti AUR sono gestiti da una comunità di utenti indipendenti. Non esiste alcuna garanzia che funzionino o non danneggino il sistema.
arch.install.conflict.popup.title=Conflitto rilevato
arch.install.conflict.popup.body=Le applicazioni {} sono in conflitto. È necessario disinstallarne una per installare l'altra. Continua ?
arch.missing_deps.title=Dipendenze mancanti
diff --git a/bauh/gems/arch/resources/locale/pt b/bauh/gems/arch/resources/locale/pt
index a5d82578..4aaeb383 100644
--- a/bauh/gems/arch/resources/locale/pt
+++ b/bauh/gems/arch/resources/locale/pt
@@ -1,5 +1,6 @@
gem.arch.label=AUR
gem.arch.info=Pacotes do AUR são mantidos por uma comunidade de usuários independente. Não há garantia que funcionarão ou que não prejudicarão o seus sistema.
+gem.aur.install.warning=Pacotes do AUR são mantidos por uma comunidade de usuários independente. Não há garantia que funcionarão ou que não prejudicarão o seus sistema.
aur.info.architecture=arquitetura
aur.info.architecture.any=qualquer
aur.info.build date=data de construção
diff --git a/bauh/gems/arch/suggestions.py b/bauh/gems/arch/suggestions.py
index 393e6b63..5bb2517b 100644
--- a/bauh/gems/arch/suggestions.py
+++ b/bauh/gems/arch/suggestions.py
@@ -1,3 +1,5 @@
from bauh.api.abstract.model import SuggestionPriority
-ALL = {'google-chrome': SuggestionPriority.HIGH}
+ALL = {'google-chrome': SuggestionPriority.HIGH,
+ 'lutris-git': SuggestionPriority.LOW,
+ 'xdman': SuggestionPriority.LOW}
diff --git a/bauh/gems/arch/worker.py b/bauh/gems/arch/worker.py
index 3923e08e..58078d31 100644
--- a/bauh/gems/arch/worker.py
+++ b/bauh/gems/arch/worker.py
@@ -83,7 +83,7 @@ class ArchCompilationOptimizer(Thread if bool(os.getenv('BAUH_DEBUG', 0)) else P
self.logger.info("Arch packages compilation optimization is disabled. Aborting...")
else:
try:
- ncpus = ceil(os.cpu_count() * 1.5)
+ ncpus = os.cpu_count()
except:
self.logger.error('Could not determine the number of processors. Aborting...')
ncpus = None
diff --git a/bauh/view/qt/apps_table.py b/bauh/view/qt/apps_table.py
index 040fab21..b9f29056 100644
--- a/bauh/view/qt/apps_table.py
+++ b/bauh/view/qt/apps_table.py
@@ -174,9 +174,16 @@ class AppsTable(QTableWidget):
def _install_app(self, pkgv: PackageView):
+ body = self.i18n['manage_window.apps_table.row.actions.install.popup.body'].format(self._bold(str(pkgv)))
+
+ warning = self.i18n.get('gem.{}.install.warning'.format(pkgv.model.get_type().lower()))
+
+ if warning:
+ body += '
{}'.format('
'.join(('{}.'.format(phrase) for phrase in warning.split('.') if phrase)))
+
if dialog.ask_confirmation(
title=self.i18n['manage_window.apps_table.row.actions.install.popup.title'],
- body=self._parag(self.i18n['manage_window.apps_table.row.actions.install.popup.body'].format(self._bold(str(pkgv)))),
+ body=self._parag(body),
i18n=self.i18n):
self.window.install(pkgv)
@@ -267,6 +274,7 @@ class AppsTable(QTableWidget):
elif pkg.model.can_be_installed():
def install():
self._install_app(pkg)
+
item = self._gen_row_button(self.i18n['install'].capitalize(), INSTALL_BT_STYLE.format(back='#088A08'), install)
else:
item = None