public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] Portage http interface
@ 2002-11-15 15:26 Troy Dack
  2002-11-16  8:49 ` Peter Ruskin
                   ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: Troy Dack @ 2002-11-15 15:26 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 666 bytes --]

Hi all,
	I've just started playing with/learning about python and while reading
the docs noticed that it had a http server module.  So I thought I'd
have a bash at throwing together a webmin type front end for portage.

Th results are attached.  It's not very functional at the moment, but I
thought I'd share it and get peoples opinions.

Installation is simple:

1. Save the attachment somewhere comfortable as: portageserver.py
2. make it executable (chmod o+x portageserver.py)
3. run it /path/to/portageserver.py

Usage is even easier, just point your browser @ http://localhost:9000

Let me know what you think.

Thanks
-- 
	Troy Dack
	http://linux.tkdack.com

[-- Attachment #2: portageserver.py --]
[-- Type: text/x-python, Size: 5578 bytes --]

#!/usr/bin/env python2.2

import SocketServer
import BaseHTTPServer
import sys
import os
import cgi
import socket
import urllib
import portage
from string import *


class ClientAbortedException(Exception):
	pass

class PortageServer(BaseHTTPServer.HTTPServer):
	def __init__(self):
		SocketServer.TCPServer.__init__(
			self,
			('127.0.0.1', 9000),
			PortageRequestHandler)

	def server_bind(self):
		# set SO_REUSEADDR (if available on this platform)
		if hasattr(socket, 'SOL_SOCKET') and hasattr(socket, 'SO_REUSEADDR'):
			self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
		BaseHTTPServer.HTTPServer.server_bind(self)

class PortageRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):

	VERSION_SHORT=1
	VERSION_RELEASE=2
	
	installcache = portage.db["/"]["vartree"]

	PortageTree = {}

	for node in portage.portdb.cp_all():
		if not PortageTree.has_key(split(node, "/")[0]):
			# need to make a new key first
			PortageTree[split(node, "/")[0]] = []
		# add the package to the list for this category
		PortageTree[split(node, "/")[0]].append(split(node, "/")[1])
	categories = PortageTree.keys()
	categories.sort()

	def do_GET(self):
		try:
			self._perform_GET()
		except ClientAbortedException:
        		pass

	def _perform_GET(self):
		path = self.translate_path()
		if path is None:
        		self.send_error(400, 'Illegal URL construction')
                if len(path) == 0:
		        self._rootdir()
		elif (len(path) == 2) and (path[0] == 'category'):
		        self._categorydir(path[1])
                return

	def _rootdir(self):
		self.send_response(200)
		self.send_header("Content-Type", 'text/html')
		self.end_headers()

		self.wfile.write("""
<html>
        <head>
	        <title>Gentoo Portage</title>
        </head>
        <body>
	        <h1>Categories</h1>
		<p><b>""" + str(len(self.PortageTree)) + """</b> Categories</p>\n""")

		for category in self.categories:
		        self.wfile.write("""
			<a href="/category/""" + category + """">""" + category + "</a> ( " + str(len(self.PortageTree[category])) + " ) </br>")
		self.wfile.write("""
        </body>
</html>""")
		return

	def _categorydir(self, category):
		self.send_response(200)
		self.send_header("Content-Type", 'text/html')
		self.end_headers()
		self.wfile.write("""
<html>
        <head>
	        <title>Gentoo Portage - """ + category + """</title>
        </head>
        <body>
	        <h1>Packages in: """ + category + """ </h1>
		<p><b>""" + str(len(self.PortageTree[category])) + """</b> Packages</p>
	        <a href="/">Back</a>
		<table>
			<tr>
			        <td style="text-align: center">
				        Emerge?
			        </td>
			        <td>
				        Package Name
			        </td>
			        <td>
				        Latest Available
			        </td>
				<td>
				        Latest Installed
				</td>
				<td>
				        Description
				</td>
			</tr>""")
		i = 0
		for app in self.PortageTree[category]:
			if i % 2 == 0:
			        rowcolor = "white"
			else:
			        rowcolor = "light grey"
		        match = category + "/" + app
			masked = ""
			full_package = portage.portdb.xmatch("bestmatch-visible",match)
			if not full_package:
				#no match found; we don't want to query description
				full_package=portage.best(portage.portdb.xmatch("match-all",match))
				if not full_package:
					continue
				else:
					masked = """</br><span style="color: red;">** Masked **</span>"""
					rowcolor = "pink"
			try:
				full_desc = portage.portdb.aux_get(full_package,["DESCRIPTION"])[0]
			except KeyError:
				print "emerge: search: aux_get() failed, skipping"
				continue
			myver = self.getVersion(full_package, self.VERSION_RELEASE)
			i += 1
		        self.wfile.write("""
			<tr style="background-color: """ + rowcolor + """;">
			        <td style="text-align: center">
				        <input type="checkbox">
			        </td>
				<td>
				        """ + app + """
			        </td>
			        <td>
				        """ + myver + """
			        </td>
				<td>
				        """ + self.getInstallationStatus(match) + masked + """
				</td>
				<td>
				        """ + full_desc + """
			        </td>
			</tr>""")
		self.wfile.write("""
		</table>
        </body>
</html>""")
		return

	def getVersion(self,full_package,detail):
		if len(full_package) > 1:
			package_parts = portage.catpkgsplit(full_package)
			if detail == self.VERSION_RELEASE and package_parts[3] != 'r0':
				result = package_parts[2]+ "-" + package_parts[3]
			else:
				result = package_parts[2]
		else:
			result = ""
		return result

	def getInstallationStatus(self,package):
		installed_package = portage.portdb.xmatch("bestmatch-visible", package)
		result = ""
		version = self.getVersion(installed_package,self.VERSION_RELEASE)
		if len(version) > 0:
			result = version
		else:
			result = "Not Installed"
		return result
	
	def translate_path(self):
		parts = split(urllib.unquote(self.path), '/')
		parts = filter(None, parts)
		while 1:
			try:
				parts.remove('.')
			except ValueError:
				break
		while 1:
			try:
			        idx = parts.index('..')
			except ValueError:
				break
			if idx == 0:
				# illegal path: the '..' attempted to go above the root
				return None
			del parts[idx-1:idx+1]
		return parts

# Main Program
if __name__ == '__main__':

	svr = PortageServer()

	print "Portage Server: serving on port 8080..."
	svr.serve_forever()


[-- Attachment #3: Type: text/plain, Size: 37 bytes --]

--
gentoo-dev@gentoo.org mailing list

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-15 15:26 [gentoo-dev] Portage http interface Troy Dack
@ 2002-11-16  8:49 ` Peter Ruskin
  2002-11-16  9:39   ` Troy Dack
  2002-11-16 13:42 ` Alexander Futasz
  2002-11-16 14:10 ` Troy Dack
  2 siblings, 1 reply; 13+ messages in thread
From: Peter Ruskin @ 2002-11-16  8:49 UTC (permalink / raw
  To: gentoo-dev

On Friday 15 Nov 2002 15:26, Troy Dack wrote:
> Hi all,
> 	I've just started playing with/learning about python and while reading
> the docs noticed that it had a http server module.  So I thought I'd
> have a bash at throwing together a webmin type front end for portage.
>
> Th results are attached.  It's not very functional at the moment, but I
> thought I'd share it and get peoples opinions.
>
> Installation is simple:
>
> 1. Save the attachment somewhere comfortable as: portageserver.py
> 2. make it executable (chmod o+x portageserver.py)
> 3. run it /path/to/portageserver.py
>
> Usage is even easier, just point your browser @ http://localhost:9000
>
> Let me know what you think.
>
> Thanks
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 24
    def server bind(self):
                  ^
SyntaxError: invalid syntax

-- 
Gentoo Linux 1.4 (Portage 2.0.44 (default-x86-1.4, gcc-3.2, glibc-2.3.1-r2)).  
KDE: 3.0.99 (KDE 3.1 RC3)  Qt: 3.1.0
AMD Athlon(tm) XP 1900+ 512MB.	Kernel: 2.4.19-win4lin.	GCC 3.2
Linux user #275590 (http://counter.li.org/).  up 22:38.


--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-16  8:49 ` Peter Ruskin
@ 2002-11-16  9:39   ` Troy Dack
  2002-11-16 10:36     ` Peter Ruskin
  0 siblings, 1 reply; 13+ messages in thread
From: Troy Dack @ 2002-11-16  9:39 UTC (permalink / raw
  To: gentoo-dev

On Sat, 2002-11-16 at 19:49, Peter Ruskin wrote:
> On Friday 15 Nov 2002 15:26, Troy Dack wrote:
> > Let me know what you think.
> >
> > Thanks
> $ portageserver.py
>   File "/usr/local/bin/portageserver.py", line 24
>     def server bind(self):
>                   ^
> SyntaxError: invalid syntax

For some reason you are missing an underscore, that line should read:

        def server_bind(self):

That is with an underscore joining server and bind(self):

-- 
	Troy Dack
	http://linux.tkdack.com


--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-16  9:39   ` Troy Dack
@ 2002-11-16 10:36     ` Peter Ruskin
  2002-11-16 11:43       ` Troy Dack
                         ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: Peter Ruskin @ 2002-11-16 10:36 UTC (permalink / raw
  To: gentoo-dev

On Saturday 16 Nov 2002 09:39, Troy Dack wrote:
> On Sat, 2002-11-16 at 19:49, Peter Ruskin wrote:
> > On Friday 15 Nov 2002 15:26, Troy Dack wrote:
> > > Let me know what you think.
> > >
> > > Thanks
> >
> > $ portageserver.py
> >   File "/usr/local/bin/portageserver.py", line 24
> >     def server bind(self):
> >                   ^
> > SyntaxError: invalid syntax
>
> For some reason you are missing an underscore, that line should read:
>
>         def server_bind(self):
>
> That is with an underscore joining server and bind(self):

I just pasted from your email.  There were *no* underscores.  I use kmail - 
you use evolution.  I think I relaced all the spaces with underscores but 
still get an error:

$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 27
    self.socket.setsockopt(socket.SOL SOCKET, socket.SO REUSEADDR, 1)
                                           ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 32
    VERSION SHORT=1
                ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 39
    for node in portage.portdb.cp all():
                                    ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 40
    if not PortageTree.has key(split(node, "/")[0]):
                             ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 48
    def do GET(self):
             ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 50
    self. perform GET()
                    ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 54
    def  perform GET(self):
                   ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 55
    path = self.translate path()
                             ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 57
    self.send error(400, 'Illegal URL construction')
                  ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 65
    self.send response(200)
                     ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 66
    self.send header("Content-Type", 'text/html')
                   ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 87
    self.send response(200)
                     ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 89
    self.end headers()
                   ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 125
    full package = portage.portdb.xmatch("bestmatch-visible",match)
               ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 128
    full package=portage.best(portage.portdb.xmatch("match-all",match))
               ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 135
    full desc = portage.portdb.aux get(full package,["DESCRIPTION"])[0]
            ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 135
    full_desc = portage.portdb.aux get(full_package,["DESCRIPTION"])[0]
                                     ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 139
    myver = self.getVersion(full package, self.VERSION RELEASE)
                                       ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 156
    """ + full desc + """
                  ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 165
    def getVersion(self,full package,detail):
                                   ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 166
    if len(full package) > 1:
                      ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 167
    package_parts = portage.catpkgsplit(full package)
                                                   ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 168
    if detail == self.VERSION_RELEASE and package parts[3] != 'r0':
                                                      ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 177
    installed package = portage.portdb.xmatch("bestmatch-visible", package)
                    ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 186
    def translate path(self):
                     ^
SyntaxError: invalid syntax
$ portageserver.py
  File "/usr/local/bin/portageserver.py", line 211
    svr.serve forever()
                    ^
SyntaxError: invalid syntax
$ portageserver.py
Traceback (most recent call last):
  File "/usr/local/bin/portageserver.py", line 206, in ?
    if   name   == '  main  ':
NameError: name 'name' is not defined

-- 
Gentoo Linux 1.4 (Portage 2.0.44 (default-x86-1.4, gcc-3.2, glibc-2.3.1-r2)).  
KDE: 3.0.99 (KDE 3.1 RC3)  Qt: 3.1.0
AMD Athlon(tm) XP 1900+ 512MB.	Kernel: 2.4.19-win4lin.	GCC 3.2
Linux user #275590 (http://counter.li.org/).  up 1 day, 12 h, 12 min


--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-16 10:36     ` Peter Ruskin
@ 2002-11-16 11:43       ` Troy Dack
  2002-11-16 12:49         ` Peter Ruskin
  2002-11-16 11:47       ` José Fonseca
  2002-11-19 19:55       ` Per Wigren
  2 siblings, 1 reply; 13+ messages in thread
From: Troy Dack @ 2002-11-16 11:43 UTC (permalink / raw
  To: Peter Ruskin, gentoo-dev

On Sat, 16 Nov 2002 21:36, Peter Ruskin wrote:
>
> I just pasted from your email.  There were *no* underscores.  I use kmail -
> you use evolution.  I think I relaced all the spaces with underscores but
> still get an error:
>

Hmm .... that's just weird.  In KMail 1.4.3 (KDE-3.0.4) I get the attachment 
fine, same with evolution.

Oh well, try here http://linux.tkdack.com/downloads/gentoo/portageserver 
(if you haven't lost your patience)

-- 
	Troy Dack


--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-16 10:36     ` Peter Ruskin
  2002-11-16 11:43       ` Troy Dack
@ 2002-11-16 11:47       ` José Fonseca
  2002-11-16 12:55         ` Peter Ruskin
  2002-11-19 19:55       ` Per Wigren
  2 siblings, 1 reply; 13+ messages in thread
From: José Fonseca @ 2002-11-16 11:47 UTC (permalink / raw
  To: gentoo-dev

On Sat, Nov 16, 2002 at 10:36:01AM +0000, Peter Ruskin wrote:
> 
> I just pasted from your email.  There were *no* underscores.  I use kmail - 

Why copy&paste!? That's just asking for trouble. Why not simply saving the
attachement.

José Fonseca
__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com

--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-16 11:43       ` Troy Dack
@ 2002-11-16 12:49         ` Peter Ruskin
  0 siblings, 0 replies; 13+ messages in thread
From: Peter Ruskin @ 2002-11-16 12:49 UTC (permalink / raw
  To: gentoo-dev

On Saturday 16 Nov 2002 11:43, Troy Dack wrote:
> On Sat, 16 Nov 2002 21:36, Peter Ruskin wrote:
> > I just pasted from your email.  There were *no* underscores.  I use kmail
> > - you use evolution.  I think I relaced all the spaces with underscores
> > but still get an error:
>
> Hmm .... that's just weird.  In KMail 1.4.3 (KDE-3.0.4) I get the
> attachment fine, same with evolution.
>
> Oh well, try here http://linux.tkdack.com/downloads/gentoo/portageserver
> (if you haven't lost your patience)

That worked fine :-)  It looks really good and is pretty fast on my box.  It 
would be a great tool if it could emerge, unmerge, inject, etc.

Peter
-- 
Gentoo Linux 1.4 (Portage 2.0.44 (default-x86-1.4, gcc-3.2, glibc-2.3.1-r2)).  
KDE: 3.0.99 (KDE 3.1 RC3)  Qt: 3.1.0
AMD Athlon(tm) XP 1900+ 512MB.	Kernel: 2.4.19-win4lin.	GCC 3.2
Linux user #275590 (http://counter.li.org/).  up 1 day, 2 h, 35 min


--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-16 11:47       ` José Fonseca
@ 2002-11-16 12:55         ` Peter Ruskin
  0 siblings, 0 replies; 13+ messages in thread
From: Peter Ruskin @ 2002-11-16 12:55 UTC (permalink / raw
  To: gentoo-dev

On Saturday 16 Nov 2002 11:47, José Fonseca wrote:
> On Sat, Nov 16, 2002 at 10:36:01AM +0000, Peter Ruskin wrote:
> > I just pasted from your email.  There were *no* underscores.  I use kmail
> > -
>
> Why copy&paste!? That's just asking for trouble. Why not simply saving the
> attachement.
>
It usually works OK.  I'm using kmail in KDE-3.1_RC3.  I had set "View 
attachments inline" so suspected that.  Now I have "View attachments as 
icons", saved that one but no underscores in sight :-(

Used konqueror to download from Troy's site; konq opened it in kwrite and 
that's perfect ... weird.

Peter
-- 
Gentoo Linux 1.4 (Portage 2.0.44 (default-x86-1.4, gcc-3.2, glibc-2.3.1-r2)).  
KDE: 3.0.99 (KDE 3.1 RC3)  Qt: 3.1.0
AMD Athlon(tm) XP 1900+ 512MB.	Kernel: 2.4.19-win4lin.	GCC 3.2
Linux user #275590 (http://counter.li.org/).  up 1 day, 2 h, 38 min


--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-15 15:26 [gentoo-dev] Portage http interface Troy Dack
  2002-11-16  8:49 ` Peter Ruskin
@ 2002-11-16 13:42 ` Alexander Futasz
  2002-11-16 14:10 ` Troy Dack
  2 siblings, 0 replies; 13+ messages in thread
From: Alexander Futasz @ 2002-11-16 13:42 UTC (permalink / raw
  To: gentoo-dev

On 16 Nov 2002 02:26:15 +1100, Troy Dack wrote:
> Hi all,
> 	I've just started playing with/learning about python and while
> reading the docs noticed that it had a http server module.  So I
> thought I'd have a bash at throwing together a webmin type front end
> for portage. Let me know what you think.

very nice. it fails to detect what is installed and what not though.

-alex

--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-15 15:26 [gentoo-dev] Portage http interface Troy Dack
  2002-11-16  8:49 ` Peter Ruskin
  2002-11-16 13:42 ` Alexander Futasz
@ 2002-11-16 14:10 ` Troy Dack
  2002-11-16 14:39   ` Johannes Findeisen
  2 siblings, 1 reply; 13+ messages in thread
From: Troy Dack @ 2002-11-16 14:10 UTC (permalink / raw
  To: gentoo-dev

On Sat, 2002-11-16 at 02:26, Troy Dack wrote:
> Hi all,
> 	I've just started playing with/learning about python and while reading
> the docs noticed that it had a http server module.  So I thought I'd
> have a bash at throwing together a webmin type front end for portage.
> 

Thanks to all those that have replied.

I've fixed the bug where it would not detect the installed packages
correctly.

Updated versions of the script can be found at:
http://linux.tkdack.com/downloads/gentoo/portageserver

For instructions and the like:
http://linux.tkdack.com/node.php?title=Portage%20HTTP%20Front%20End

-- 
	Troy Dack
	http://linux.tkdack.com


--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-16 14:10 ` Troy Dack
@ 2002-11-16 14:39   ` Johannes Findeisen
  2002-11-16 15:22     ` Troy Dack
  0 siblings, 1 reply; 13+ messages in thread
From: Johannes Findeisen @ 2002-11-16 14:39 UTC (permalink / raw
  To: gentoo-dev

On Saturday 16 November 2002 15:10, Troy Dack wrote:
> Thanks to all those that have replied.
>
> I've fixed the bug where it would not detect the installed packages
> correctly.
>
> Updated versions of the script can be found at:
> http://linux.tkdack.com/downloads/gentoo/portageserver
>
> For instructions and the like:
> http://linux.tkdack.com/node.php?title=Portage%20HTTP%20Front%20End

hello troy,

this is a very good tool for browsing the portage tree on systems where no x 
is installed. if this tool will get some more features it could be usefull 
like the cups server config tool. it looks like, that you have made it only 
for seeing what other say.... are you interested in developing it in the 
future?

i hope you are because my servers are all installed without any window system. 
good idea! i love it!

regards
hanez... ;-)

--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-16 14:39   ` Johannes Findeisen
@ 2002-11-16 15:22     ` Troy Dack
  0 siblings, 0 replies; 13+ messages in thread
From: Troy Dack @ 2002-11-16 15:22 UTC (permalink / raw
  To: gentoo-dev

On Sun, 2002-11-17 at 01:39, Johannes Findeisen wrote:
> On Saturday 16 November 2002 15:10, Troy Dack wrote:
> > Thanks to all those that have replied.
> >
> > I've fixed the bug where it would not detect the installed packages
> > correctly.
> >
> > Updated versions of the script can be found at:
> > http://linux.tkdack.com/downloads/gentoo/portageserver
> >
> > For instructions and the like:
> > http://linux.tkdack.com/node.php?title=Portage%20HTTP%20Front%20End
> 
> hello troy,
> 
> this is a very good tool for browsing the portage tree on systems where no x 
> is installed. if this tool will get some more features it could be usefull 
> like the cups server config tool. it looks like, that you have made it only 
> for seeing what other say.... are you interested in developing it in the 
> future?
>
> i hope you are because my servers are all installed without any window system. 
> good idea! i love it!
 
I guess that the ultimate aim is to be able to emerge, unmerge, rsync
etc from the browser interface.  Currently I'm learning python and
trying to work out how the portage python module works.

As I learn more about the various pieces of the puzzle (python, portage,
emerge, authentication) I'll be adding extra capability.  Until then i'm
going to play safe and stick with read only. I really don't want to kill
my system, let alone be responsible for killing some one elses.

-- 
	Troy Dack
	http://linux.tkdack.com


--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [gentoo-dev] Portage http interface
  2002-11-16 10:36     ` Peter Ruskin
  2002-11-16 11:43       ` Troy Dack
  2002-11-16 11:47       ` José Fonseca
@ 2002-11-19 19:55       ` Per Wigren
  2 siblings, 0 replies; 13+ messages in thread
From: Per Wigren @ 2002-11-19 19:55 UTC (permalink / raw
  To: Peter Ruskin; +Cc: gentoo-dev

> I just pasted from your email.  There were *no* underscores.  I use kmail -

Just rightclick and save the attachment instead of copy+paste! KMail sometimes 
replaces underscores with spaces for some unknown reason..

// Wigren

--
gentoo-dev@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2002-11-19 19:55 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-11-15 15:26 [gentoo-dev] Portage http interface Troy Dack
2002-11-16  8:49 ` Peter Ruskin
2002-11-16  9:39   ` Troy Dack
2002-11-16 10:36     ` Peter Ruskin
2002-11-16 11:43       ` Troy Dack
2002-11-16 12:49         ` Peter Ruskin
2002-11-16 11:47       ` José Fonseca
2002-11-16 12:55         ` Peter Ruskin
2002-11-19 19:55       ` Per Wigren
2002-11-16 13:42 ` Alexander Futasz
2002-11-16 14:10 ` Troy Dack
2002-11-16 14:39   ` Johannes Findeisen
2002-11-16 15:22     ` Troy Dack

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox