Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 06 Sep 2003 14:05:33 -0500
From:      Jeremy Messenger <mezz7@cox.net>
To:        Alexander Leidinger <Alexander@Leidinger.net>
Cc:        gnome@freebsd.org
Subject:   Re: I've played around with gdesklets (patch included for interested parties)
Message-ID:  <opru3dzjxv8ckrg5@smtp.central.cox.net>
In-Reply-To: <20030906164808.3cd86d76.Alexander@Leidinger.net>
References:  <20030906164808.3cd86d76.Alexander@Leidinger.net>

next in thread | previous in thread | raw e-mail | index | archive | help
------------FDDgy6OMJbNs09d1IoUn4M
Content-Type: text/plain; format=flowed; charset=utf-8
Content-Transfer-Encoding: 8bit

On Sat, 6 Sep 2003 16:48:08 +0200, Alexander Leidinger 
<Alexander@Leidinger.net> wrote:

> Hi,
>
> I've played a little bit around, but I have no time to proceed
> further...

What's version of FreeBSD do you have? Here on 5.1-CURRENT, a day before 
ATAng went in the tree. I am having the problem with the refresh here, I 
had to do it manual. Your patch works great, but I have to refresh 
weather, network and others by manual. Strange, the clock is only one that 
doesn't has the refresh problem. I can't figure how I can get them fix.

> Here's a patch for those which want to get useful numbers out of Psi's
> Network-0.1.4 tarball... at least it should spit out useful numbers, the
> Font<something> desklet is missing, so I wasn't able to fully test it.

I have found two very small typo..

> ---snip---
> --- /home/netchild/.gdesklets/Sensors/Network/__init__.py.orig	Sat Sep  
> 6 16:03:47 2003
> +++ /home/netchild/.gdesklets/Sensors/Network/__init__.py	Sat Sep  6 
> 16:45:26 2003
<snip>
> @@ -60,7 +60,7 @@
>  			continue
>
>  	def __get_net_ip(self,device) :
> -		fd = open("/proc/net/arp", "r")
> +		fd = popen("ifconfig " + device, "r")
<snip>

Should be os.popen..

> @@ -69,24 +69,22 @@
>  			l = l.strip()
>  			fields = l.split()
>  			
> -			if fields[5]==device:
> -				return fields[0]
> +			if fields[0]=="inet":
> +				return fields[1]
>  			
>  		return "(no ip for this interface)"
>
>  	def __get_net_in_out(self,device) :
> -		fd = open("/proc/net/dev", "r")
> +		fd = popen("netstat -b -I " + device + " | grep Link", "r")
<snip>

Should be os.popen..

Here are two attaches of FontSelector and Network port in case if you want 
to play with it. I have over 7 applets port here in my local. :-)

Thanks for create the patch!

Cheers,
Mezz

> Bye,
> Alexander.


-- 
bsdforums.org 's moderator, mezz.
------------FDDgy6OMJbNs09d1IoUn4M
Content-Disposition: attachment; filename=gdesklets-fontselector.shar
Content-Type: text/plain; name=gdesklets-fontselector.shar
Content-Transfer-Encoding: 8bit

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	gdesklets-fontselector
#	gdesklets-fontselector/distinfo
#	gdesklets-fontselector/Makefile
#	gdesklets-fontselector/pkg-message
#	gdesklets-fontselector/pkg-plist
#	gdesklets-fontselector/pkg-descr
#	gdesklets-fontselector/files
#	gdesklets-fontselector/files/patch-Install_FontSelector_Sensor.bin
#
echo c - gdesklets-fontselector
mkdir -p gdesklets-fontselector > /dev/null 2>&1
echo x - gdesklets-fontselector/distinfo
sed 's/^X//' >gdesklets-fontselector/distinfo << 'END-of-gdesklets-fontselector/distinfo'
XMD5 (FontSelector-0.1.5.tar.bz2) = 9b21bfd0b135187416b0a88adb62553d
END-of-gdesklets-fontselector/distinfo
echo x - gdesklets-fontselector/Makefile
sed 's/^X//' >gdesklets-fontselector/Makefile << 'END-of-gdesklets-fontselector/Makefile'
X# New ports collection makefile for:	gdesklets-fontselector
X# Date created:				02 September 2003
X# Whom:					Mezz <mezz7@cox.net>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	gdesklets-fontselector
XPORTVERSION=	0.1.5
XCATEGORIES=	x11-fonts gnome
XMASTER_SITES=	http://gdesklets.gnomedesktop.org/files/
XDISTNAME=	FontSelector-${PORTVERSION}
X
XMAINTAINER=	mezz7@cox.net
XCOMMENT=	Add font groups in a display (for instance, titles/data)
X
XBUILD_DEPENDS=	${X11BASE}/libdata/pkgconfig/gdesklets-core.pc:${PORTSDIR}/deskutils/gdesklets
XRUN_DEPENDS=	${X11BASE}/libdata/pkgconfig/gdesklets-core.pc:${PORTSDIR}/deskutils/gdesklets
X
XUSE_BZIP2=	yes
XUSE_X_PREFIX=	yes
XNO_BUILD=	yes
XNAME=		FontSelector
X
Xpost-extract:
X	@${PATCH} ${WRKSRC}/Install_${NAME}_Sensor.bin < ${FILESDIR}/patch-Install_${NAME}_Sensor.bin
X	@${WRKSRC}/Install_${NAME}_Sensor.bin --nomsg ${WRKSRC}
X
Xdo-patch:
X	@${FIND} ${WRKSRC} -name '*.orig' -delete
X
Xdo-install:
X	@${CP} -Rp ${WRKSRC}/${NAME} ${PREFIX}/share/gnome/gdesklets/Sensors/
X	@${CP} ${WRKSRC}/README ${PREFIX}/share/gnome/gdesklets/Sensors/${NAME}/
X
Xpost-install:
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.mk>
END-of-gdesklets-fontselector/Makefile
echo x - gdesklets-fontselector/pkg-message
sed 's/^X//' >gdesklets-fontselector/pkg-message << 'END-of-gdesklets-fontselector/pkg-message'
X##
XTo view the README, do the command following:
X
X	cat ${PREFIX}/share/gnome/gdesklets/Sensors/${name}/README
X
XThis is just a sensor, just same idea as a library. This will be function when
Xone of display depends on this sensor.
X##
END-of-gdesklets-fontselector/pkg-message
echo x - gdesklets-fontselector/pkg-plist
sed 's/^X//' >gdesklets-fontselector/pkg-plist << 'END-of-gdesklets-fontselector/pkg-plist'
Xshare/gnome/gdesklets/Sensors/FontSelector/README
Xshare/gnome/gdesklets/Sensors/FontSelector/__init__.py
X@dirrm share/gnome/gdesklets/Sensors/FontSelector
END-of-gdesklets-fontselector/pkg-plist
echo x - gdesklets-fontselector/pkg-descr
sed 's/^X//' >gdesklets-fontselector/pkg-descr << 'END-of-gdesklets-fontselector/pkg-descr'
XAdds any number of 'font groups' in a display (for instance, titles/data). Then
Xthe user can change the font and its color in this display with the
Xconfigurator.
X
XWWW: http://gdesklets.gnomedesktop.org
END-of-gdesklets-fontselector/pkg-descr
echo c - gdesklets-fontselector/files
mkdir -p gdesklets-fontselector/files > /dev/null 2>&1
echo x - gdesklets-fontselector/files/patch-Install_FontSelector_Sensor.bin
sed 's/^X//' >gdesklets-fontselector/files/patch-Install_FontSelector_Sensor.bin << 'END-of-gdesklets-fontselector/files/patch-Install_FontSelector_Sensor.bin'
X--- Install_FontSelector_Sensor.bin.orig	Wed Sep  3 15:14:53 2003
X+++ Install_FontSelector_Sensor.bin	Wed Sep  3 15:15:12 2003
X@@ -75,15 +75,9 @@
X     else:
X         cmd = "mkdir -p %(destination)s; cd %(destination)s; " \
X               "LANG=C tar -xzvf %(tmp)s 2>&1"
X-    fail, out = commands.getstatusoutput(cmd % vars())
X+    commands.getstatusoutput(cmd % vars())
X     os.unlink(tmp)
X     
X-    if (fail):
X-        if (no_message): print ERROR_TAR + out
X-        else: message(ERROR_TAR + out, "error")
X-        sys.exit(1)
X-
X-    print out
X     if (not list_only):
X         if (no_message): print SUCCESS
X         else: message(SUCCESS, "info")
END-of-gdesklets-fontselector/files/patch-Install_FontSelector_Sensor.bin
exit


------------FDDgy6OMJbNs09d1IoUn4M
Content-Disposition: attachment; filename=gdesklets-network.shar
Content-Type: text/plain; name=gdesklets-network.shar
Content-Transfer-Encoding: 8bit

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	gdesklets-network
#	gdesklets-network/distinfo
#	gdesklets-network/Makefile
#	gdesklets-network/files
#	gdesklets-network/files/patch-Install_Network_Sensor.bin
#	gdesklets-network/files/patch-Network::__init__.py
#	gdesklets-network/pkg-plist
#	gdesklets-network/pkg-message
#	gdesklets-network/pkg-descr
#
echo c - gdesklets-network
mkdir -p gdesklets-network > /dev/null 2>&1
echo x - gdesklets-network/distinfo
sed 's/^X//' >gdesklets-network/distinfo << 'END-of-gdesklets-network/distinfo'
XMD5 (Network-0.1.4.tar.bz2) = d65cc4a3b62d0a29c4635693f62dcb76
END-of-gdesklets-network/distinfo
echo x - gdesklets-network/Makefile
sed 's/^X//' >gdesklets-network/Makefile << 'END-of-gdesklets-network/Makefile'
X# New ports collection makefile for:	gdesklets-network
X# Date created:				02 September 2003
X# Whom:					Mezz <mezz7@cox.net>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	gdesklets-network
XPORTVERSION=	0.1.4
XCATEGORIES=	net gnome
XMASTER_SITES=	http://gdesklets.gnomedesktop.org/files/
XDISTNAME=	Network-${PORTVERSION}
X
XMAINTAINER=	mezz7@cox.net
XCOMMENT=	The configurator allows to choose the interface to monitor network
X
XBUILD_DEPENDS=	${X11BASE}/libdata/pkgconfig/gdesklets-core.pc:${PORTSDIR}/deskutils/gdesklets
XRUN_DEPENDS=	${X11BASE}/libdata/pkgconfig/gdesklets-core.pc:${PORTSDIR}/deskutils/gdesklets
X
XUSE_BZIP2=	yes
XUSE_X_PREFIX=	yes
XNO_BUILD=	yes
XNAME=		Network
X
Xpost-extract:
X	@${PATCH} ${WRKSRC}/Install_${NAME}_Sensor.bin < ${FILESDIR}/patch-Install_${NAME}_Sensor.bin
X	@${WRKSRC}/Install_${NAME}_Sensor.bin --nomsg ${WRKSRC}
X
Xdo-patch:
X	@${PATCH} ${WRKSRC}/${NAME}/__init__.py < ${FILESDIR}/patch-${NAME}::__init__.py
X	@${FIND} ${WRKSRC} -name '*.orig' -delete
X
Xdo-install:
X	@${CP} -Rp ${WRKSRC}/${NAME} ${PREFIX}/share/gnome/gdesklets/Sensors/
X	@${CP} ${WRKSRC}/README ${PREFIX}/share/gnome/gdesklets/Sensors/${NAME}/
X
Xpost-install:
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.mk>
END-of-gdesklets-network/Makefile
echo c - gdesklets-network/files
mkdir -p gdesklets-network/files > /dev/null 2>&1
echo x - gdesklets-network/files/patch-Install_Network_Sensor.bin
sed 's/^X//' >gdesklets-network/files/patch-Install_Network_Sensor.bin << 'END-of-gdesklets-network/files/patch-Install_Network_Sensor.bin'
X--- Install_Network_Sensor.bin.orig	Sat Sep  6 13:07:37 2003
X+++ Install_Network_Sensor.bin	Sat Sep  6 13:08:05 2003
X@@ -75,15 +75,9 @@
X     else:
X         cmd = "mkdir -p %(destination)s; cd %(destination)s; " \
X               "LANG=C tar -xzvf %(tmp)s 2>&1"
X-    fail, out = commands.getstatusoutput(cmd % vars())
X+    commands.getstatusoutput(cmd % vars())
X     os.unlink(tmp)
X     
X-    if (fail):
X-        if (no_message): print ERROR_TAR + out
X-        else: message(ERROR_TAR + out, "error")
X-        sys.exit(1)
X-
X-    print out
X     if (not list_only):
X         if (no_message): print SUCCESS
X         else: message(SUCCESS, "info")
END-of-gdesklets-network/files/patch-Install_Network_Sensor.bin
echo x - gdesklets-network/files/patch-Network::__init__.py
sed 's/^X//' >gdesklets-network/files/patch-Network::__init__.py << 'END-of-gdesklets-network/files/patch-Network::__init__.py'
X--- Network/__init__.py.orig	Sat Sep  6 13:10:12 2003
X+++ Network/__init__.py	Sat Sep  6 13:15:17 2003
X@@ -18,7 +18,7 @@
X 
X class Network(Sensor):
X 
X-	def __init__(self, interface = "eth0", interval = "1000"):
X+	def __init__(self, interface = "lo0", interval = "1000"):
X 		
X 		global _; _ = i18n.Translator("memory-sensor")
X 		
X@@ -45,7 +45,7 @@
X 		self._add_thread(self.__command_thread)
X 		
X 		
X-		fd = open("/proc/net/dev", "r")
X+		fd = os.popen("ifconfig -a | grep mtu", "r")
X 		data = fd.read()
X 		fd.close()
X 		data = data.splitlines()
X@@ -60,7 +60,7 @@
X 			continue
X 
X 	def __get_net_ip(self,device) :
X-		fd = open("/proc/net/arp", "r")
X+		fd = os.popen("ifconfig " + device, "r")
X 		data = fd.read()
X 		fd.close()
X 		lines = data.splitlines()
X@@ -69,24 +69,22 @@
X 			l = l.strip()
X 			fields = l.split()
X 			
X-			if fields[5]==device:
X-				return fields[0]
X+			if fields[0]=="inet":
X+				return fields[1]
X 			
X 		return "(no ip for this interface)"
X 
X 	def __get_net_in_out(self,device) :
X-		fd = open("/proc/net/dev", "r")
X+		fd = os.popen("netstat -b -I " + device + " | grep Link", "r")
X 		data = fd.read()
X 		fd.close()
X 		lines = data.splitlines()
X 		
X 		for l in lines[:]:
X 			l = l.strip()
X-			l = l.replace(":"," ")
X 			fields = l.split()
X 			
X-			if fields[0]==device:
X-				return int(fields[1]),int(fields[9])
X+			return int(fields[6]),int(fields[8])
X 				
X 		print "device not found"
X 		return 0,0
END-of-gdesklets-network/files/patch-Network::__init__.py
echo x - gdesklets-network/pkg-plist
sed 's/^X//' >gdesklets-network/pkg-plist << 'END-of-gdesklets-network/pkg-plist'
Xshare/gnome/gdesklets/Sensors/Network/README
Xshare/gnome/gdesklets/Sensors/Network/__init__.py
X@dirrm share/gnome/gdesklets/Sensors/Network
END-of-gdesklets-network/pkg-plist
echo x - gdesklets-network/pkg-message
sed 's/^X//' >gdesklets-network/pkg-message << 'END-of-gdesklets-network/pkg-message'
X##
XTo view the README, do the command following:
X
X	cat ${PREFIX}/share/gnome/gdesklets/Sensors/${name}/README
X
XThis is just a sensor, just same idea as a library. This will be function when
Xone of display depends on this sensor.
X##
END-of-gdesklets-network/pkg-message
echo x - gdesklets-network/pkg-descr
sed 's/^X//' >gdesklets-network/pkg-descr << 'END-of-gdesklets-network/pkg-descr'
XThe configurator allows to choose the interface to monitor, the update
Xinterval, and to enable or disable the format change for In/Out.
X
XAvailable data : 'in', 'out', 'speed_in', 'speed_out', 'speed_in_max',
X'speed_out_max', 'speed_in_percent', 'speed_out_percent', 'ip', and
X'interface'.
X
XWWW: http://gdesklets.gnomedesktop.org
END-of-gdesklets-network/pkg-descr
exit


------------FDDgy6OMJbNs09d1IoUn4M--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?opru3dzjxv8ckrg5>