f10 gdm user hide

k12linux no-reply-gw at fcp.surfsite.org
Thu Apr 9 08:41:10 UTC 2009


While this is the hard way to hide accounts, it does work to hide accounts that have uids > 500.  If you can just change the uid to something between 100 and 500 you can avoid all of this.

This is absolutely a hack so you'll have to repeat some of it each time gdm is updated.  You should probably read through this whole post and make sure you want to go through this much effort before you start.

First, you'll need to have rpm-build and development tools installed.  Easiest is probably to do:
	# as root yum groupinstall "Development Tools" yum install rpm-build 

Set up an RPM build environment on your PC.  If you don't know how try this:  Assuming your user name is george...
	# As your user account, not root... mkdir /home/george/rpm echo "%_topdir   /home/george/rpm" > /home/george/.rpmmacros echo "%dist   .fc10.george" >> /home/george/.rpmmacros 

Get and install the source rpm.
	# This will need to be done each time gdm is updated #again, as your user and not as root yumdownloader --source twinkle --destdir /tmp rpm -i /tmp/gdm-2.24.1-4.fc10.src.rpm # (assuming that version # is still current)

Check if you have all of the packages needed to build your own version of gdm:
	rpmbuild -bp /home/george/rpm/SPECS/gdm.spec
If you are missing any it will tell you.  You'll have to install them in order to build your own gdm which hides accounts.

Create and edit ~/rpm/SOURCES/gdm-2.24.1-hide-user.patch using this text as a template:
	--- gdm-2.24.1-orig/gui/simple-greeter/gdm-user-manager.c 2009-04-08 17:39:32.000000000 -0500 +++ gdm-2.24.1/gui/simple-greeter/gdm-user-manager.c 2009-04-08 17:40:21.000000000 -0500 @@ -95,6 +95,7 @@                                    "rpm",                                            "nfsnobody",                                      "pcap",        +                                  "hideuser",                                           NULL }    struct GdmUserManagerPrivate

Replace "hideuser" with the user name you want to hide.  If you want to hide multiple users, do two things... add more lines like the one for "hideuser" and 2nd, edit the string @@ -95,6 +95,7 @@ and add one to the 7 for each extra user.  So if you hide 4 users, that line would look like:
	@@ -95,6 +95,10 @@

EVERYTHING FROM HERE DOWN WILL NEED TO BE DONE EACH TIME YOU UPDATE GDM AND YOUR HIDDEN USER ACCOUNTS RE-APPEAR AT LOGIN.

Next edit the gdm.spec (in ~/rpm/SOURCES) and:
* At around line 90 there will be several lines starting with Patch##.  Add your own between Patch14 and Patch99 like:
	Patch40:gdm-2.24.1-hide-user.patch
* At about line 115 are several lines starting with %patch.  Add your own between %patch14 and %patch99 like:
	%patch40 -p1 -b .hide-user

Save your updated .spec file and build your new gdm .rpm. 
	# as your user account and not as root rpmbuild -ba ~/rpm/SPECS/gdm.spec

If all goes well you'll have an installable rpm under ~/rpm/RPMS/i386 now.  Install as root:
	su -c "rpm -Uvh /home/george/rpm/RPMS/i386/gdm-2.24.1-4.fc10.george.i386.rpm"


-- 
This is an email sent via The Fedora Community Portal https://fcp.surfsite.org
https://fcp.surfsite.org/modules/newbb/viewtopic.php?post_id=337593&topic_id=65361&forum=10#forumpost337593
If you think, this is spam, please report this to webmaster at fcp.surfsite.org and/or blame netadmin at dce.k12.wi.us.




More information about the fedora-list mailing list