• Stars
    star
    241
  • Rank 167,643 (Top 4 %)
  • Language
    Python
  • License
    Apache License 2.0
  • Created about 4 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A fast, futuristic package manager for Windows.

Electric

A futuristic, powerful and fast package manager for Windows.


Installing 7-Zip Through Electric

Highly optimized for speed and usability, Electric is anywhere from 200% to 1500% faster than other market competitors for downloading Applications and Packages, and has incredible speeds for concurrent / parallel downloading.

Electric believes in incredible efficiency, and is the only Windows package manager that officially supports installing packages concurrently.

Built for today's systems and with good support for lower specced systems, Electric runs smoothly even on systems with as little as 2 GB of ram!

Note: Since electric is in an alpha phase, it might not be completely stable yet. Feel free to open any issues or bug reports at issues.

⚑ Installation

First you'll need to set your execution policy to RemoteSigned if not done so:

Set-ExecutionPolicy RemoteSigned

Method 1: Install Using Official Installer

Download the latest version of the electric Installer from the Releases Page

After completing the download, run the installer and follow the simple installation prompts.

Open your Command Prompt (cmd.exe) or alternatively Powershell (powershell.exe) and type electric to get a list of help commands.

Method 2: Install Using Powershell

Run the following command on your powershell window:

iwr -useb get.electric.sh | iex

Method 3: Build From Source

Prerequisites: Git, Python 3.x

  1. Clone the github repository using the Github CLI.
git clone https://www.github.com/electric-package-manager/electric
  1. Change to the electric directory.
cd electric
  1. Install it locally using the Python package manager (pip)
pip install --editable .
  1. Register Tab Completion

  2. Type electric to get a help menu of commands.


πŸ§ͺ Testing

First, make sure you Build From Source.

Run this command to run the tests for electric

python -m unittest discover src/tests

πŸ‘ Supporters

Stargazers repo roster for @electric-package-manager/electric

Forkers repo roster for @electric-package-manager/electric


πŸ”¨ Build Status

Feature Build Status
Installation βœ…
Portable Installation βœ…
Uninstallation βœ…
Update βœ…
Show βœ…
List βœ…
Search βœ…
Code Editor Extension Installation βœ…
Python Package Installation βœ…
NodeJS Package Installation βœ…
Configuration Management βœ…
Cleanup βœ…
Tab Completion βœ…

Tab Completion

When using the official Electric installer, tab completion is setup for you out of the box, however, it is possible to manually add tab completion for electric. Add the below lines to your powershell profile:

Register-ArgumentCompleter -Native -CommandName electric -ScriptBlock {
    param($wordToComplete, $commandAst, $cursorPosition)
    [Console]::InputEncoding = [Console]::OutputEncoding = $OutputEncoding = [System.Text.Utf8Encoding]::new()
    $Local:word = $wordToComplete.Replace('"', '""')
    $Local:ast = $commandAst.ToString().Replace('"', '""')
    electric complete --word="$Local:word" --commandline "$Local:ast" --position $cursorPosition | ForEach-Object {
        [System.Management.Automation.CompletionResult]::new($_, $_, 'ParameterValue', $_)
    }
}

Then, restart your powershell and you've setup tab completion!

Authors

Tejas - Founder And Developer Of Electric

See also the list of contributors who participated in this project.

Special thanks to: @ZaphodElevated who built the terminal animation you saw above.

Built With

Python 3

Click

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the Apache 2.0 License - see the LICENSE.md file for details.