Git Product home page Git Product logo

pisi's Introduction

PISI - Packages Installed Succesfully as Intended

PISI package manager of Pardus linux distribution. The original development branch by the original author. It is prononunced as "pee-see".

##Synopsis:

PISI is the next-gen package manager initially developed for the PARDUS distribution in 2005. In Turkish, PISI means "kitty", and like a kitty, it is featureful and small. Multiple Linux distributions have adopted or tried PISI.

Some of its distinctive features:

  • Implemented in python
  • Efficient and small
  • Package sources are written in XML and python
  • Fast database access implemented with Berkeley DB
  • Integrates low-level and high-level package operations (dependency resolution)
  • Framework approach to build applications and tools upon
  • Comprehensive CLI and a user-friendly qt GUI (distributed separately)
  • Extremely simple package construction

PISI is quite portable and appropriate for embedded systems, and is a comprehensive packaging solution for any OS environment beyond Pardus derivatives.

##Package contents:

  • build: build scripts
  • doc: documentation
  • pisi: PISI python package sources
  • po: translations
  • scripts: additional PISI tools
  • tmp: temporary directory used for testing
  • tests: unit tests, stress tests and test scripts
  • tools: misc. tools used by developers

##Basic usage:

PISI is self-documenting. To see help about basic usage, simply issue

$ pisi --help

Usage: pisi [options] <command> [arguments]

where <command> is one of:

        add-repo (ar) - Add a repository
           build (bi) - Build PISI packages
                check - Verify installation
                clean - Clean stale locks
configure-pending (cp) - Configure pending packages
    delete-cache (dc) - Delete cache files
          emerge (em) - Build and install PISI source packages from repository
                graph - Graph package relations
             help (?) - Prints help for given commands
           index (ix) - Index PISI files in a given directory
                 info - Display package information
         install (it) - Install PISI packages
  list-available (la) - List available packages in the repositories
 list-components (lc) - List available components
  list-installed (li) - Print the list of all installed packages  
    list-pending (lp) - List pending packages
       list-repo (lr) - List repositories
    list-sources (ls) - List available sources
   list-upgrades (lu) - List packages to be upgraded
     rebuild-db (rdb) - Rebuild Databases
          remove (rm) - Remove PISI packages
     remove-repo (rr) - Remove repositories
          search (sr) - Search packages
     search-file (sf) - Search for a file
     update-repo (ur) - Update repository databases
         upgrade (up) - Upgrade PISI packages

Use "pisi help <command>" for help on a specific command.


Options:
  --version   show program's version number and exit
  -h, --help  show this help message and exit
$ pisi help install
install (it): 
Install PISI packages

Usage: install <package1> <package2> ... <packagen>

You may use filenames, URI's or package names for packages. If you have
specified a package name, it should exist in a specified repository.

You can also specify components instead of package names, which will be
expanded to package names.


Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -B, --ignore-comar    bypass comar configuration agent
  -S, --bypass-safety   bypass safety switch
  -n, --dry-run         do not perform any action, just show what would be
                        done
  -E, --ignore-dependency
                        do not take dependency information into account
  --reinstall           Reinstall already installed packages
  --ignore-file-conflicts
                        Ignore file conflicts
  --ignore-build-no     do not take build no into account.
  -D DESTDIR, --destdir=DESTDIR
                        change the system root for pisi commands
  -y, --yes-all         assume yes in all yes/no queries
  -u USERNAME, --username=USERNAME
  -p PASSWORD, --password=PASSWORD
  -v, --verbose         detailed output
  -d, --debug           show debugging information
  -N, --no-color        print like a man
  -L BANDWIDTH_LIMIT, --bandwidth-limit=BANDWIDTH_LIMIT
                        Keep bandwidth usage under specified KB's

PISI has an advanced CLI tool that allows you to access both low-level and high-level package operations easily. You can arrange repos, view package DB's, build, install, upgrade, remove, and search packages, install packages from sources as in Gentoo distribution with an equivalent emerge command.

You may find extra tools in the scripts directory:

$ ls -G scripts
calc-build-order.py       fix_old_metadata_files.py repostats.py
cat-db.py                 lspisi                    residuary-binary.py
check-source-repo.py      missing-binary.py         rmcomp-source-repo.py
convert_history.py        pisimedia                 unpisi
fetchAll.py               pisish
find-lib-deps.py          repo-diff.py

You may also try pisish, a PISI CLI that works like a shell:

$ pisish
Welcome to the interactive PISI shell.
Type "help" to see a list of commands.
To end the session, type "exit".
You can run system commands by prefixing with '!' as in '!ls'.
Copyright 2006 (c) Pardus.

pisi> 

Eray Ozkural, PhD

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.