LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 01-31-2017, 02:03 PM   #1
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
Fluxbox no polkit? gparted not working due to ???


in gparted.desktop
Code:
[Desktop Entry]
Name=GParted
GenericName=Partition Editor
X-GNOME-FullName=GParted Partition Editor
Comment=Create, reorganize, and delete partitions
Exec=/usr/sbin/gparted_polkit %f
Icon=gparted
Terminal=false
Type=Application
Categories=GNOME;System;Filesystem;
Keywords=Partition;
StartupNotify=true
in gparted_polkit
Code:
#!/bin/bash
if [ $(which pkexec)  ]; then
	pkexec --disable-internal-agent "/usr/sbin/gparted" "$@"
else
	/usr/sbin/gparted "$@"
fi
this is what I get when I check which pkexec
Code:
(userx@slacko⚡️/usr/share/applications)>>$ echo "$(which pkexec)"
/usr/bin/pkexec

(userx@slacko⚡️/usr/share/applications)>>$ /usr/bin/pkexec
==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/bin/bash' as the super user
Authenticating as: root
password:
polkit-agent-helper-1: error response to PolicyKit daemon: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: No session for cookie
==== AUTHENTICATION FAILED ===
Error executing command as another user: Not authorized

This incident has been reported.
it is not doing anything while trying to start gparted in fluxbox off the menu item in fluxbox menu.

So I am thinking now I got to find out how to setup polkit in slack-fluxbox.

any suggestions ???
thanks...
 
Old 01-31-2017, 02:13 PM   #2
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
Well I found this.

Code:
  /usr/libexec/polkit-gnome-authentication-agent-1 &
says to add it to startup file, but is it going to conflict with d-bus?
Quote:
# Start DBUS session bus:
if [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then
eval $(dbus-launch --sh-syntax --exit-with-session)
fi
should it be before or after d-bus ?

I cannot reboot or logout at this time due to running stuff that I cannot just shut down just to test this right now.
 
Old 01-31-2017, 02:50 PM   #3
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,065

Rep: Reputation: Disabled
I do not have this line in ~/.fluxbox/startup:
Code:
  /usr/libexec/polkit-gnome-authentication-agent-1 &
and do not need it: a window pops up requesting my root password. This is in Slint not Slackware but I don't think that makes a difference. Anyway I am installing Slackware64-14.2 in a VM and will check. Stay tuned: this shouldn't take long, we are in the CONFIGURE step.
 
Old 01-31-2017, 02:56 PM   #4
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
Quote:
Originally Posted by Didier Spaier View Post
I do not have this line in ~/.fluxbox/startup:
Code:
  /usr/libexec/polkit-gnome-authentication-agent-1 &
and do not need it: a window pops up requesting my root password. This is in Slint not Slackware but I don't think that makes a difference. Anyway I am installing Slackware64-14.2 in a VM and will check. Stay tuned: this shouldn't take long, we are in the CONFIGURE step.
yep that is what happens in xfce4 I get the login gui, just not in fluxbox... wait mode.. thanks
 
Old 01-31-2017, 03:14 PM   #5
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,065

Rep: Reputation: Disabled
I tried with this line in .fluxbox/menu
Code:
[exec] (GPparted) {/usr/sbin/gparted_polkit}
That didn't work. So I typed in an xterm:
Code:
/usr/sbin/gparted_polkit
And got this output:
Code:
Error executing command as another user: No authentication agent found.
Thus I tried:
Code:
kdesu /usr/sbin/gparted_polkit
and that worked. So in the menu put this line:
Code:
[exec] (GPparted) {kdesu /usr/sbin/gparted_polkit}
That should work without any other modification. At least that did in a VirtualBox VM.


EDIT: typos fixed (in red).

Last edited by Didier Spaier; 01-31-2017 at 05:37 PM. Reason: Typos fixed and EDIT added.
 
Old 01-31-2017, 03:32 PM   #6
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
Quote:
Originally Posted by Didier Spaier View Post
I tried with this line in .fluxbox/menu
Code:
[exec] (GPparted) {/usr/bin/gparted_polkit}
That didn't work. So I typed in an xterm:
[code]
Code:
[exec] (GPparted) {kdesu /usr/bin/gparted_polkit}
That should work without any other modification. At least that did in a VirtualBox VM.
half worked it didn't have the kdesu entry in the line. Now it is starting the gui login - I log in then get an
Code:
! cannot execute command '/user/bin/gparted_polkit'
gui message. what does your
Code:
/usr/share/applications/gparted.desktop
say ?
 
Old 01-31-2017, 03:36 PM   #7
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,065

Rep: Reputation: Disabled
Code:
! cannot execute command '/user/bin/gparted_polkit'
Typo in the command?
Quote:
what does your
Code:
/usr/share/applications/gparted.desktop
say ?
Same as yours, it's a stock Slackware package.
 
1 members found this post helpful.
Old 01-31-2017, 03:42 PM   #8
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,065

Rep: Reputation: Disabled
Sorry the typo was mine. It's /usr/sbin/gparted_polkit.
 
1 members found this post helpful.
Old 01-31-2017, 03:51 PM   #9
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
Quote:
Originally Posted by Didier Spaier View Post
Code:
! cannot execute command '/user/bin/gparted_polkit'
Typo in the command?
Same as yours, it's a stock Slackware package.
yeah I was thinking that but playing the what if card.

this is the actuall error message
Code:
! cannot execute command '/usr/bin/gparted_polkit'
the user was a typo on my part. gparted_polkit file is in /usr/bin/

that is what is in it right now,
Code:
[exec] (GPparted) {kdesu /usr/bin/gparted_polkit}
now this
Code:
[exec] (GPparted) {kdesu /usr/sbin/gparted_polkit}
Ok I got it. Now it is working
Thanks!
+1
 
Old 02-01-2017, 08:48 AM   #10
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
Quote:
Originally Posted by Didier Spaier View Post
Sorry the typo was mine. It's /usr/sbin/gparted_polkit.

I am in Void Linux and decied to take a look at gparted in here, then I relised I had to install it first. (lol)

when I looked at how their gparted.desktop is written it is this.

Code:
Exec=/usr/bin/gparted-pkexec %f
Like this distro has a 'special' executable in bin and not sbin so that a normal user can use it, without having to use a script to redirect it
Code:
(userx@voider.org⚡️~)>>$ ls /usr/bin/gparted*
/usr/bin/gparted  /usr/bin/gparted-pkexec  /usr/bin/gpartedbin
I do have sudo no password so I do not get a login gui, I think that is the reason, seeings how gparted is a root user app.

interesting. Looks like it makes life a little easier, I do not have to edit fluxbox menu after re-generating it to comply with Void Linux apps with it being set up this way.

I wonder if I copy that over to Slackware and set it up the same way it will work in Slack...

experimentation time...
as soon as I get this one script set right I am working on of course.

:MOD:
well I just mounted my partition with slack, copied the file over into /usr/bin edited slack gparted,desktop. now when I get a chance to reboot into Slack all I have to do is re-generate the menu in Flux and see what happens when I select gparted.

Last edited by BW-userx; 02-01-2017 at 08:59 AM.
 
Old 02-01-2017, 09:34 AM   #11
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
well it seems that the path to gparted is hard coded in the executable to look in /usr/bin
a mod to the code maybe needed. got a look at it if I can find the source code for it.

Code:
(userx@slacko⚡️~)>>$ mmaker -f fluxbox
  no terminal emulator specified; will use the default

(userx@slacko⚡️~)>>$ /usr/bin/gparted-pkexec
Error accessing /usr/bin/gparted: No such file or directory

(userx@slacko⚡️~)>>$ whereis gparted
gparted: /usr/sbin/gparted /usr/man/man8/gparted.8.gz

(userx@slacko⚡️~)>>$ ls /usr/bin/gparted*
/usr/bin/gparted-pkexec

(userx@slacko⚡️~)>>$ sudo mv -v /usr/bin/gparted-pkexec /usr/sbin/
'/usr/bin/gparted-pkexec' -> '/usr/sbin/gparted-pkexec'

(userx@slacko⚡️~)>>$ sudo nano /usr/share/applications/gparted.desktop

(userx@slacko⚡️~)>>$ mmaker -f fluxbox
  no terminal emulator specified; will use the default

(userx@slacko⚡️~)>>$ /usr/sbin/gparted-pkexec
Error accessing /usr/bin/gparted: No such file or directory
(userx@slacko⚡️~)>>$
 
Old 02-01-2017, 11:08 AM   #12
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,065

Rep: Reputation: Disabled
Found something.

In Slint .fluxbox/startup starts a wrapper script that in turn starts fbautostart.

As /etc/xdg/autostart includes polkit-gnome-authentication-agent-1.desktop, the authentication agent runs when fluxbox is started.

To get the same result you can include this command:
Code:
fbautostart &
anywhere before "exec fluxbox" in .fluxbox/startup.

As a bonus, you will see the hplip and nm-applet show in the tray

You can get fbautostart from a Salix repo:
http://slackware.uk/salix/x86_64/14.2/salix/xap/
http://slackware.uk/salix/i486/14.2/salix/xap/

Last edited by Didier Spaier; 02-01-2017 at 11:09 AM.
 
1 members found this post helpful.
Old 02-01-2017, 11:38 AM   #13
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
this is how I start my FB
Code:
exec fluxbox -log "/home/userx/.fluxbox/log"
wrapper=script?

So I do suppose your fbautostart is a script somewhere in Slint? /usr/bin perhaps that is called in FB startup just before the exec fluxbox is called?

the path that gparted takes is gparted.desktop:exec=/usr/sbin/(script:gparted_polkit)
that checks to see who is who then runs a command to exec gparted accordingly.

where this gparted-pkexec too is just a wrapper that I modded in slack as such.

from this
Code:
#!/bin/sh

#pkexec --disable-internal-agent "/usr/sbin/gparted" "$@"
to this
Code:
if [ $(which pkexec)  ]; then
	#pkexec --disable-internal-agent "/usr/sbin/gparted" "$@"
	kdesu /usr/sbin/gparted "$@"
else
	 /usr/sbin/gparted "$@"
fi
I too found that I had to run this line in the cli to get it to work.
Code:
/usr/libexec/polkit-gnome-authentication-agent-1 &
where you state it gets ran I'm thining in your fbautostart wrapper, whereas before your thought it did not need to get ran but finding out it does. as your last post indicates.

where I just ran that fbautostart in my cli and got all kinds of feedback (lol)

it even started my hp printer thingy as I can see its icon on my app tray now.

so you're saying and it looks to be true that all I need to do is add fbautostart to my startup in FB before exec FB and it looks to be starting dropbox, d-bus(if it wasn't already started?), PulseAudio, and you say nw-applet too, so I should be able to remove that line from my startup file too, along with /usr/libexec/polkit-gnome-authentication-agent-1 &

looks like the bluesman-applet line in startup I can remove too.

looking promising.. but as usual I am running a script, and I do not want to stop it to log in and out, just to see what takes place, but I probability will.


Quote:
fbautostart

Hello! I'll be your friendly XDG Autostarter today.
Here's what's on the menu:

Appetizers

* $XDG_CONFIG_HOME:
* $XDG_CONFIG_DIRS: /etc/xdg:/etc/kde/xdg:/etc/kde/xdg
* $FBXDG_DE:
* $FBXDG_EXEC:

Entrées

* Desktop Environment: FLUXBOX
* Global XDG Directory: /etc/xdg:/etc/kde/xdg:/etc/kde/xdg
* Local XDG Directory: ~/.config
* Current exec Model: 0

- Chef Tagliamonte
& The Fluxbox Crew

Now Serving: AT-SPI D-Bus Bus
Attrinf: We're not in the OnlyShowIn. We must not execute.
Attrinf: GNOME;Unity;
Hidden: true
+-> (To be clear, I'm stopping here)
Now Serving: Certificate and Key Storage
Attrinf: We're not in the OnlyShowIn. We must not execute.
Attrinf: GNOME;Unity;MATE;
Hidden: true
+-> (To be clear, I'm stopping here)
Now Serving: Network
Hidden:
+-> (To be clear, I'm going to continue parsing)
Now Serving: PolicyKit Authentication Agent
Hidden:
+-> (To be clear, I'm going to continue parsing)
Now Serving: Xfsettingsd
Attrinf: We're not in the OnlyShowIn. We must not execute.
Attrinf: XFCE;
Hidden: true
+-> (To be clear, I'm stopping here)
Now Serving: PulseAudio Sound System
Hidden:
+-> (To be clear, I'm going to continue parsing)
Now Serving: Power Manager
Hidden:
+-> (To be clear, I'm going to continue parsing)
Now Serving: HP System Tray Service
Hidden:
+-> (To be clear, I'm going to continue parsing)
Now Serving: Clipman
Attrinf: We're not in the OnlyShowIn. We must not execute.
Attrinf: XFCE;
Hidden: true
+-> (To be clear, I'm stopping here)
Now Serving: GSettings Data Conversion
Attrinf: We're not in the OnlyShowIn. We must not execute.
Attrinf: GNOME;Unity;
Hidden: true
+-> (To be clear, I'm stopping here)
Now Serving: SSH Key Agent
Attrinf: We're not in the OnlyShowIn. We must not execute.
Attrinf: GNOME;Unity;MATE;
Hidden: true
+-> (To be clear, I'm stopping here)
Now Serving: Blueman Applet
Hidden:
+-> (To be clear, I'm going to continue parsing)
Now Serving: Print Queue Applet
Hidden:
+-> (To be clear, I'm going to continue parsing)
Now Serving: Secret Storage Service
Attrinf: We're not in the OnlyShowIn. We must not execute.
Attrinf: GNOME;Unity;MATE;
Hidden: true
+-> (To be clear, I'm stopping here)
Now Serving: GPG Password Agent
Attrinf: We're not in the OnlyShowIn. We must not execute.
Attrinf: GNOME;Unity;MATE;
Hidden: true
+-> (To be clear, I'm stopping here)
Now Serving: Screensaver
Attrinf: We're not in the OnlyShowIn. We must not execute.
Attrinf: XFCE;
Hidden: true
+-> (To be clear, I'm stopping here)
Now Serving: Dropbox
Hidden:
+-> (To be clear, I'm going to continue parsing)

Finished parsing all files.

Handling stub for: at-spi-dbus-bus.desktop
Handling stub for: blueman.desktop
Handling stub for: dropbox.desktop
Handling stub for: gnome-keyring-gpg.desktop
Handling stub for: gnome-keyring-pkcs11.desktop
Handling stub for: gnome-keyring-secrets.desktop
Handling stub for: gnome-keyring-ssh.desktop
Handling stub for: gsettings-data-convert.desktop
Handling stub for: hplip-systray.desktop
Handling stub for: nm-applet.desktop
Handling stub for: polkit-gnome-authentication-agent-1.desktop
Handling stub for: print-applet.desktop
Handling stub for: pulseaudio.desktop
Handling stub for: xfce4-clipman-plugin-autostart.desktop
Handling stub for: xfce4-power-manager.desktop
Handling stub for: xfsettingsd.desktop
Handling stub for: xscreensaver.desktop

(userx@slacko⚡️~)>>$ /bin/sh: dropbox: command not found

** (polkit-gnome-authentication-agent-1:28959): WARNING **: Unable to register authentication agent: GDBus.Errorrg.freedesktop.PolicyKit1.Error.Failed: An authentication agent already exists for the given subject
Cannot register authentication agent: GDBus.Errorrg.freedesktop.PolicyKit1.Error.Failed: An authentication agent already exists for the given subject
system-config-printer-applet: failed to start NewPrinterNotification service
system-config-printer-applet: failed to start PrinterDriversInstaller service: org.freedesktop.DBus.Error.AccessDenied: Connection ":1.102" is not allowed to own the service "com.redhat.PrinterDriversInstaller" due to security policies in the configuration file
bluesman-applet version 2.0.4 starting
There is an instance already running


HP Linux Imaging and Printing System (ver. 3.16.11)
System Tray Status Service ver. 2.0

Copyright (c) 2001-15 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

/usr/lib64/python2.7/site-packages/gtk-2.0/gtk/__init__.py:127: RuntimeWarning: PyOS_InputHook is not available for interactive use of PyGTK
set_interactive(1)

HP Linux Imaging and Printing System (ver. 3.16.11)
HPLIP upgrade latest version ver. 1.0

Copyright (c) 2001-15 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

HPLIP upgrade function is disabled in Slackware.
Not attempting to download upgrades.
^C

Last edited by BW-userx; 02-01-2017 at 11:44 AM.
 
1 members found this post helpful.
Old 02-01-2017, 12:11 PM   #14
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
added this line to FB startup due to dropbox being in separate place between distros;
Code:
 [[ -f /etc/slackware-version ]] && /opt/dropbox/dropbox-lnx.x86_64-15.4.22/dropbox &
 
Old 02-01-2017, 12:25 PM   #15
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,065

Rep: Reputation: Disabled
Quote:
Originally Posted by BW-userx View Post
so you're saying and it looks to be true that all I need to do is add fbautostart to my startup in FB before exec FB and it looks to be starting dropbox, d-bus(if it wasn't already started?), PulseAudio, and you say nw-applet too, so I should be able to remove that line from my startup file too, along with /usr/libexec/polkit-gnome-authentication-agent-1 &

looks like the bluesman-applet line in startup I can remove too.
Yes.


Quote:
Originally Posted by BW-userx View Post
added this line to FB startup due to dropbox being in separate place between distros;
Code:
 [[ -f /etc/slackware-version ]] && /opt/dropbox/dropbox-lnx.x86_64-15.4.22/dropbox &
Why not fix the exec path in /etc/xdg/autostart/dropbox.xdg, or copy this file as ~/.config/autostart/dropbox.xdg and fix the path there (will work as according to the specification the latter has priority over the former)

Last edited by Didier Spaier; 02-01-2017 at 12:34 PM.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Those Polkit/PolicyKit XML files a pain to view? Polkit Explorer now avaiable... LXer Syndicated Linux News 0 03-31-2013 03:42 PM
[SOLVED] Fluxbox style in Gparted LIve usb?? michaelinux Linux - Desktop 2 04-18-2011 11:13 PM
[SOLVED] Gparted stopped working. Tries but stalls out. Ubuntu 10.10 Thane Ubuntu 7 11-01-2010 03:28 PM
LXer: KDE extends Polkit support to polkit-1 LXer Syndicated Linux News 0 12-26-2009 12:00 PM
What do I need to get Gparted working right? Slacker Steve Slackware 8 12-18-2008 10:18 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 03:49 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration