Re: [gdm-list] Changing the login screen




Akash:

I wanted to know as to where username , password label(s) and
text-box(es) are created . I mean the GUI formation of the login window .

The GDM login GUI creates labels to place prompts and messages.  The
actual prompts (e.g. "Username:", "Password:") and the messages (e.g.
"Incorrect password", etc.) all are provided to GDM from the PAM
modules.  GDM just blindly places the prompts and labels into the
areas of the GUI that are defined by the GDM login GUI.

In the new GDM (version 2.21 and later), the text fields are specified
in the /usr/share/gdm/gdm-greeter-login-window.ui or
/usr/share/gdm/gdm-greeter-login-window.xml file.  These can be edited
by glade-3.  The PAM entry field is the field with the name
"auth-prompt-entry", the PAM message field is "auth-message-label"
and the prompt is "auth-prompt-label".  These names are defined in the
gdm-greeter-login-window.ui or gdm-greeter-login-window.xml file.

In the old GDM (2.20 and earlier), you can refer to the gui/gdmlogin.c
file (for the gdmlogin GUI program) or gui/greeter/greeter.c file (for
the gdmgreeter GUI program) and the function process_operation manages
the setting of the label.  You can refer to daemon/verify-pam.c file to
see how messages get sent from PAM to the GUI using GDM_MSG,
GDM_PROMPT, GDM_NOECHO, etc.

Note that PAM can be configured differently on each distro.  You can
refer to the pam.conf or pam.d m anpage on your system to learn about
how PAM works and is configured.

By default, GDM uses the "gdm" PAM stack.  So whatever PAM modules
are defined in the "gdm" PAM stack will be used when GDM is running.
This should be specified in your /etc/pam.conf or /etc/pam.d PAM
configuration file.  You will need to look at the source code for the
PAM modules you are using on your system to see the actual label
text that is shown to the user.

Note that this mailing list is more about GDM than PAM, and if you
need help working with PAM modules, then there are better PAM
specific forums where you would likely find better assistance.

Brian


On Wed, Feb 10, 2010 at 5:26 PM, Rohan Anil <rohan anil gmail com
<mailto:rohan anil gmail com>> wrote:

    Isn't username and password asked by the pam module ?
    i guess look at pam_unix2.c

    On Wed, Feb 10, 2010 at 4:44 PM, Akash Gangil <akashg1611 gmail com
    <mailto:akashg1611 gmail com>> wrote:

        Hi

        I was searching through the code where username and password are
        asked from the user. And
        I found that that gdm takes some of the screen labels that we
        see during login from an xml file.
        gdm-greeter-login-window.ui , here I found
        "Log In"
        "Computer Name"
        "Cancel"
        and all other label butting , but couldn't find those of
        username and password .
        Where are they?

        On Tue, Feb 9, 2010 at 8:58 PM, Brian Cameron
        <Brian Cameron sun com <mailto:Brian Cameron sun com>> wrote:


            Akash:


                But what should I do know as my ubuntu just hangs during
                booting ,
                should I reinstall?
                I am running Ubuntu 9.10 on Vmplayer.


            Re-installing will likely get your system working again.
              However, if
            you plan on doing development work with GDM, then it might
            be worthwhile
            for you to investigate the problem, and try to debug and fix it.

            One unfortunate reality about doing development work on GDM
            is that
            it can be more difficult than working on most other
            programs.  Since
            GDM is the first GUI program that runs on the system, it is not
            uncommon to debug problems with it starting up.

            Debugging programs that are run in a normal user session is
            easier
            since you can have multiple terminal windows open and you
            can easily
            run the debugger and an application in separate windows.
              However, to
            do this with GDM, you often need to debug from the system
            console or
            use ssh or telnet from a second machine to attach to running GDM
            processes.  So, doing GDM development is more cumbersome.

            So, in short, it will likely be difficult for you to do much
            development work on GDM if you do not learn how to debug and
            fix these
            sorts of problems.

            Brian


                On Tue, Feb 9, 2010 at 5:33 AM, Brian Cameron
                <Brian Cameron sun com <mailto:Brian Cameron sun com>
                <mailto:Brian Cameron sun com
                <mailto:Brian Cameron sun com>>> wrote:


                    Akash:


                        Thanks for replying back .
                        One more thing , I installed the gdm from source
                (./configure ,
                        make ,
                        make install).
                        But now when I restart it just shows a blank
                screen after ubuntu
                        logo
                        (Ubuntu 9.10) .
                        Is it because I didn't uninstall the previous
                version of gdm before
                        installing from source ?


                    It is hard to say.  In general, it is probably best
                to uninstall the
                    previous version of GDM before installing a new version.

                    Each distro has its own unique configuration for
                modules like GDM, so
                    problems could be related to how GDM was configured,
                or how your distro
                    integrates with GDM.  For example, if the system
                assumes that GDM is
                    installed to a particular file location, you may
                have problems if you
                    have installed it to a different place.  Also, each
                distro may apply
                    distro-specific patches to GDM, and it may not work
                without applying
                    such patches.  If you find it is not working, then
                it might be a good
                    idea to check with your distro and make sure that
                you apply any patches
                    needed for GDM to operate well on your platform.

                    You could try editing your /etc/gdm/custom.conf file
                so it contains
                    these lines:

                    [debug]
                    Enable=true

                    This will cause GDM to append debug messages to your
                syslog (the
                    /var/log/messages file )Then cause GDM to fail
                again.  After it fails,
                    you can check the gdm-related messages at the bottom
                of the syslog
                    file and see if it helps you understand why it might
                be failing.
                    You can share such debug output with us on this
                mailing list, and
                    we can help analyze the debug output if it isn't
                clear what the
                    problem is.

                    Brian


                        On Tue, Feb 9, 2010 at 2:03 AM, Brian Cameron
                <Brian Cameron sun com <mailto:Brian Cameron sun com>
                <mailto:Brian Cameron sun com
                <mailto:Brian Cameron sun com>>
                <mailto:Brian Cameron sun com
                <mailto:Brian Cameron sun com>
                <mailto:Brian Cameron sun com
                <mailto:Brian Cameron sun com>>>>

                        wrote:


                            Akash:


                                I was just browsing through the code of
                GDM . What I
                        want to do is ,
                                take the username and password from the
                user in a gtk window
                                (like the
                                explorer one ) instead of the usual
                login procedure. So
                        I was
                                searching
                                through the code as to where can I do
                this , but am lost
                        with
                                the code ,
                                can anybody help me with that ?


                            GDM makes use of PAM for authentication.
                  GDM just blindly
                        displays
                            whatever prompts (username/password/etc.)
                that PAM is
                        configured to
                            display.  You should be able to refer to the
                pam.d or
                        pam.conf manpage
                            for more information.

                            If you wish to modify how GDM prompts the
                user, this would
                        require
                            either configuring PAM differently, or
                modifying GDM to not
                        use PAM.

                            Note that you could probably find more
                PAM-focused forums
                        where you
                            would likely find better help with PAM
                specific questions
                        than on this
                            mailing list.

                            Brian




                        --
                        Best Regards
                        Akash Gangil





                --
                Best Regards
                Akash Gangil





        --
        Best Regards
        Akash Gangil


        _______________________________________________
        gdm-list mailing list
        gdm-list gnome org <mailto:gdm-list gnome org>
        http://mail.gnome.org/mailman/listinfo/gdm-list




    --
    Rohan Anil
    IVth Year Information Systems
    BITS Pilani Goa Campus




--
Best Regards
Akash Gangil




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]