The delightful package manager for AppImages

Overview

zap Zap

⚡️ Zap

The delightful package manager for AppImages
Report bug · Request feature

forthebadge made-with-go

Mentioned in Awesome AppImage

GitHub followers GitHub stars

Zap Installing Firefox

Looking for the older Zap v1 (Python) implementation? Head over to v1 branch.

Getting Started

Automated Installation

For installing zap you can use our little bash script.

The installer requires curl, grep jq and wget (optional). Please make sure you have it installed.

For system-wide installation (needs sudo)

curl https://raw.githubusercontent.com/srevinsaju/zap/main/install.sh | sudo bash -s

Note: Always Check bash scripts before running as sudo. You can feel free to check out install.sh, it's safe.

For local installation run

curl https://raw.githubusercontent.com/srevinsaju/zap/main/install.sh | bash -s

Manual Installation

For system-wide installation (needs sudo)

sudo wget https://github.com/srevinsaju/zap/releases/download/continuous/zap-amd64 -O /usr/local/bin/zap
sudo chmod +x /usr/local/bin/zap
zap --help

For local installation, (requires ~/.local/bin to be on $PATH)

mkdir -p ~/.local/bin
wget https://github.com/srevinsaju/zap/releases/download/continuous/zap-amd64 -O ~/.local/bin/zap
chmod +x ~/.local/bin/zap
zap --help

NOTE: Replace amd64 with your machine architecture. Supported architectures are listed in the release page

Installing AppImages

All AppImages from the AppImage Catalog and AppImage catalog v2 can be installed using zap with their registered name.

zap install element

will ask you the version of element you would like to install + download them and do all the hard work of integrating into your system, i.e creating desktop files, etc.

You can also install appimages from GitHub releases

zap install --github --from vscodium/vscodium

will put some options which will let you choose the best version for your system.

It is also possible to install AppImage from URLs

zap install --from https://f.sed.lol/wow.AppImage

To integrate a locally downloaded AppImage,

zap install libresprite ~/Downloads/Libresprite-x86_64.AppImage

... or using the file:// protocol

zap install --from file:///home/username/Downloads/My_Super_Cool-x86_64.AppImage name_of_the_app_here

here, name_of_the_app_here specifies the name of the application. This name will be used as a unique identification of the AppImage, by zap, in its internal database.

Updating AppImages 🔄

AppImages can be optionally, automatically updated using the zapd, but to achieve this manually, you need to

zap update firefox

This will make use of the update information embedded within the appimage, which if exists, will be used to 'delta-update' the latest version, by downloading "only" the parts which have changed.

For those AppImages not supporting delta updates, you can still do

zap install zoom

to install the latest version of Zoom.

Upgrade 🚀

zap also supports updating all the apps together using appimage-update.

zap upgrade

Configuration ⚙️

It is possible to interactively configure zap. All you need to do is

zap init

And answer all the questions that would follow.

Daemon 🏃

zapd is a Zap AppImage daemon which periodically checks for updates.

zap daemon --install

This will install a systemd service in the local (user) level, which will spawn zap daemon which auto-updates the AppImages.

To run the daemon (sync), do

zap daemon

Support 💸

All Pull Requests are welcome.

If you are a non-coder or was inspired by this small project, I would be glad if you would 🌟 this repository, and spread the word with your friends and foes 😄

Credits 🙏

This project has been possible with the help and support provided by the AppImage community. Thanks to the detailed responses I received from mentors at AppImage's freenode channel.

License ⚖️

MIT License

Copyright (c) 2020-21 Srevin Saju, and other zap contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Comments
  • Fishshell incompatible

    Fishshell incompatible

    Seems like the tool does not play well with fishshell.

    > curl -fsSL https://git.io/zapinit | sh
    Creating ~/.zap
     Downloading the latest 🗲 Zap Release
    ~. 100%[=============>]  22,28M  2,61MB/s    in 18s
    Adding zap to PATH
     🗲 Zap  is installed
    
      • Join our chat on  Discord : https://discord.gg/Yv7KC68
      • Found an issue? Report it now on  GitHub  @ https://github.com/srevinsaju/zap/issues
      • Have questions? Hope on to  #Appimage  on IRC freenode
      .net
    
    Try it now by running  zap  on your terminal
    Have fun!
    > zap
    Failed to execute process '~/.local/bin/zap'. Reason:
    exec: Exec format error
    The file '~/.local/bin/zap' is marked as an executable but could not be run by the operating system.
    
    opened by territory-sschneider 21
  • Desktop integration of appimage from Github repo error

    Desktop integration of appimage from Github repo error

    Tried to install https://github.com/kapitainsky/RcloneBrowser from zap, downloaded and installed correctly but desktop integration failed.

    100% Downloaded https://github.com/kapitainsky/RcloneBrowser/releases/download/1.8.0/rclone-browser-1.8.0-a0b66c6-linux-x86_64.AppImage from kapitainsky
    Configuring...
    Integrating with desktop...
    Traceback (most recent call last):
      File "PyInstaller/loader/pyiboot01_bootstrap.py", line 144, in __init__
      File "ctypes/__init__.py", line 373, in __init__
    OSError: libpcre.so.1: cannot open shared object file: No such file or directory
    
    The above exception was the direct cause of the following exception:
    
    Traceback (most recent call last):
      File "test.py", line 1, in <module>
      File "click/core.py", line 829, in __call__
      File "click/core.py", line 782, in main
      File "click/core.py", line 1259, in invoke
      File "click/core.py", line 1066, in invoke
      File "click/core.py", line 610, in invoke
      File "zap/cli.py", line 232, in install_gh
      File "zap/zap.py", line 360, in install
      File "zap/libappimage/libappimage.py", line 31, in __init__
      File "PyInstaller/loader/pyiboot01_bootstrap.py", line 146, in __init__
    __main__.PyInstallerImportError: Failed to load dynlib/dll '/tmp/.mount_zap-x88hwZaH/usr/local/lib/libappimage.so'. Most probably this dynlib/dll was not found when the application was frozen.
    [631963] Failed to execute script test
    
    
    bug 
    opened by naveenjohnsonv 14
  • Added automated install bash script (Solve #39)

    Added automated install bash script (Solve #39)

    Added automated install script

    Added automated install.sh script to fetch latest release from Github

    This script fetches Github releases and checks for compatible arch. If a compatible binary is found it will download it to current directory.

    Requirements:

    • curl
    • jq
    • grep
    • wget (optional)
    hacktoberfest-accepted 
    opened by CypherpunkSamurai 8
  • Automatic Installation failure: Illegal option -o pipefail

    Automatic Installation failure: Illegal option -o pipefail

    I tried running the automatic installer but this part here caused it to automatically end:

    set -euo pipefail
    

    with error

    sh: 8: set: Illegal option -o pipefail
    

    I couldn't find the root of this issue, however the manual installation worked perfectly.

    opened by luni3359 7
  • Add Shorthand for Install Command

    Add Shorthand for Install Command

    use username/repository for github use ./example.AppImage for local file with relative path use /dir/example.AppImage for local file with absolute path

    example: image

    opened by hadihammurabi 7
  • Pacstall

    Pacstall

    Please add this app into the pacstall repository. Pacstall is the AUR for Ubuntu which will allow Ubuntu users to easily install the app and receive updates very shortly after an update is released.

    https://pacstall.dev/

    wontfix 
    opened by trymeouteh 5
  • Install local AppImages

    Install local AppImages

    I was looking for a method to integrate (install) an AppImage already downloaded on my PC (and which does not offer a direct link to the .AppImage file), I searched in the zap help and in the Readme but I could not find anything about it.

    After some tests and resignations I tried to use the file:// protocol with the --from parameter and I saw that it works:

    zap install gravit file:///home/mirko/Downloads/GravitDesigne.AppImage
    

    I don't know if this is wanted or not but it could be very useful to have it officially.

    documentation 
    opened by mirkobrombin 5
  • Minor bug & Feature Request

    Minor bug & Feature Request

    I gotta say it really is a delightful application

    First of all I would like to address a bug after zap remove package the symlink in ~/.local/bin is not deleted.As a result,when the application is installed again the symlink is not placed,outputing [ FATAL ] ...... symlink dir/X.AppImage ~/.local/bin/X exists and so the application doesn't open steps to produce: zap install qpdf install the latest zap remove qpdf zap install qpdf install anything except the latest ( it just has to be different version each time) I have also noticed that this error doesn't occur when the appimage name is not suffixed by its version,for example neovim gets installed as nvim.appimage no matter what version and this error doesn't occur

    EDIT : Installing appimages from local file works :) zap install --from file://X nameOfApp

    Updating apps installed by zap install --github --from x/Y I get that I can update those by running the same command again,but for that I would have to look up the repo location again. An easy fix would be to save the location of Y as github.com/x/Y so when I want to install/update it again I can just run zap install Y but of course if the appimage contains zsync for update it isn't required,but at this moment most appimages doesnt have that

    On a side note,libappimage should be listed as a dependency

    opened by renzhamin 5
  • Zap not fully integrating in Mint Cinnamon 20.3 (una)/5.2.7 + v1 branch downloads blank AppImage + v1 script failure

    Zap not fully integrating in Mint Cinnamon 20.3 (una)/5.2.7 + v1 branch downloads blank AppImage + v1 script failure

    I'm losing my mind here. Zap is not fully integrating into the desktop in Mint. (inxi output) inxi -Fxz System: Kernel: 5.4.0-100-generic x86_64 bits: 64 compiler: gcc v: 9.3.0 Desktop: Cinnamon 5.2.7 Distro: Linux Mint 20.3 Una base: Ubuntu 20.04 focal Machine: Type: Laptop System: Insyde product: CherryTrail v: N/A serial: <filter> Mobo: Insyde model: Cherry Trail CR v: Type2 - Board Version serial: <filter> UEFI: INSYDE v: M1106.V024 date: 09/20/2016 Battery: ID-1: axp288_fuel_gauge charge: 100% condition: N/A model: N/A status: Full CPU: Topology: Quad Core model: Intel Atom x5-Z8350 bits: 64 type: MCP arch: Airmont rev: 4 L2 cache: 1024 KiB flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 11520 Speed: 480 MHz min/max: 480/1920 MHz Core speeds (MHz): 1: 480 2: 480 3: 1797 4: 1793 Graphics: Device-1: Intel Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Integrated Graphics driver: i915 v: kernel bus ID: 00:02.0 Display: x11 server: X.Org 1.20.13 driver: modesetting unloaded: fbdev,vesa resolution: 1366x768~60Hz OpenGL: renderer: Mesa DRI Intel HD Graphics (CHV) v: 4.6 Mesa 21.2.6 direct render: Yes Audio: Device-1: Intel Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series Imaging Unit driver: intel_atomisp2_pm v: kernel bus ID: 00:03.0 Sound Server: ALSA v: k5.4.0-100-generic Network: Message: No Device data found. IF-ID-1: docker0 state: down mac: <filter> IF-ID-2: wlan0 state: up mac: <filter> Drives: Local Storage: total: 57.62 GiB used: 17.95 GiB (31.1%) ID-1: /dev/mmcblk0 model: NCard size: 57.62 GiB Partition: ID-1: / size: 55.00 GiB used: 17.16 GiB (31.2%) fs: ext4 dev: /dev/dm-0 ID-2: swap-1 size: 976.0 MiB used: 802.1 MiB (82.2%) fs: swap dev: /dev/dm-1 Sensors: System Temperatures: cpu: 63.0 C mobo: N/A Fan Speeds (RPM): N/A Info: Processes: 250 Uptime: 15h 19m Memory: 1.83 GiB used: 1.01 GiB (55.3%) Init: systemd runlevel: 5 Compilers: gcc: 9.3.0 Shell: bash v: 5.0.17 inxi: 3.0.38

    I decided to have a go at creating a bash script to have zap partially integrate the appimage then finish the integration including creating a .desktop to include the link with the proper icon in the menu. My issues with this with the current build are that printf and expects are not cooperating because of the interactive configuration module included with the current build (namely zap -init). I'd provide the horror show that is the autoexpects output, but it's about 20 pages worth of untranslatable symbols interspersed with the expects text and sends. Ideally, I could have fixed this with v1, however when I download the v1 AppImage according to the instructions on that branch, it fails, and when I download the branch manually, it downloads a blank appimage. I didn't notice the blank appimage until I tried using the install script to associate zap with the appimage input. Here's the associated outputs.

    This can't be run sudo. It doesn't require going into root, but it fails as user (and we have to be root for the bash file), so lets try. Done: result:

    --2022-02-27 08:23:26--  https://git.io/zapinit
    Resolving git.io (git.io)... 52.204.242.176, 18.205.36.100, 54.162.128.250, ...
    Connecting to git.io (git.io)|52.204.242.176|:443... connected.
    HTTP request sent, awaiting response... 302 Found
    Location: https://github.com/srevinsaju/zap/raw/master/tools/install.sh [following]
    --2022-02-27 08:23:27--  https://github.com/srevinsaju/zap/raw/master/tools/install.sh
    Resolving github.com (github.com)... 140.82.113.3
    Connecting to github.com (github.com)|140.82.113.3|:443... connected.
    HTTP request sent, awaiting response... 404 Not Found
    2022-02-27 08:23:27 ERROR 404: Not Found.
    

    Ok, well let's find a way around this then. How about we call that address manually with wget?

    #wget -O /root/.zap/install_zap.sh https://github.com/srevinsaju/zap/raw/master/tools/install.sh
    --2022-02-27 08:34:59--  https://github.com/srevinsaju/zap/raw/master/tools/install.sh
    Resolving github.com (github.com)... 140.82.114.3
    Connecting to github.com (github.com)|140.82.114.3|:443... connected.
    HTTP request sent, awaiting response... 404 Not Found
    2022-02-27 08:34:59 ERROR 404: Not Found.
    

    Ok, what about the raw address you have listed? (notice it's quoted instead of marked as code, we'll get back to this)

    #wget -O /root/.zap/install_zap.sh https://raw.githubusercontent.com/srevinsaju/zap/master/tools/install.sh --2022-02-27 08:35:54-- https://raw.githubusercontent.com/srevinsaju/zap/master/tools/install.sh Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.111.133, 185.199.109.133, ... Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 2869 (2.8K) [text/plain] Saving to: ‘/root/.zap/install_zap.sh’

    /root/.zap/install_ 100%[===================>] 2.80K --.-KB/s in 0.001s

    2022-02-27 08:35:54 (3.78 MB/s) - ‘/root/.zap/install_zap.sh’ saved [2869/2869]

    SUCCESS! Now let's run our install. (still as root)

    #~/.zap# bash install_zap.sh
    Creating /root/.zap
     Downloading the latest 🗲 Zap Release 
    
    #zap --help
    
    Command 'zap' not found, but can be installed with:
    
    apt install dvb-apps        # version 1.1.1+rev1500-1.2, or
    apt install libxbase64-bin  # version 3.1.2-13build1
    

    Well that's definitely not right. Ok, let's check the bash file. Long story short, there are several issues I have. First, echo "#!/bin/bash" > "zap" resolves as an attempted bash. Usually, just to make sure, i do echo -n "#" > "zap" echo -n "!" >> "zap" echo "/bin/bash" >> "zap" . However, we aren't receiving an error, so there's something between "downloading" and echo. My guess is that missing fi on line 46 where your elif for curl starts, but let's just install manually, which I did and i get this.

    #zap
    #zap --help
    #
    

    repeat ad nauseam.

    so, lets check out that zap appimage that got downloaded I opened the properties, it's listed as Size: 0bytes. Obviously, that's not an appimage...it's not anything really. Now back to that quote instead of code....

    /root/.zap/install_ 100%[===================>] 2.80K --.-KB/s in 0.001s

    I notice I got a progress bar and knew what was happening the whole time. I know you're trying to make things clean with -q --show-progress, but I feel like knowing what's going on with a script, having output for people to send, is more important. It's a personal preference, but when people tell me to re-do a command that they quieted, it really irks me. But here it is anyway.

    # wget -O ~/.zap/zapv1.AppImage https://github.com/srevinsaju/zap/releases/download/continuous/zap-x86_64.AppImage
    --2022-02-27 09:32:56--  https://github.com/srevinsaju/zap/releases/download/continuous/zap-x86_64.AppImage
    Resolving github.com (github.com)... 140.82.113.3
    Connecting to github.com (github.com)|140.82.113.3|:443... connected.
    HTTP request sent, awaiting response... 404 Not Found
    2022-02-27 09:32:57 ERROR 404: Not Found.
    

    So, here's where I ask, please....please bring the config arguments back instead of removing them for init. I mean, init is nice, keep init, but just bring back config. In fact, there are several configuration tools that would be nice to have back, appdata, get-md5, show (maybe make the browser opening optional though). But that's not as important. My intent here is to add some compatibility with calls from a bash script so that people can work around any incompatibilities in the system. Can I just zap init before I run my bash? Of course, but then really, that's not true automation and I will spend 1000 years writing an automation script to save 5 seconds.

    I hope this is ample info to solve the current issues with v1 if you're still updating there, and maybe I'll get some feature updates out of this, but either way, thanks for making zap, I just wish it worked for me.

    needs-info stale 
    opened by sullivan-goings 4
  • Zap Fails to Install qBittorrent

    Zap Fails to Install qBittorrent

    I don't know how to determine if an *.AppImage is formatted correctly, so please point me in the right direction if qBittorrent is packaging their *.AppImage incorrectly so I can file a useful issue there.

    When I try to install qBittorrent with the following zap command, it fails to install.

    zap install qbittorrent ~/Downloads/qbittorrent-4.4.5_x86_64.AppImage
    

    Here is a screenshot.

    2022-10-30 12-24-58 - zap qbittorrent

    There is nothing on the start menu or desktop after this. There is also no folder in ~/.local/share/zap/v2/ corresponding to qBittorrent, nor any symbolic link in ~/.local/bin/. Strangely, the correct icon does exist at ~/.local/share/zap/v2/icons/qbittorrent.png. I verified this by opening it in an image viewer.

    System

    Kernel: 5.4.0-131-generic x86_64 bits: 64 compiler: gcc v: 9.4.0 
    Desktop: Cinnamon 5.2.7 wm: muffin dm: LightDM Distro: Linux Mint 20.3 Una 
    base: Ubuntu 20.04 focal
    

    Zap

    Zap version Build:v2.2.1.6.gdc5b7ff 1646814234
    
    opened by kj4ezj 3
  • Update from .appimage file or URL

    Update from .appimage file or URL

    There are situations when we don't have a clear github repo (different releases other than appimage) such as neovim. It would be great if we can

    zap update nvim --from https://.../nvim.appimage

    or

    zap install nvim --from https://.../nvim.appimage --update

    Now if I want to update an existing app, I have to remove it first, then run the installation again. Hope this feature will be possible. Thanks for great app!

    enhancement good first issue 
    opened by goingtosleep 3
  • Headless Installs

    Headless Installs

    Hey, cool tool but zap install --silent etcher fails. It looks like it cannot do headless installs right now. I would love to handle all my appimages with a tool like this. I think this is the best one out so far but the headless installs are the main reason why I'm using something like this anyway.

    I tried yes | zap install --silent etcher but that didn't work either

    opened by ProfessorManhattan 3
  • zap refuses to work

    zap refuses to work

    I have installed zap via the system wide script, and it gives this error.

    [[email protected] ~]$ zap install firefox
    [FATAL] 2022/11/26 18:44:44 main.main:main.go:163 this app does not provide any candidate for installation
    
    opened by Tsu-gu 1
  • Support Installing Multiple Versions of AppImage

    Support Installing Multiple Versions of AppImage

    Hi,

    It would be great if Zap would support installing multiple versions of the same AppImage. The python package is one example where I think it would be useful. Thanks

    enhancement 
    opened by mthbrown 0
  • Roadmap to v3

    Roadmap to v3

    Towards the end of the year, we would like to make some important changes to zap!

    Will keep updating the list overtime!

    • [x] #89 zap init config bug
    • [ ] #43 An easier way to install apps by directly leveraging GitHub API
    • [ ] #84 Integrated Sandbox
    • [ ] #83 Custom installation directory choices
    • [ ] #81 Self Hosted Repositories
      • [ ] #41 GitLab API support
      • [ ] Gitea support (tentative)
    opened by srevinsaju 0
  • AppImage Icons Missing from Zap System Integration

    AppImage Icons Missing from Zap System Integration

    When you install AppImages using zap in Linux Mint 20.3 Cinnamon with system integration, the icons in the start menu and on the taskbar are missing.

    Example 1 - Bitwarden

    Steps to reproduce the issue.

    1. Download the Bitwarden *.AppImage to ~/Downloads/Bitwarden.AppImage.
      curl -fSL 'https://vault.bitwarden.com/download/?app=desktop&platform=linux&variant=appimage' -o ~/Downloads/Bitwarden.AppImage
      
    2. Use zap to install Bitwarden.
      zap install bitwarden ~/Downloads/Bitwarden.AppImage
      
    3. Proceed with installation when asked Downloading bitwarden of size (unknown).. [Y], [Enter]
    4. Approve system integration when prompted ? Do you want to integrate this appimage? [? for help] (y/N). [Y], [Enter]

    The Bitwarden logo, present in the *.AppImage, is missing from the start menu entry and the task bar icon.

    2022-10-07 15-20-07 - Bitwarden logo missing after zap installation

    Note the contents of ~/.local/share/applications/bitwarden.desktop.

    [Desktop Entry]
    Name=Bitwarden (AppImage)
    Exec=bitwarden %U
    Terminal=false
    Type=Application
    Icon=bitwarden
    StartupWMClass=Bitwarden
    X-AppImage-Version=2022.9.1
    GenericName=Password Manager
    Comment=A secure and free password manager for all of your devices.
    MimeType=x-scheme-handler/bitwarden;
    Categories=Utility;
    X-AppImage-Integrate=
    X-Zap-Id=bitwarden
    TryExec=/home/$USER/.local/bin/bitwarden
    

    The file at /home/$USER/.local/bin/bitwarden is a symbolic link pointing to the binary /home/$USER/.local/share/zap/v2/bitwarden. Here, in the v2 folder, you will find an icons subfolder containing bitwarden.png, the *.AppImage icon.

    You can fix the missing icons by giving Icon in bitwarden.desktop the path to this file. Be sure to replace $USER with your username.

    sed -E 's_(Icon=).*$_\1/home/$USER/.local/share/zap/v2/icons/bitwarden.png_' -i ~/.local/share/applications/bitwarden.desktop
    

    This provides the logo zap already has to the GUI integration.

    2022-10-07 16-15-20 - Bitwarden with logo restored

    Example 2 - Joplin

    Here again, when you install Joplin using zap, the icon present in the *.AppImage file is saved by zap but missing from the system integration.

    zap install --from 'https://github.com/laurent22/joplin/releases/download/v2.8.8/Joplin-2.8.8.AppImage' joplin
    

    It can be restored by pointing the Icon field in the joplin.desktop file to the icon zap saved. Be sure to replace $USER with your username.

    sed -E 's_(Icon=).*$_\1/home/$USER/.local/share/zap/v2/icons/joplin.png_' -i ~/.local/share/applications/joplin.desktop
    

    This fixes the issue.

    System

    System

    Kernel: 5.4.0-126-generic x86_64 bits: 64 compiler: gcc v: 9.4.0 
    Desktop: Cinnamon 5.2.7 wm: muffin dm: LightDM Distro: Linux Mint 20.3 Una 
    base: Ubuntu 20.04 focal
    

    Zap

    $ zap --version
    Zap version Build:v2.2.1.6.gdc5b7ff 1646814234
    
    opened by kj4ezj 2
Releases(continuous)
Owner
Srevin Saju
Google Code-In GPW 2019 @sugarlabs. Working on interesting and open source software, free for everyone @KDE @vector-im @AppImage
Srevin Saju
[DEPRECATED] YUM package manager

⛔ This project is deprecated. Please use DNF, the successor of YUM. YUM Yum is an automatic updater and installer for rpm-based systems. Included prog

111 Dec 20, 2022
Python dependency management and packaging made easy.

Poetry: Dependency Management for Python Poetry helps you declare, manage and install dependencies of Python projects, ensuring you have the right sta

Poetry 23.2k Jan 05, 2023
Library Management System

Library Management Library Management System How to Use run main.py python file. python3 main.py Links Download Source Code: Click Here My Github Aco

Mohammad Dori 3 Jul 15, 2022
A PDM plugin that packs your packages into a zipapp

pdm-packer A PDM plugin that packs your packages into a zipapp Requirements pdm-packer requires Python =3.7 Installation If you have installed PDM wi

Frost Ming 23 Dec 29, 2022
The Python package installer

pip - The Python Package Installer pip is the package installer for Python. You can use pip to install packages from the Python Package Index and othe

Python Packaging Authority 8.4k Dec 30, 2022
A tool to upgrade dependencies to the latest versions

pip-check-updates A tool to upgrade dependencies to the latest versions, inspired by npm-check-updates Install From PyPi pip install pip-check-updates

Zeheng Li 12 Jan 06, 2023
PokerFace is a Python package for various poker tools.

PokerFace is a Python package for various poker tools. The following features are present in PokerFace... Types for cards and their componen

Juho Kim 21 Dec 29, 2022
Example for how to package a Python library based on Cython.

Cython sample module This project is an example of a module that can be built using Cython. It is an upgrade from a similar model developed by Arin Kh

Juan José García Ripoll 4 Aug 28, 2022
The delightful package manager for AppImages

⚡️ Zap The delightful package manager for AppImages Report bug · Request feature Looking for the older Zap v1 (Python) implementation? Head over to v1

Srevin Saju 368 Jan 04, 2023
Install All Basic Termux Packages To Your Phone

~All-Packages~ The Easiest Way To Install All Termux Packages 🤗 Tool By ⒹⓈ᭄ʜʏᴅʀᴀ✘๛ˢᴸ 👇 Contact Me On 👇 AVAILABLE ON : Termux TESTED ON : Term

ⒹⓈ ʜʏͥᴅᷧʀᷟᴀ✘๛ˢᴸ 7 Nov 12, 2022
A flexible package manager that supports multiple versions, configurations, platforms, and compilers.

Spack Spack is a multi-platform package manager that builds and installs multiple versions and configurations of software. It works on Linux, macOS, a

Spack 3.1k Jan 09, 2023
Template repo for a GCP-hosted REST API with automatic API versioning and custom domain mapping

Python + Poetry REST API with FastAPI, hosted on GCP This template will get you ready to deploy a FastAPI app in Google Cloud with automatic API versi

Kevin Duff 10 Dec 25, 2022
A set of tools to keep your pinned Python dependencies fresh.

pip-tools = pip-compile + pip-sync A set of command line tools to help you keep your pip-based packages fresh, even when you've pinned them. You do pi

Jazzband 6.5k Dec 29, 2022
Easy to use, fast, git sourced based, C/C++ package manager.

Yet Another C/C++ Package Manager Easy to use, fast, git sourced based, C/C++ package manager. Features No need to install a program, just include the

31 Dec 21, 2022
Python Environment & Package Manager

Python Environment Manager A Visual Studio Code extension that provides the ability to via and manage all of your Python environments & packages from

Don Jayamanne 72 Dec 29, 2022
pip-run - dynamic dependency loader for Python

pip-run provides on-demand temporary package installation for a single interpreter run. It replaces this series of commands (or their Windows equivale

Jason R. Coombs 79 Dec 14, 2022
For when Poetry just doesn't work.

Ballad For when Poetry just doesn't work. Have you tried setting up Poetry, but something doesn't work? Maybe you're... Trying to implement Github Act

BD103 4 Dec 06, 2021
:package: :fire: Python project management. Manage packages: convert between formats, lock, install, resolve, isolate, test, build graph, show outdated, audit. Manage venvs, build package, bump version.

THE PROJECT IS ARCHIVED Forks: https://github.com/orsinium/forks DepHell -- project management for Python. Why it is better than all other tools: Form

DepHell 1.7k Dec 30, 2022
Python dependency management and packaging made easy.

Poetry: Dependency Management for Python Poetry helps you declare, manage and install dependencies of Python projects, ensuring you have the right sta

Poetry 23.1k Jan 01, 2023
A Poetry plugin for dynamically extracting the package version.

Poetry Version Plugin A Poetry plugin for dynamically extracting the package version. It can read the version from a file __init__.py with: # __init__

Sebastián Ramírez 264 Dec 22, 2022