Skip to content

Commit

Permalink
Merge pull request #781 from ivan-hc/dev
Browse files Browse the repository at this point in the history
Add option "-e" or "extra" to install third-party apps, out of the database
  • Loading branch information
ivan-hc authored Jul 12, 2024
2 parents 31fe789 + c5d2b80 commit 4664b0c
Show file tree
Hide file tree
Showing 4 changed files with 238 additions and 103 deletions.
7 changes: 4 additions & 3 deletions APP-MANAGER
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

AMVERSION="7.1.1"
AMVERSION="7.2"

# Determine main repository and branch
AMREPO="https://raw.githubusercontent.com/ivan-hc/AM/main"
Expand Down Expand Up @@ -446,6 +446,7 @@ function _generate_options_list() {
clean
downgrade
download
extra
files
install
list
Expand Down Expand Up @@ -964,11 +965,11 @@ case "$1" in
MODULE="sandboxes.am"
_use_module "$@"
;;
'-i'|'install')
'-i'|'install'|\
'-e'|'extra')
MODULE="install.am"
_online_check
_if_appman_mode_enabled
_betatester_message_on
_use_module "$@"
;;
'-t'|'template')
Expand Down
56 changes: 55 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ You can consult the entire **list of managed apps** at [**portable-linux-apps.gi

[Guides and tutorials](#guides-and-tutorials)
- [Install applications](#install-applications)
- [Install AppImages not listed in this database but available in other github repos](#install-appimages-not-listed-in-this-database-but-available-in-other-github-repos)
- [List the installed applications](#list-the-installed-applications)
- [List and query all the applications available on the database](#list-and-query-all-the-applications-available-on-the-database)
- [Update all](#update-all)
Expand Down Expand Up @@ -422,11 +423,22 @@ See also "[How to update or remove apps manually](#how-to-update-or-remove-apps-

`-d {PROGRAM}`

`-d --convert {PROGRAM}`
`-d --convert {PROGRAM}`

DESCRIPTION: Download one or more installation scripts to your desktop. With the option "--convert" its converted to a standalone local installer, but AM requires AppMan to be installed to add custom directory settings.
___________________________________________________________________________

`-e`, `extra`

SYNOPSIS:

`-e {USER}/{PROJECT} {PROGRAM}`

`-e {USER}/{PROJECT} {PROGRAM} {KEYWORD}`

DESCRIPTION: Install AppImages from github.com, outside the database. This allows you to install, update and manage them all like the others. Where "user/project" can be the whole URL to the github repository, give a name to the program so that it can be used from the command line. Optionally, add an "univoque" keyword if multiple AppImages are listed.
___________________________________________________________________________

`-f`, `files`

SYNOPSIS:
Expand Down Expand Up @@ -731,6 +743,7 @@ See also "[How to update or remove apps manually](#how-to-update-or-remove-apps-
This section is committed to giving small demonstrations of each available option, with videos:

- [Install applications](#install-applications)
- [Install AppImages not listed in this database but available in other github repos](#install-appimages-not-listed-in-this-database-but-available-in-other-github-repos)
- [List the installed applications](#list-the-installed-applications)
- [List and query all the applications available on the database](#list-and-query-all-the-applications-available-on-the-database)
- [Update all](#update-all)
Expand Down Expand Up @@ -780,6 +793,47 @@ https://github.com/ivan-hc/AM/assets/88724353/c2e8b654-29d3-4ded-8877-f77ef11d58

------------------------------------------------------------------------

__________________________________________________________________________
### Install AppImages not listed in this database but available in other github repos
From version 7.2 its possible to install AppImages not listed in this database, thanks to the option `-e` or `extra`.

You need to add the URL to the github repo before the name you want to give to the AppImage (for command line usage, for example).

Optionally, you can add a "keyword" if more AppImages are listed in the same repo.

Usage:
```
am -e $USER/$PROJECT $PROGRAM
am -e $USER/$PROJECT $PROGRAM $KEYWORD
```
or
```
appman -e $USER/$PROJECT $PROGRAM
appman -e $USER/$PROJECT $PROGRAM $KEYWORD
```
in this video I'll install AnyDesk as "remote-desktop-client":

https://github.com/user-attachments/assets/aa546905-38da-48b5-bb10-658426e8372b

You can give whatever name you want to the apps (as long as they does not overlap with commands already existing on your system, be careful).

In this other example, I'll install an obsolete version of WINE AppImage, from a repo that lists more versions of the same app:
1. the first attempt is without a keyword, so that the script picks the first AppImage in the list (for Debian Buster)
2. in the second attempt I'll use the keyword "arch" to pick the Arch-based AppImage

https://github.com/user-attachments/assets/af00a5f2-f3fe-4616-899a-155cb31d2acd

As you can see, there are all the files needed by any app listed in this database, also if an installation script for them does not exists.

Apps installed this way will enjoy the same benefits as those that can already be installed from the database with the "`-i`" or "`install`" option [mentioned above](#install-applications), including updates and sandboxing.

------------------------------------------------------------------------

| [Back to "Guides and tutorials"](#guides-and-tutorials) | [Back to "Main Index"](#main-index) |
| - | - |

------------------------------------------------------------------------

__________________________________________________________________________
### List the installed applications
Option `-f` or `files`, it shows the installed apps, the version, the size and the type of application:
Expand Down
16 changes: 16 additions & 0 deletions modules/help.am
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,22 @@ function _help_body() {
but AM requires AppMan to be installed to add custom directory settings.
__________________________________________________________________________
-e, extra
SYNOPSIS: -e user/project {APPNAME}
-e user/project {APPNAME} {KEYWORD}
DESCRIPTION: Install AppImages from github.com, outside the database.
This allows you to install, update and manage them all like the others.
Where "user/project" can be the whole URL to the github repository,
give a name to the program so that it can be used from the command line.
Optionally, add an "univoque" keyword if multiple AppImages are listed.
__________________________________________________________________________
-f, files
SYNOPSIS: -f
Expand Down
Loading

0 comments on commit 4664b0c

Please sign in to comment.