Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
tools:cpm [2017-02-09 15:37] – [Installing the Curry Package Manager] mhtools:cpm [2017-04-25 15:27] – [Overview] mh
Line 4: Line 4:
  
 The Curry Package Manager (CPM) is a tool to distribute and The Curry Package Manager (CPM) is a tool to distribute and
-install Curry libraries and manage version dependencies +install Curry libraries and applications and manage version dependencies 
-between these libraries.+between them.
 These libraries are organized in packages. These libraries are organized in packages.
 There is a central index of all these packages which can There is a central index of all these packages which can
Line 19: Line 19:
 (w.r.t. its API and behavior) with a previous version of (w.r.t. its API and behavior) with a previous version of
 the same package. the same package.
 +
 +The [[http://www-ps.informatik.uni-kiel.de/~mh/curry/cpm_repository.cgi | currently available packages]]
 +can immediately be downloaded or installed when CPM is installed (see below).
 +Using CPM, one can also obtain more detailed information about
 +individual packages.
  
  
 ===== Installing the Curry Package Manager ===== ===== Installing the Curry Package Manager =====
  
-The installation assumes that one of the Curry systems PAKCS or KiCS2 +CPM is already part of recent distributions of the Curry systems 
-in installed and the executable''git'' is in your path. +PAKCS (Version 1.14.3 or higher) and KiCS2 (Version 0.5.2 or higher). 
-Furthermore, the environment variable ''CURRYROOT'' must be +If you have some older version of PAKCS or KiCS2, you can also 
-set to the root directory of your Curry system (or you can +install CPM from its public repository. 
-also modify the definition of this variable in the ''Makefile'' +The installation requires that one of the Curry systems PAKCS or KiCS2 
-before executing ''make'').+is installed and the executables ''curry'' and ''git'' are in your path 
 +(if ''curry'' is not in your path, you can also specify the root location 
 +of your Curry system by modifying the definition of ''CURRYROOT'' 
 +in the ''Makefile'' before executing ''make'' in step 3).
 Then perform the following steps to install CPM: Then perform the following steps to install CPM:
  
-    1> export CURRYROOT=/usr/lib/pakcs +    1> git clone https://git.ps.informatik.uni-kiel.de/curry-packages/cpm.git 
-    2> git clone https://git.ps.informatik.uni-kiel.de/curry/cpm.git +    2> cd cpm 
-    3> cd cpm +    3> make
-    4> make+
  
 If this was successful, the binary ''cpm'' has been generated in the If this was successful, the binary ''cpm'' has been generated in the
-directory ''bin''. For convenient use, put this binary somewhere +directory ''~/.cpm/bin''. This is also the directory where CPM installs binaries 
-in your path or create a symbolic link from some path directory +of tools distributed with packages. For convenient use, you should add the 
-to this binary.+directory ''~/.cpm/bin'' to your path. Alternatively, you can also put 
 +the binary ''~/.cpm/bin/cpm'' somewhere in your path or create a symbolic 
 +link from some path directory to this binary.
  
 ===== Quick Start  ===== ===== Quick Start  =====
Line 62: Line 71:
 Therefore, to initialize it and use other packages, you need Therefore, to initialize it and use other packages, you need
 a package description file in some project directory. a package description file in some project directory.
-All this can be created by the command ''cpm new'' and answering +All this can be created by the command ''cpm new'':
-some questions:+
  
-    > cpm new +    > cpm new myproject
-    Create a new package +
-    -------------------- +
-    What is the name of the new package? myproject +
-    What is the first version of the package? [0.0.1]  +
-    Who is the author of the package? Joe Curry <joe@curry.com> +
-    Please provide a short (one line) summary of what the package does: +
-    > This is just for testing. +
-    A new package in the directory 'myproject' has been created. +
-    Please go into this directory, add dependencies in 'package.json', +
-    and run 'cpm install' to install all dependencies.+
  
-As you will see, an initial package description file ''package.json'' +This command creates a new project directory ''myproject'' 
-and a subdirectory ''src'' has been created. If you need some other package +containing an initial package description file ''package.json'' 
-for your project, add it as a dependency in ''package.json''.+and a subdirectory ''src'' (together with other template files). 
 +If you need some other package for your project, 
 +add it as a dependency in ''package.json''.
 Then run Then run
  
Line 109: Line 109:
 However, if you have developed some package that might be of However, if you have developed some package that might be of
 interest to other Curry users, please send the package interest to other Curry users, please send the package
-as a zip file, or just the package description file +as a tar or zip file to
-''package.json'' (if the package is already in a publicly +
-available git archive) to+
  
     packages (AT) curry-language.org     packages (AT) curry-language.org
/srv/dokuwiki/currywiki/data/pages/tools/cpm.txt · Last modified: 2020-03-14 18:06 by mh
Back to top
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0