summaryrefslogtreecommitdiff
path: root/gui
Commit message (Collapse)AuthorAgeFilesLines
* new function that centers mouse pointer on one headRay Strode2006-08-083-1/+12
| | | | | | | | | | | 2006-08-08 Ray Strode <rstrode@redhat.com> * gui/gdmwm.[ch] (gdm_wm_center_cursor): new function that centers mouse pointer on one head * gui/greeter/greeter.c (main): center cursor on main xinerama head on startup (looks nicer and as a side effect should fix bug 327530)
* Fix the setup of the iochannel so that it happens after the face browserBrian Cameron2006-08-031-14/+14
| | | | | | | | | | | | | 2006-08-03 Brian Cameron <brian.cameron@sun.com> * gui/greeter/greeter.c: Fix the setup of the iochannel so that it happens after the face browser is set up. The recent changes Ray Strode made to make the message input nonblocking seemed to break the Face Browser logic. This patch makes sure that the face browser is setup before setting up the iochannel. The face data is sent from the daemon to the slave along the same channel, but these messages are not formatted like the other messages. Patch provided by Ray Strode <rstrode@redhat.com>.
* Fix error message that gets printed when you try to run GDM as non-rootBrian Cameron2006-08-035-19/+21
| | | | | | | | | | | | | | | 2006-08-02 Brian Cameron <brian.cameron@sun.com> * daemon/gdm.c: Fix error message that gets printed when you try to run GDM as non-root user. * gui/greeter/greeter_action_language.c, gui/greeter/greeter_canvas_item.c, gui/greeter/greeter_session.c, gui/greeter/greeter_system.c: I think this time I finally fixed the focus management in gdmgreeter so that when using the Options button the focus remains in the entry. * gui/greeter/greeter_parser.c: Only free the hash table if it is not-NULL.
* Fix gdm_common_setup_blinking so it doesn't try to callBrian Cameron2006-07-312-16/+22
| | | | | | | | | | | | | | 2006-07-31 Brian Cameron <brian.cameron@sun.com> * ui/gdmcommon.c: Fix gdm_common_setup_blinking so it doesn't try to call g_signal_add_emission_hook if sid is 0. This fixes a crash in gdmchooser because we were trying to set the emission hook for a type that was not used or initialized in the gdmchooser GUI. This fixes bug #349221. * gui/gdmcommon.c: Set hosts_opt to NULL, otherwise processing of hosts from the command line would not get done if the compiler put a non-NULL value into its initial value, as it does on Solaris.
* fix off by one error in previous patch.Ray Strode2006-07-212-4/+4
| | | | | | | 2006-07-21 Ray Strode <rstrode@redhat.com> * gui/gdmlogin.c, gui/greeter/greeter.c: fix off by one error in previous patch.
* This patch attempts to fix the problem by turning on io channel's internalBrian Cameron2006-07-192-144/+97
| | | | | | | | | | | | | 2006-07-18 Brian Cameron <brian.cameron@sun.com> * gui/gdmlogin.c, gui/greeter/greeter.c: This patch attempts to fix the problem by turning on io channel's internal buffering feature, searching for the start of the next message in the read in bytes and seeking backward to the byte before the start of the next message. We then process only one message and return, picking up the next message next iteration of the main loop. Patch provided by Ray Strode <rstrode@redhat.com>.
* Fix for bug #341619. Now GDM does not save the Failsafe GNOME or XtermBrian Cameron2006-07-186-294/+164
| | | | | | | | | | | 2006-07-18 Brian Cameron <brian.cameron@sun.com> * gui/gdmlogin.c, gui/gdmsession.[ch], gui/greeter/greeter.c, gui/greeter/greeter_session.[ch]: Fix for bug #341619. Now GDM does not save the Failsafe GNOME or Xterm session as the user's default. Cleaned up the code and moved duplicate functions from gdmlogin/gdmgreeter code to gdmsession common code.
* Fix for bug causing gdmsetup to have performance issues starting up. FixesBrian Cameron2006-07-171-16/+13
| | | | | | | | 2006-07-17 Brian Cameron <brian.cameron@sun.com> * gui/gdmsetup.c: Fix for bug causing gdmsetup to have performance issues starting up. Fixes bug #345118. Patch by Ray Strode <rstrode@redhat.com>.
* Fix timed login message so it works when TimedLogin is set to use a pipedBrian Cameron2006-06-302-2/+2
| | | | | | | | 2006-06-25 Brian Cameron <brian.cameron@sun.com> * gui/gdmcommon.c: Fix timed login message so it works when TimedLogin is set to use a piped script. * gui/gdmwm.c: Make comment nicer.
* Now User scrolling regions are only scrollable vertically. Fix for bugBrian Cameron2006-06-261-4/+4
| | | | | | | | 2006-06-25 Brian Cameron <brian.cameron@sun.com> * gui/gdmsetup.diff: Now User scrolling regions are only scrollable vertically. Fix for bug #345881. Patch by Philippe Troin <phil@fifi.org>.
* Fix bug that causes gdmsetup to not fail properly when there is no customBrian Cameron2006-06-191-1/+1
| | | | | | | 2006-06-19 Brian Cameron <brian.cameron@sun.com> * gui/gdmsetup.c: Fix bug that causes gdmsetup to not fail properly when there is no custom config file.
* Make sure focus is returned to entry after dialogs are launched from theBrian Cameron2006-06-163-2/+24
| | | | | | | | | 2006-06-16 Brian Cameron <brian.cameron@sun.com> * gui/greeter/greeter_action_language.c, gui/greeter/greeter_session.c, gui/greeter/greeter_system.c: Make sure focus is returned to entry after dialogs are launched from the options button.
* Fix more warnings.Brian Cameron2006-06-092-1/+5
| | | | | | | 2006-06-09 Brian Cameron <brian.cameron@sun.com> * daemon/gdmconfig.c, gui/gdmconfig.c, gui/gdmsetup.c: Fix more warnings.
* Fix autologin Pam service name. Fixes bug #344191. Fix warnings.Brian Cameron2006-06-099-14/+13
| | | | | | | | | | | | 2006-06-09 Brian Cameron <brian.cameron@sun.com> * daemon/verify-pam.c: Fix autologin Pam service name. Fixes bug #344191. * daemon/gdmconfig.c, gui/gdmconfig.c, gui/gdmdynamic.c, gui/gdmsetup.c, gui/greeter/greeter.c, gui/greeter/greeter_canvas_item.c, gui/greeter/greeter_geometry.c gui/greeter/greeter_item_pam.c, gui/greeter/greeter_parser.c, gui/greeter/greeter_system.c, utils/prefetch.c: Fix warnings.
* Call gdmcomm_check with FALSE so that ti doesn't try to pop-up a GUI.Brian Cameron2006-06-065-3/+27
| | | | | | | | | | | | | | | 2006-06-06 Brian Cameron <brian.cameron@sun.com> * gui/gdmflexiserver.c: Call gdmcomm_check with FALSE so that ti doesn't try to pop-up a GUI. Sometimes gdmflexiserver is called by processes that do not have access to the display so this causes a crash, and gdmflexiserver prints out errors anyway. * gui/modules/AccessDwellMouseEvents.in: Added gestures so you can run the same commands as in AccessKeyMouseEvents.in with dwell gestures. * gui/modules/AccessKeyMouseEvents.in: Cleanup * gui/modules/keymouselisttener.c, gui/modules/dwellmouselistener.c: Added debug.
* Correction to previous fix.Brian Cameron2006-05-311-0/+1
| | | | | | 2006-05-31 Brian Cameron <brian.cameron@sun.com> * gui/greeter/greeter_item_ulist.c: Correction to previous fix.
* Correct serious issue where user can enter the configure screen with theirBrian Cameron2006-05-314-4/+20
| | | | | | | | | | 2006-05-31 Brian Cameron <brian.cameron@sun.com> * gui/gdmlogin.c, gui/greeter/greeter.c, gui/greeter/greeter_item_ulist.c, gui/greeter/greeter_system.c: Correct serious issue where user can enter the configure screen with their user password instead of the root password. Fixes bug #343476.
* Remove some unused code. Fix so when you click on the include_all button,Brian Cameron2006-05-301-17/+19
| | | | | | | | 2006-05-30 Brian Cameron <brian.cameron@sun.com> * daemon/gdm.c: Remove some unused code. * gui/gdmsetup.c: Fix so when you click on the include_all button, the Automatic/Timed login values update properly.
* Now when a user is selected and a bad password is entered, GDM remembersBrian Cameron2006-05-236-14/+74
| | | | | | | | | | | | | 2006-05-22 Brian Cameron <brian.cameron@sun.com> * gui/gdmlogin.c, gui/greeter/greeter.c, gui/greeter/greeter_item_ulist.[ch]: Now when a user is selected and a bad password is entered, GDM remembers the username and just asks for the password again. You now must hit the Cancel/Start Again button to unselect the user from the userlist. * gui/greeter/greeter_action_language.[ch]: Fix prototype warning.
* Fix so that the entry field always has focus after a button press, whichBrian Cameron2006-05-221-0/+15
| | | | | | | | 2006-05-22 Brian Cameron <brian.cameron@sun.com> * gui/greeter/greeter_events.c: Fix so that the entry field always has focus after a button press, which wasn't working if the buttons were GTK+ style.
* Use ngettext. Patch provided by Benoit Dejean <benoit@placenet.org>. FixesBrian Cameron2006-05-151-6/+2
| | | | | | | 2006-05-15 Brian Cameron <brian.cameron@sun.com> * gui/gdmcommon.c: Use ngettext. Patch provided by Benoit Dejean <benoit@placenet.org>. Fixes bug #341680.
* Fix bug that was causing the ShowGnomeFailsafeSession andBrian Cameron2006-05-121-7/+2
| | | | | | | | 2006-05-12 Brian Cameron <brian.cameron@sun.com> * gui/gdmsession.c: Fix bug that was causing the ShowGnomeFailsafeSession and ShowGnomeXtermSession configuration values not to work right.
* stop using popt in favour of glib's GOption command line parsing.Christian Kirbach2006-05-124-79/+66
| | | | | | | | | | | | | | | 2006-05-12 Christian Kirbach <Christian.Kirbach@siemens.com> * daemon/gdm.c, gui/gdmXnestchosser.c, gui/gdmchooser.c, gui/gdmflexiserver.c: stop using popt in favour of glib's GOption command line parsing. * docs/C/gdm.xml: -nodaemon command line option has become --nodaemon. GDM User Commands section has been rewritten accordingly. Also the interface stability sections reflects the new changes. * daemon/gdm.c (gdm_handle_user_message): Fix compiler warning (too few arguments). * gui/gdmconfig.c (gdm_config_get_xservers): Remove two obsolete variable declarations.
* Fix layout of buttons. Patch provided by Erwann Chenede.Brian Cameron2006-05-121-14/+10
| | | | | | | 2006-05-12 Brian Cameron <brian.cameron@sun.com> * gui/greeter/greeter_geometry.c: Fix layout of buttons. Patch provided by Erwann Chenede.
* Fix spacing.Brian Cameron2006-05-121-1/+1
| | | | | | 2006-05-12 Brian Cameron <brian.cameron@sun.com> * gui/greeter/greeter_parser.c: Fix spacing.
* Change "Start Over" to "Start Again" since discussion with Calum BensonBrian Cameron2006-05-095-6/+6
| | | | | | | | | | | 2006-05-09 Brian Cameron <brian.cameron@sun.com> * gui/gdmlogin.c, gui/greeter/greeter_parser.c, gui/greeter/themes/circles/circles.xml, gui/greeter/themes/happygnome/happygnome.xml, gui/greeter/themes/happygnome-list/happygnome-list.xml: Change "Start Over" to "Start Again" since discussion with Calum Benson determined that "Start Over" is not good English.
* Fix configure so it puts the right string into ssh.desktop.in, BackoutBrian Cameron2006-05-091-4/+0
| | | | | | | | | 2006-05-09 Brian Cameron <brian.cameron@sun.com> * configure.ac, gui/greeter/greeter_geometry.c: Fix configure so it puts the right string into ssh.desktop.in, * gui/greeter/greeter_geometry.c: Backout change made on 05/08, since it was broken.
* Now be smarter about child allocation width when working with fixed.Brian Cameron2006-05-081-1/+5
| | | | | | | 2006-05-08 Brian Cameron <brian.cameron@sun.com> * gui/greeter/greeter_geometry.c: Now be smarter about child allocation width when working with fixed.
* Remove double-free. Fixes bug #340668. Patch provided by Joe Marcus ClarkBrian Cameron2006-05-041-8/+6
| | | | | | | 2006-05-04 Brian Cameron <brian.cameron@sun.com> * gui/greeter/greeter_parser.c: Remove double-free. Fixes bug #340668. Patch provided by Joe Marcus Clark <marcus@freebsd.org>.
* Updated. Now use "Start Over" instead of Cancel.Brian Cameron2006-05-031-1/+1
| | | | | | | | 2006-05-02 Brian Cameron <brian.cameron@sun.com> * Release 2.15.1: * NEWS: Updated. * gui/gdmlogin.c: Now use "Start Over" instead of Cancel.
* Add pam-error-logo item type. Add item type button to use a real GTK+Brian Cameron2006-04-2710-336/+390
| | | | | | | | | | | | | | | | | | | | | 2006-04-26 Brian Cameron <brian.cameron@sun.com> * gui/greeter_item_pam.c: Add pam-error-logo item type. * gui/greeter/greeter_item.h, gui/greeter/greeter_canvas_item.c, gui/greeter/greeter_geometry, gui/greeter/greeter_parser.c: Add item type button to use a real GTK+ button, this better supports accessibility. Add "startover" string to stock, this better name for the "Cancel" button was recommended. * gui/greeter/themes/happygnome/happygnome.xml, gui/greeter/themes/happygnome/happygnome-list.xml, gui/greeter/themes/circles/circles.xml: Updated theme to use real GTK+ buttons. Now says "Start Over" instead of "Cancel" on the button. * gui/greeter/greeter_events.c, gui/greeter/greeter_item.c: Code cleanup. * docs/gdm/gdm.xml: Add docs for new features and the gtk-theme greeter element feature added in 2.12 but after string-freeze, so docs couldn't be updated then.
* Adding per-display configuration support to GDM. Now if user has a fileBrian Cameron2006-04-274-3/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-04-26 Brian Cameron <brian.cameron@sun.com> Adding per-display configuration support to GDM. Now if user has a file named /etc/gdm/custom.conf:<displaynum>, the settings in this file will override the /usr/share/gdm/defaults.conf and /etc/X11/gdm/custom.conf settings. Only keys that affect the GUI behavior are supported. These include those in the "gui" and "greeter" sections and the security/PamStack key. * daemon/gdm.c: Update GET_CONFIG command so it accepts a display argument. It is backwards compatible and will return the per-display setting if this is passed in, or the non-display value if not passed in. Fix bug that caused PreFetch key to not just return the once as it is supposed to. * daemon/gdmconfig.[ch], jui/gdmconfig.c: Updated to support per-display configuration. * daemon/gdm.h: Updated documentation for new command. Corrected some errors. * daemon/verify-pam.c, daemon/gdmconfig.c config/gdm.conf.in: Add security/PamStack configuration variable as a per-display setting. This allows the sysadmin to specify a different PAM stack, if desired and also allows customization per display. Also added key info for some BackgroundProgram keys that were missing. * config/PreSession.in: now requests configuration data per-display. Will use normal configuration if no per-display config files. * gui/.cvsignore: Add gdmsetup.desktop.in * gui/gdmdynamic.: Improve usage warning. * gui/gdmlogin.c: Add some debug * docs/C/gdm.xml: Updated docs to reflect new per-display config.
* i2006-04-14 Brian Cameron <brian.cameron@sun.com>GDM2_2_14_3Brian Cameron2006-04-241-4/+3
| | | | | * configure.ac: Update to new release version. * gui/Makefile.am, po/POTFILES.in: Fix gdmsetup.desktop.in.in stuff.
* Fix for C89 compilers. Patch by Jens Granseuer <jensgr@gmx.net>.Brian Cameron2006-04-181-1/+3
| | | | | | | 2006-04-17 Brian Cameron <brian.cameron@sun.com> * gui/gdmsetup.c: Fix for C89 compilers. Patch by Jens Granseuer <jensgr@gmx.net>.
* Fixed strings so that they are marked as translatable. Fixes bug #338765.Brian Cameron2006-04-173-14/+14
| | | | | | | | | 2006-04-17 Brian Cameron <brian.cameron@sun.com> * gui/gdmlogin.c, gui/gdmsetup.glade, gui/greeter/greeter.c: Fixed strings so that they are marked as translatable. Fixes bug #338765. Patch provided by Vincent Fretin <vincent.fretin@gmail.com>.
* Fix setting of GdmHosts so it should use the hosts from the config fileBrian Cameron2006-04-171-25/+30
| | | | | | | | | | | | 2006-04-17 Brian Cameron <brian.cameron@sun.com> * gui/gdmchooser.c: Fix setting of GdmHosts so it should use the hosts from the config file when when BROADCAST/MULTICAST is set to false. Partial fix for #338274. Thanks to Tiago Vignatti <tv02@c3sl.ufpr.br> for noticing this. * configure.ac, po/LINGUAS: Updated to reflect latest po/LINGUAS patch. Fixes bug #33769. Patch provided by Przemyslaw Grzegorczyk <pgrzegorczyk@gmail.com>.
* Added. This makes gdmsetup.desktop get properly translated. Fixes bugBrian Cameron2006-04-172-5/+5
| | | | | | | | | | 2006-04-17 Brian Cameron <brian.cameron@sun.com> * gui/gdmsetup.desktop.in.in: Added. This makes gdmsetup.desktop get properly translated. Fixes bug #334647. Patch by Vincent Fretin <vincent.fretin@gmail.com> * gui/gdmsetup.desktop.in: Removed * gui/Makefile.am: Updated to reflect change.
* Updated NEWS. Fix references to the BROADCAST key so it is correctlyBrian Cameron2006-04-131-2/+2
| | | | | | | | 2006-04-13 Brian Cameron <brian.cameron@sun.com> * NEWS: Updated NEWS. * gui/gdmchooser.c: Fix references to the BROADCAST key so it is correctly listed as a bool, not a string.
* Now include gdmthemetester.in in EXTRA_DIST instead of gdmthemetester.Brian Cameron2006-04-111-1/+1
| | | | | | | 2006-04-11 Brian Cameron <brian.cameron@sun.com> * gui/greeter/Makefile.am: Now include gdmthemetester.in in EXTRA_DIST instead of gdmthemetester.
* Update .cvsignore files to include generated files not currently listed.Brian Cameron2006-04-051-0/+3
| | | | | | | | 2006-04-05 Brian Cameron <brian.cameron@sun.com> * .cvsignore, docs/es/.cvsignore, docs/uk/.cvsignore, gui/.cvsignore, m4/.cvsignore, po/.cvsignore: Update .cvsignore files to include generated files not currently listed.
* HIG fix for spacing between the menu bar and welcome message categories.Dennis Cranston2006-04-031-102/+115
| | | | | | | 2006-03-30 Dennis Cranston <dennis_cranston@yahoo.com> * gui/gdmsetup.glade: HIG fix for spacing between the menu bar and welcome message categories.
* Fix "Show Actions Menu" section so it appears when both "plain" andBrian Cameron2006-03-301-224/+236
| | | | | | | | 2006-03-29 Brian Cameron <brian.cameron@sun.com> * gui/gdmsetup.glade: Fix "Show Actions Menu" section so it appears when both "plain" and "themed" is chosen. Fixes bug #335550.
* Fix warning.Brian Cameron2006-03-291-1/+1
| | | | | | 2006-03-28 Brian Cameron <brian.cameron@sun.com> * gui/gdmcomm.h: Fix warning.
* Removed a C99 local variable definition that breaks the build with gccJulio M. Merino Vidal2006-03-288-22/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 006-03-28 Julio M. Merino Vidal <jmmv@NetBSD.org> * daemon/xdmcp.c: Removed a C99 local variable definition that breaks the build with gcc 2.95 (e.g. under NetBSD 1.6). Fixes bug #336368. 2006-03-28 Julio M. Merino Vidal <jmmv@NetBSD.org> * daemon/gdmconfig.c, daemon/server.c: Include sys/resource.h, needed to use setpriority(2) and its associated definitions. Fixes the build under NetBSD, closing bug #336369. 2006-03-28 Julio M. Merino Vidal <jmmv@NetBSD.org> * Makefile.am, README.install, acconfig.h, configure.ac, gdmsetup-security.in, config/Makefile.am, config/Xsession.in, config/gdm.conf.in, daemon/Makefile.am, daemon/gdm.c, daemon/gdm.h, daemon/gdm.in, daemon/gdmconfig.c, daemon/misc.c, daemon/server.c, daemon/slave.c, docs/C/gdm.xml, gui/Makefile.am, gui/gdmphotosetup.c, gui/gdmsetup.c, gui/gdmsetup.desktop.in, gui/greeter/Makefile.am, gui/greeter/gdmthemetester.in, gui/greeter/greeter.c, gui/modules/Makefile.am: Get rid of all EXPANDED_* variables from the build procedure. Directory-related variables must only be expanded from the Makefiles so that they can be easily overriden during the installation phase. Fixes bug #336364.
* Now support --with-sysconfsubdir so that GDM can be configured to have theBrian Cameron2006-03-2816-31/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-03-27 Brian Cameron <brian.cameron@sun.com> * acconfig.h, configure.ac, config/Makefile.am, config/PostLogin, config/gdm.conf.in, daemon/Makefile.am, daemon/gdm.[ch], daemon/gdmconfig.c, gui/Makefile.am, gui/greeter/Makeifle.am, gui/modules/Makefile.am, gui/modules/dwellmouselistener.c, gui/modules/keymouselistener.c, utils/Makefile.am: Now support --with-sysconfsubdir so that GDM can be configured to have the config files in a directory that isn't hardcoded to have "/gdm" at the end. Fixes bug #335957. Patch provided by Julio M Merino Vidal <jmmv@NetBSD.org> with minor changes by me to fix some usage of EXPANDED_GDMCONFDIR that caused breakage on Solaris. * gui/gdmXnestchooser, gui/gdmchooser.c, gui/gdmcomm.[ch], gui/gdmdynamic.c, gui/gdmflexiserver.c, gui/gdmlogin.c, gui/gdmphotosetup.c, gui/greeter/greeter.c: Now use gdmcomm_comm_bulk_start and gdmcomm_comm_bulk_stop to wrap areas of the code where we want to keep the sockets connection open for performance. This makes gdmsetup start faster and better ensures that sockets are not left open. Now gdmcomm_call_gdm will always close the socket unless inside such a block, ensuring that if distros add patches to read new config values at random points in the code, the socket won't be left open. * daemon/gdm.c: Fix gdm_debug message.
* Updated to have new logo file.Brian Cameron2006-03-212-2/+2
| | | | | | | | 2006-03-20 Brian Cameron <brian.cameron@sun.com> * gui/greeter/themes/happygnome/Makefile.am gui/greeter/themes/happygnome-list/Makefile.am: Updated to have new logo file.
* Added new SVG official logos and now theme uses the new logo. Removed oldBrian Cameron2006-03-216-6/+72
| | | | | | | | | | | | | | 2006-03-20 Brian Cameron <brian.cameron@sun.com> * gui/greeter/themes/happygnome/gnome-logo.svg, gui/greeter/themes/happygnome/happygnome.xml gui/greeter/themes/happygnome-list/gnome-logo.svg, gui/greeter/themes/happygnome-list/happygnome.xml: Added new SVG official logos and now theme uses the new logo. * gui/greeter/themes/happygnome/gnome-logo.png, gui/greeter/themes/happygnome-list/gnome-logo.png: Removed old logo.
* Fix error that causes a core dump when you click on fields that have anBrian Cameron2006-03-191-2/+7
| | | | | | | | 2006-03-19 Brian Cameron <brian.cameron@sun.com> * gui/greeter/greeter_events.c: Fix error that causes a core dump when you click on fields that have an id. This should fix bug #332679.
* Mark string "Welcome" as to be translated. This doesn't break the stringBrian Cameron2006-03-161-1/+1
| | | | | | | | 2006-03-15 Brian Cameron <brian.cameron@sun.com> * gui/gdmlogin.c: Mark string "Welcome" as to be translated. This doesn't break the string freeze but with this change translators can hopefully get this translated.
* Fix TryExec to use EXPANDED_SBINDIR, so that the program will run even ifBrian Cameron2006-03-161-1/+1
| | | | | | | 2006-03-15 Brian Cameron <brian.cameron@sun.com> * gui/gdmsetup.desktop.in: Fix TryExec to use EXPANDED_SBINDIR, so that the program will run even if sbin isn't in the user's PATH.