dubuntu-team team mailing list archive
-
dubuntu-team team
-
Mailing list archive
-
Message #00077
Re: cli frontend
Awesome but i take it your talking about the CLI frontend?
> From: jay.27182818@xxxxxxxxx
> To: dubuntu-team@xxxxxxxxxxxxxxxxxxx
> Date: Sun, 5 Jul 2009 05:34:22 +0300
> Subject: [Dubuntu-team] cli frontend
>
> hi guys.
>
> it will take me a day or two to bring the front end to some good shape
> so that we could start working on it in bzr.
>
> now i'd like to show you some basic commands that the front end will
> support. i call it dpm. and here's a console dump:
>
> $ dpm help
> dpm should be invoked using this format:
>
> dpm <command> [<arguments>]
>
> where <command> is one of the following:
>
> help - view short description of dpm usage,
> open - open a package category,
> close - close a previously open package category,
> list - output a list of items inside a package category,
> create - add a category or package to local database,
> destroy - remove a category or package from local database,
> read - show description of a category or package,
> write - update description of a category or package,
> install - install a category or package,
> remove - remove a category or package.
>
> you can type 'gpm help <command>' to view description of a specific
> command.
> $
>
> and here's an explanation. first of all a (local/central) database will
> contain a treelike hierarchy of packages and package categories - much
> like a filesystem. currently dpm supports absolute paths
> (e.g. /category/package) and a subset of relative paths -
> e.g. ./category/package but not ../category/../../package.
>
> system administrators will be free to do everything they want with local
> databases. dpm will provide a way to share some part or entire
> configuration over internet and to synchronize with our central database
> or other databases. the central database will be hosted on our website
> and clients will connect to it using a webservice. for now we will
> concentrate on synchronization and later we will talk about sharing. i
> mean if i'm an opengl guy and i know what is needed to develop opengl
> apps in c++ i could create a category '/programming/opengl/c++' in my
> local database, populate it with relevant items and share it with the
> entire community.
>
> now back to the commands.
>
> 'open' works much like 'cd'. it updates DPM_CURRENT_LOCATION environment
> variable which is used as a prefix for relative paths.
>
> 'close' unsets DPM_CURRENT_LOCATION. when it's not set current location
> is '/' and relative paths are resolved relative to the root.
>
> 'create' works this way:
> $ dpm create <name> [title=]<title> [info=]<info> ...
>
> if <name> ends with a forward slash then it's treated as a category name
> - otherwise as a package name. i'll provide more info about available
> fields as soon as it's possible.
>
> i think that 'destroy' doesn't need an explanation. it just deletes
> approp. record from the database.
>
> 'read' either reads all the fields for a given <name> or if supplied by
> a list of field names fetches and displays only those. 'write' allows
> you to update either entire record or certain fields only.
>
> 'dpm write <name> name=<new_name>' can be used to rename a package or
> category.
>
> install/remove are quite self-explanatory.
>
> a real-world example:
>
> $ dpm open /programming/languages/c/compilers
> $ dpm list
> cc
> gcc
> $ dpm create mycc title="My C Compiler" info="blah blah blah"
> version=...
> $ dpm list
> cc
> gcc
> mycc
> $ dpm install mycc
> ...
>
> current progress:
>
> help, open, close - done.
> list - almost done.
> create, destroy, read, write - half done.
> install, remove - i will make some additional research before
> implementing them.
>
> about downloading:
> currently all debian utilities don't provide any way to
> stop/resume/control downloading so if you're downloading your favorite
> movie but suddenly you decide to update your system you can be sure the
> the first download will either break or its speed will drop down to
> almost zero. all our front ends must provide a way to stop/pause
> downloading.
>
> how installation works: dpm reads approp. database record, extracts
> debian repo url, downloads a package and passes it to dpkg. pretty
> simple. maybe i will use apt in some way to handle repository catalogs,
> certificates etc. this is currently what i'm trying to learn about.
>
> conclusion:
> it's just a sketch and many things will be changed but we just need to
> start with something. so how do you like it?
>
> regards,
> jay
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~dubuntu-team
> Post to : dubuntu-team@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~dubuntu-team
> More help : https://help.launchpad.net/ListHelp
_________________________________________________________________
POP access for Hotmail is here! Click here to find out more
http://windowslive.ninemsn.com.au/article.aspx?id=802246
References