(solved) lcdproc as a user

Hi all,
I have just setup lcdproc and it works fine as root, but if I start lcdproc as a user nothing happens and the process dies...
If I start it as root I get all I want displayed on the screen, but I cannot find what's the difference since the server lcdd runs as root anyway...
Any idea?
Thanks
weirdly enough lcdproc works as a user if I add '-f', not sure why though...
Last edited by gee (2010-08-25 20:06:30)

Wittfella wrote:I have never used consolekit or any of those udisk/udiskie/devmon wrappers and things mount automatically for me fine just using the basic udev rules.  I just took the first example listed in the udev wiki and it works flawlessly.
+1
https://wiki.archlinux.org/index.php/Ud … SB_devices
Pick one and use it, should work like a charm.

Similar Messages

  • [SOLVED]MPD, PulseAudio & Systemd/User

    Since the advent of skype 4.3 I've had to switch to using pulseaudio. Things seems to be working fine except for the interaction between pulseaudio and mpd. My goal is to attain the same functionality as I had before when I was just using alsa. The main problem seems to be that the mpd daemon starts before pulseaudio. This means that when I reboot, for example, my music doesn't automatically keep playing. However if I toggle mpc (or open ncmpcpp and unpause) then it works fine.
    What I have done
    1) I installed mpd using the script found on the wiki
    1a) copied ~/.config/mpd/mpd.conf to /etc/mpd.conf and uncomment #user line so it runs as my user
    1b) enabled the mpd service with systemctl so it starts on boot, as directed to from 1)
    2) Applied the workaround detailed here to make pulseaudio play nice with mpd
    From what I can understand this results in the mpd daemon using the /etc/mpd.conf file which mirrors my local one (but I think the process is still started as root?)
    If I don't do 2) then I get a problem where if I try to open pavucontrol I get an error saying I'm unable to connect and the system feels very unresponsive. Two second delays navigating around in thunar for example.
    fuser /dev/snd/* outputs
    » sudo fuser /dev/snd/*
    /dev/snd/controlC0: 440
    /dev/snd/controlC1: 440
    /dev/snd/pcmC0D0p: 440m
    » ps aux | grep 440
    quiv 440 1.2 0.1 495964 13248 ? Sl 15:16 0:05 /usr/bin/pulseaudio --start --log-target=syslog
    quiv 2259 0.0 0.0 11668 2296 pts/0 S+ 15:23 0:00 grep --color=auto 440
    For now I have added in
    if grep -q "state: pause" /home/quiv/.config/mpd/state; then
    mpc toggle
    fi
    to my ~/.xinitrc as a work around to get pulse and mpd to work together properly. However it doesn't seem to work all the time. If I leave my music playing then when I reboot the system with reboot it seems that somtimes the state is being saved as paused, and other times as play. I suppose I could just mpc toggle without checking, but I don't want a situation where if I happen to not be playing music that every time I reboot my music starts playing.
    Other things I have tried are;
    A) not using pulseaudio with mpd.
    B) not using systemd to manage mpd. Instead I manually started it in .xinitrc and pointed it to my ~/.config/mpd/mpd.conf file. I believe this means it runs as my own user instead of as root. When I did this I commented the username line and also undid 2) from above in ~/.config/mpd/mpd.conf
    The problem with A) is that if I use alsa with mpd, mpd hogs my soundcard. My card becomes unselectable in pavucontrol and I cannot use it with pulseaudio., meanng no skype. The benefit of doing this (this is how I used to do it before I needed pulseaudio) is I have no problems with mpd's state being saved incorrectly.
    The problem with B) is the mpdstate is saved incorrectly when for example I issue reboot. I can reproduce this by changing my currently played song then rebooting. When I boot back up mpd resumes playback from the previous session instead of recognizing the last thing I was playing. I had a search around on the forums and I found this issue which seems to describe what is happening. There doesn't seem to be a solution there instead a suggestion to user systemd (which I would like to do!) instead to manage mpd. Rasi's post details a unit file but I'm unsure what to do with this.
    Looking at the wiki it seems like maybe I am supposed to provide this file so that it overwrites the default mpd.service unit. So I followed the steps listed there. First I created the directory /etc/systemd/system/mpd.d/ then made the user.conf file inside. I tried just putting the additional arguments in
    [Service]
    User=YOUR_USER
    PAMName=system-local-login
    I also remember trying to overwrite the entire [Service] section of the original by using
    [Service]
    User=YOUR_USER
    PAMName=system-local-login
    ExecStart=
    ExecStart=/usr/bin/mpd --no-daemon
    because I think just adding the addtional parameters might not have worked. But I'm not sure on this point, maybe both ways worked. This seemed to work but I had the same problem as above. The state was still being saved incorrectly sometimes when I rebooted. I would get a previous session instead of the most recent change. So I tried the other method for overwriting systemd unit files and made the file /etc/systemd/system/mpd.service in which I pasted Rasi's entire unit file. This also seemed to work, but still the incorrect state problem happened.
    At this point I didn't know what to try. It seemed like the only option left was to set up mpd using a local configuration and setting up a systemd/User session and managing it that way. The wiki indiciated that if I did it this way I would not have to use the method 2) above. However I was/still am hesistant about doing this. I'm new to arch and the systemd/User wiki page seems very intimidating. I worry that I will create problems that I won't understand how to solve using this method just for the chance that mpd will function correclty with pulse. However I seemed to have exhausted all my possible options so I thought whatever I'll try it anyway! I'm certain I probably haven't done it right however.
    So once again I turned to the wiki to help me with setting this up. However I can't make sense of the article. I don't know if I should follow ONLY the Setup since systemd 206 or if I should follow both setup sections? I decided to follow only the first section. I use no DE so I commented out the
    [[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx
    line in my ~/.zprofile. When I set up my system I followed the Automatic login to virtual console. I left this file alone, but upon second thoughts maybe I should have disabled this too? I don't understand if using xlogin-git to austoart Xorg, as described in the systemd/User page, requires me to get rid of this too. I think xlogin-git just starts Xorg so automatic login via getty should be fine?
    Immediately when I boot in using systemd to manage my session I notice that there are problems. I don't think my environment variables are being sourced from .zshenv because my panel fails to load. If I kill the panel and load it again it works. This makes me think there is something wrong with the order of units started with systemd.
    » sudo journalctl --this-boot --no-pager | grep -i panel ~
    Jul 05 16:25:39 lorelai bash[494]: /home/quiv/.config/bspwm/panel/panel: line 16: : No such file or directory
    Jul 05 16:25:39 lorelai bash[494]: /home/quiv/.config/bspwm/panel/panel: line 17: : No such file or directory
    Jul 05 16:25:39 lorelai bash[494]: /home/quiv/.config/bspwm/panel/panel: line 18: : No such file or directory
    In each instance panel is trying to do things based on $PANEL_FIFO which is exported from ~/.zshenv but it doesn't appear to be set at the time systemd starts things up. Apart from these problems, which are probably undoubtedly due to the fact I failed to set up systemd/User properly, I still have problems with mpd. The state seems to be remembered correctly now, however when I reboot I still have to toggle mpc for it to start playback. It seems to be the same problem as when I use setup detailed intially. I suspect perhaps once again there is something wrong with the order here. MPD starts before pulse so it doesn't find anything to play through, then once I issue the mpc toggle command pulse is started and all is happy.
    A final note is that I was getting this error yesterday when using systemd/User
    ● mpd.service - Music Player Daemon
    Loaded: loaded (/usr/lib/systemd/system/mpd.service; enabled)
    Active: inactive (dead)
    Jul 05 03:11:41 lorelai pulseaudio[450]: [pulseaudio] module-jackdbus-detect.c: Unable to contact D-Bus session bus: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
    Jul 05 03:11:41 lorelai pulseaudio[450]: [pulseaudio] module.c: Failed to load module "module-jackdbus-detect" (argument: "channels=2"): initialization failed.
    Jul 05 03:11:41 lorelai pulseaudio[450]: [pulseaudio] main.c: Module load failed.
    Jul 05 03:13:35 lorelai systemd[1]: Stopping Music Player Daemon...
    Jul 05 03:13:35 lorelai systemd[1]: Stopped Music Player Daemon.
    but it doesn't seem to happen anymore.
    Also I have no idea if I'm even supposed to use it like this but
    » sudo systemctl --user enable mpd ~
    Failed to get D-Bus connection: Connection refused
    I tried this because I was wondering if mpd was even using the correct service when using systemd/User. I thought perhaps it just was using the one in /etc/systemd/system/ instead of /usr/lib/systemd/user/. I'm still not sure about this.
    In the end I've exhausted whatever I can think of. I'm sure I've done a lot of things wrong but I tried my best. Hopefully somebody knows what I've done wrong and can help me.
    ~/.config/mpd/mpd.conf
    # An example configuration file for MPD.
    # Read the user manual for documentation: http://www.musicpd.org/doc/user/
    # Files and directories #######################################################
    # This setting controls the top directory which MPD will search to discover the
    # available audio files and add them to the daemon's online database. This
    # setting defaults to the XDG directory, otherwise the music directory will be
    # be disabled and audio files will only be accepted over ipc socket (using
    # file:// protocol) or streaming files over an accepted protocol.
    music_directory "~/Music"
    # This setting sets the MPD internal playlist directory. The purpose of this
    # directory is storage for playlists created by MPD. The server will use
    # playlist files not created by the server but only if they are in the MPD
    # format. This setting defaults to playlist saving being disabled.
    playlist_directory "~/.config/mpd/playlists"
    # This setting sets the location of the MPD database. This file is used to
    # load the database at server start up and store the database while the
    # server is not up. This setting defaults to disabled which will allow
    # MPD to accept files over ipc socket (using file:// protocol) or streaming
    # files over an accepted protocol.
    db_file "~/.config/mpd/database"
    # These settings are the locations for the daemon log files for the daemon.
    # These logs are great for troubleshooting, depending on your log_level
    # settings.
    # The special value "syslog" makes MPD use the local syslog daemon. This
    # setting defaults to logging to syslog, otherwise logging is disabled.
    log_file "~/.config/mpd/log"
    # This setting sets the location of the file which stores the process ID
    # for use of mpd --kill and some init scripts. This setting is disabled by
    # default and the pid file will not be stored.
    pid_file "~/.config/mpd/pid"
    # This setting sets the location of the file which contains information about
    # most variables to get MPD back into the same general shape it was in before
    # it was brought down. This setting is disabled by default and the server
    # state will be reset on server start up.
    state_file "~/.config/mpd/state"
    # The location of the sticker database. This is a database which
    # manages dynamic information attached to songs.
    sticker_file "~/.config/mpd/sticker.sql"
    # General music daemon options ################################################
    # This setting specifies the user that MPD will run as. MPD should never run as
    # root and you may use this setting to make MPD change its user ID after
    # initialization. This setting is disabled by default and MPD is run as the
    # current user.
    #user "quiv"
    # This setting specifies the group that MPD will run as. If not specified
    # primary group of user specified with "user" setting will be used (if set).
    # This is useful if MPD needs to be a member of group such as "audio" to
    # have permission to use sound card.
    #group "nogroup"
    # This setting sets the address for the daemon to listen on. Careful attention
    # should be paid if this is assigned to anything other then the default, any.
    # This setting can deny access to control of the daemon.
    # For network
    bind_to_address "127.0.0.1"
    # And for Unix Socket
    bind_to_address "~/.config/mpd/socket"
    # This setting is the TCP port that is desired for the daemon to get assigned
    # to.
    port "6600"
    # This setting controls the type of information which is logged. Available
    # setting arguments are "default", "secure" or "verbose". The "verbose" setting
    # argument is recommended for troubleshooting, though can quickly stretch
    # available resources on limited hardware storage.
    log_level "default"
    # If you have a problem with your MP3s ending abruptly it is recommended that
    # you set this argument to "no" to attempt to fix the problem. If this solves
    # the problem, it is highly recommended to fix the MP3 files with vbrfix
    # (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
    # point gapless MP3 playback can be enabled.
    gapless_mp3_playback "yes"
    # Setting "restore_paused" to "yes" puts MPD into pause mode instead
    # of starting playback after startup.
    #restore_paused "no"
    # This setting enables MPD to create playlists in a format usable by other
    # music players.
    #save_absolute_paths_in_playlists "no"
    # This setting defines a list of tag types that will be extracted during the
    # audio file discovery process. The complete list of possible values can be
    # found in the mpd.conf man page.
    #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
    # This setting enables automatic update of MPD's database when files in
    # music_directory are changed.
    auto_update "yes"
    # Limit the depth of the directories being watched, 0 means only watch
    # the music directory itself. There is no limit by default.
    auto_update_depth "3"
    # Symbolic link behavior ######################################################
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links outside of the configured music_directory.
    #follow_outside_symlinks "yes"
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links inside of the configured music_directory.
    #follow_inside_symlinks "yes"
    # Zeroconf / Avahi Service Discovery ##########################################
    # If this setting is set to "yes", service information will be published with
    # Zeroconf / Avahi.
    #zeroconf_enabled "yes"
    # The argument to this setting will be the Zeroconf / Avahi unique name for
    # this MPD server on the network.
    #zeroconf_name "Music Player"
    # Permissions #################################################################
    # If this setting is set, MPD will require password authorization. The password
    # can setting can be specified multiple times for different password profiles.
    #password "password@read,add,control,admin"
    # This setting specifies the permissions a user has who has not yet logged in.
    #default_permissions "read,add,control,admin"
    # Database #######################################################################
    #database {
    # plugin "proxy"
    # host "other.mpd.host"
    # port "6600"
    # Input #######################################################################
    input {
    plugin "curl"
    proxy "proxy.isp.com:8080"
    proxy_user "user"
    proxy_password "password"
    # Audio Output ################################################################
    # MPD supports various audio output types, as well as playing through multiple
    # audio outputs at the same time, through multiple audio_output settings
    # blocks. Setting this block is optional, though the server will only attempt
    # autodetection for one sound card.
    # An example of an ALSA output:
    #audio_output {
    # type "alsa"
    # name "My ALSA Device"
    ## device "hw:0,0" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "default" # optional
    ## mixer_control "PCM" # optional
    ## mixer_index "0" # optional
    audio_output {
    type "pulse"
    name "pulse audio"
    format "48000:16:2"
    ## server "127.0.0.1"
    ## sink "remote_server_sink" # optional
    # An example of an OSS output:
    #audio_output {
    # type "oss"
    # name "My OSS Device"
    ## device "/dev/dsp" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "/dev/mixer" # optional
    ## mixer_control "PCM" # optional
    # An example of a shout output (for streaming to Icecast):
    #audio_output {
    # type "shout"
    # encoding "ogg" # optional
    # name "My Shout Stream"
    # host "localhost"
    # port "8000"
    # mount "/mpd.ogg"
    # password "hackme"
    # quality "5.0"
    # bitrate "128"
    # format "44100:16:1"
    ## protocol "icecast2" # optional
    ## user "source" # optional
    ## description "My Stream Description" # optional
    ## url "http://example.com" # optional
    ## genre "jazz" # optional
    ## public "no" # optional
    ## timeout "2" # optional
    ## mixer_type "software" # optional
    # An example of a recorder output:
    #audio_output {
    # type "recorder"
    # name "My recorder"
    # encoder "vorbis" # optional, vorbis or lame
    # path "/var/lib/mpd/recorder/mpd.ogg"
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # An example of a httpd output (built-in HTTP streaming server):
    #audio_output {
    # type "httpd"
    # name "My HTTP Stream"
    # encoder "vorbis" # optional, vorbis or lame
    # port "8000"
    # bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # max_clients "0" # optional 0=no limit
    # An example of a pulseaudio output (streaming to a remote pulseaudio server)
    #audio_output {
    # type "pulse"
    # name "My Pulse Output"
    ## server "remote_server" # optional
    ## sink "remote_server_sink" # optional
    # An example of a winmm output (Windows multimedia API).
    #audio_output {
    # type "winmm"
    # name "My WinMM output"
    ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
    # or
    ## device "0" # optional
    ## mixer_type "hardware" # optional
    # An example of an openal output.
    #audio_output {
    # type "openal"
    # name "My OpenAL output"
    ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
    ## Example "pipe" output:
    #audio_output {
    # type "pipe"
    # name "my pipe"
    # command "aplay -f cd 2>/dev/null"
    ## Or if you're want to use AudioCompress
    # command "AudioCompress -m | aplay -f cd 2>/dev/null"
    ## Or to send raw PCM stream through PCM:
    # command "nc example.org 8765"
    # format "44100:16:2"
    ## An example of a null output (for no audio output):
    #audio_output {
    # type "null"
    # name "My Null Output"
    # mixer_type "none" # optional
    # If MPD has been compiled with libsamplerate support, this setting specifies
    # the sample rate converter to use. Possible values can be found in the
    # mpd.conf man page or the libsamplerate documentation. By default, this is
    # setting is disabled.
    #samplerate_converter "Fastest Sinc Interpolator"
    # Normalization automatic volume adjustments ##################################
    # This setting specifies the type of ReplayGain to use. This setting can have
    # the argument "off", "album", "track" or "auto". "auto" is a special mode that
    # chooses between "track" and "album" depending on the current state of
    # random playback. If random playback is enabled then "track" mode is used.
    # See <http://www.replaygain.org> for more details about ReplayGain.
    # This setting is off by default.
    replaygain "album"
    # This setting sets the pre-amp used for files that have ReplayGain tags. By
    # default this setting is disabled.
    replaygain_preamp "0"
    # This setting sets the pre-amp used for files that do NOT have ReplayGain tags.
    # By default this setting is disabled.
    #replaygain_missing_preamp "0"
    # This setting enables or disables ReplayGain limiting.
    # MPD calculates actual amplification based on the ReplayGain tags
    # and replaygain_preamp / replaygain_missing_preamp setting.
    # If replaygain_limit is enabled MPD will never amplify audio signal
    # above its original level. If replaygain_limit is disabled such amplification
    # might occur. By default this setting is enabled.
    #replaygain_limit "yes"
    # This setting enables on-the-fly normalization volume adjustment. This will
    # result in the volume of all playing audio to be adjusted so the output has
    # equal "loudness". This setting is disabled by default.
    #volume_normalization "no"
    # MPD Internal Buffering ######################################################
    # This setting adjusts the size of internal decoded audio buffering. Changing
    # this may have undesired effects. Don't change this if you don't know what you
    # are doing.
    #audio_buffer_size "4096"
    # This setting controls the percentage of the buffer which is filled before
    # beginning to play. Increasing this reduces the chance of audio file skipping,
    # at the cost of increased time prior to audio playback.
    #buffer_before_play "10%"
    # Resource Limitations ########################################################
    # These settings are various limitations to prevent MPD from using too many
    # resources. Generally, these settings should be minimized to prevent security
    # risks, depending on the operating resources.
    #connection_timeout "60"
    #max_connections "10"
    #max_playlist_length "16384"
    #max_command_list_size "2048"
    #max_output_buffer_size "8192"
    # Character Encoding ##########################################################
    # If file or directory names do not display correctly for your locale then you
    # may need to modify this setting.
    #filesystem_charset "UTF-8"
    # This setting controls the encoding that ID3v1 tags should be converted from.
    #id3v1_encoding "ISO-8859-1"
    # SIDPlay decoder #############################################################
    # songlength_database:
    # Location of your songlengths file, as distributed with the HVSC.
    # The sidplay plugin checks this for matching MD5 fingerprints.
    # See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
    # default_songlength:
    # This is the default playing time in seconds for songs not in the
    # songlength database, or in case you're not using a database.
    # A value of 0 means play indefinitely.
    # filter:
    # Turns the SID filter emulation on or off.
    #decoder {
    # plugin "sidplay"
    # songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
    # default_songlength "120"
    # filter "true"
    /etc/mpd.config
    # An example configuration file for MPD.
    # Read the user manual for documentation: http://www.musicpd.org/doc/user/
    # Files and directories #######################################################
    # This setting controls the top directory which MPD will search to discover the
    # available audio files and add them to the daemon's online database. This
    # setting defaults to the XDG directory, otherwise the music directory will be
    # be disabled and audio files will only be accepted over ipc socket (using
    # file:// protocol) or streaming files over an accepted protocol.
    music_directory "~/Music"
    # This setting sets the MPD internal playlist directory. The purpose of this
    # directory is storage for playlists created by MPD. The server will use
    # playlist files not created by the server but only if they are in the MPD
    # format. This setting defaults to playlist saving being disabled.
    playlist_directory "~/.config/mpd/playlists"
    # This setting sets the location of the MPD database. This file is used to
    # load the database at server start up and store the database while the
    # server is not up. This setting defaults to disabled which will allow
    # MPD to accept files over ipc socket (using file:// protocol) or streaming
    # files over an accepted protocol.
    db_file "~/.config/mpd/database"
    # These settings are the locations for the daemon log files for the daemon.
    # These logs are great for troubleshooting, depending on your log_level
    # settings.
    # The special value "syslog" makes MPD use the local syslog daemon. This
    # setting defaults to logging to syslog, otherwise logging is disabled.
    log_file "~/.config/mpd/log"
    # This setting sets the location of the file which stores the process ID
    # for use of mpd --kill and some init scripts. This setting is disabled by
    # default and the pid file will not be stored.
    pid_file "~/.config/mpd/pid"
    # This setting sets the location of the file which contains information about
    # most variables to get MPD back into the same general shape it was in before
    # it was brought down. This setting is disabled by default and the server
    # state will be reset on server start up.
    state_file "~/.config/mpd/state"
    # The location of the sticker database. This is a database which
    # manages dynamic information attached to songs.
    sticker_file "~/.config/mpd/sticker.sql"
    # General music daemon options ################################################
    # This setting specifies the user that MPD will run as. MPD should never run as
    # root and you may use this setting to make MPD change its user ID after
    # initialization. This setting is disabled by default and MPD is run as the
    # current user.
    user "quiv"
    # This setting specifies the group that MPD will run as. If not specified
    # primary group of user specified with "user" setting will be used (if set).
    # This is useful if MPD needs to be a member of group such as "audio" to
    # have permission to use sound card.
    #group "nogroup"
    # This setting sets the address for the daemon to listen on. Careful attention
    # should be paid if this is assigned to anything other then the default, any.
    # This setting can deny access to control of the daemon.
    # For network
    bind_to_address "127.0.0.1"
    # And for Unix Socket
    bind_to_address "~/.config/mpd/socket"
    # This setting is the TCP port that is desired for the daemon to get assigned
    # to.
    port "6600"
    # This setting controls the type of information which is logged. Available
    # setting arguments are "default", "secure" or "verbose". The "verbose" setting
    # argument is recommended for troubleshooting, though can quickly stretch
    # available resources on limited hardware storage.
    log_level "default"
    # If you have a problem with your MP3s ending abruptly it is recommended that
    # you set this argument to "no" to attempt to fix the problem. If this solves
    # the problem, it is highly recommended to fix the MP3 files with vbrfix
    # (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
    # point gapless MP3 playback can be enabled.
    gapless_mp3_playback "yes"
    # Setting "restore_paused" to "yes" puts MPD into pause mode instead
    # of starting playback after startup.
    #restore_paused "no"
    # This setting enables MPD to create playlists in a format usable by other
    # music players.
    #save_absolute_paths_in_playlists "no"
    # This setting defines a list of tag types that will be extracted during the
    # audio file discovery process. The complete list of possible values can be
    # found in the mpd.conf man page.
    #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
    # This setting enables automatic update of MPD's database when files in
    # music_directory are changed.
    auto_update "yes"
    # Limit the depth of the directories being watched, 0 means only watch
    # the music directory itself. There is no limit by default.
    auto_update_depth "3"
    # Symbolic link behavior ######################################################
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links outside of the configured music_directory.
    #follow_outside_symlinks "yes"
    # If this setting is set to "yes", MPD will discover audio files by following
    # symbolic links inside of the configured music_directory.
    #follow_inside_symlinks "yes"
    # Zeroconf / Avahi Service Discovery ##########################################
    # If this setting is set to "yes", service information will be published with
    # Zeroconf / Avahi.
    #zeroconf_enabled "yes"
    # The argument to this setting will be the Zeroconf / Avahi unique name for
    # this MPD server on the network.
    #zeroconf_name "Music Player"
    # Permissions #################################################################
    # If this setting is set, MPD will require password authorization. The password
    # can setting can be specified multiple times for different password profiles.
    #password "password@read,add,control,admin"
    # This setting specifies the permissions a user has who has not yet logged in.
    #default_permissions "read,add,control,admin"
    # Database #######################################################################
    #database {
    # plugin "proxy"
    # host "other.mpd.host"
    # port "6600"
    # Input #######################################################################
    input {
    plugin "curl"
    proxy "proxy.isp.com:8080"
    proxy_user "user"
    proxy_password "password"
    # Audio Output ################################################################
    # MPD supports various audio output types, as well as playing through multiple
    # audio outputs at the same time, through multiple audio_output settings
    # blocks. Setting this block is optional, though the server will only attempt
    # autodetection for one sound card.
    # An example of an ALSA output:
    #audio_output {
    # type "alsa"
    # name "My ALSA Device"
    ## device "hw:0,0" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "default" # optional
    ## mixer_control "PCM" # optional
    ## mixer_index "0" # optional
    audio_output {
    type "pulse"
    name "pulse audio"
    format "48000:16:2"
    server "127.0.0.1"
    ## sink "remote_server_sink" # optional
    # An example of an OSS output:
    #audio_output {
    # type "oss"
    # name "My OSS Device"
    ## device "/dev/dsp" # optional
    ## mixer_type "hardware" # optional
    ## mixer_device "/dev/mixer" # optional
    ## mixer_control "PCM" # optional
    # An example of a shout output (for streaming to Icecast):
    #audio_output {
    # type "shout"
    # encoding "ogg" # optional
    # name "My Shout Stream"
    # host "localhost"
    # port "8000"
    # mount "/mpd.ogg"
    # password "hackme"
    # quality "5.0"
    # bitrate "128"
    # format "44100:16:1"
    ## protocol "icecast2" # optional
    ## user "source" # optional
    ## description "My Stream Description" # optional
    ## url "http://example.com" # optional
    ## genre "jazz" # optional
    ## public "no" # optional
    ## timeout "2" # optional
    ## mixer_type "software" # optional
    # An example of a recorder output:
    #audio_output {
    # type "recorder"
    # name "My recorder"
    # encoder "vorbis" # optional, vorbis or lame
    # path "/var/lib/mpd/recorder/mpd.ogg"
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # An example of a httpd output (built-in HTTP streaming server):
    #audio_output {
    # type "httpd"
    # name "My HTTP Stream"
    # encoder "vorbis" # optional, vorbis or lame
    # port "8000"
    # bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
    ## quality "5.0" # do not define if bitrate is defined
    # bitrate "128" # do not define if quality is defined
    # format "44100:16:1"
    # max_clients "0" # optional 0=no limit
    # An example of a pulseaudio output (streaming to a remote pulseaudio server)
    #audio_output {
    # type "pulse"
    # name "My Pulse Output"
    ## server "remote_server" # optional
    ## sink "remote_server_sink" # optional
    # An example of a winmm output (Windows multimedia API).
    #audio_output {
    # type "winmm"
    # name "My WinMM output"
    ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
    # or
    ## device "0" # optional
    ## mixer_type "hardware" # optional
    # An example of an openal output.
    #audio_output {
    # type "openal"
    # name "My OpenAL output"
    ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
    ## Example "pipe" output:
    #audio_output {
    # type "pipe"
    # name "my pipe"
    # command "aplay -f cd 2>/dev/null"
    ## Or if you're want to use AudioCompress
    # command "AudioCompress -m | aplay -f cd 2>/dev/null"
    ## Or to send raw PCM stream through PCM:
    # command "nc example.org 8765"
    # format "44100:16:2"
    ## An example of a null output (for no audio output):
    #audio_output {
    # type "null"
    # name "My Null Output"
    # mixer_type "none" # optional
    # If MPD has been compiled with libsamplerate support, this setting specifies
    # the sample rate converter to use. Possible values can be found in the
    # mpd.conf man page or the libsamplerate documentation. By default, this is
    # setting is disabled.
    #samplerate_converter "Fastest Sinc Interpolator"
    # Normalization automatic volume adjustments ##################################
    # This setting specifies the type of ReplayGain to use. This setting can have
    # the argument "off", "album", "track" or "auto". "auto" is a special mode that
    # chooses between "track" and "album" depending on the current state of
    # random playback. If random playback is enabled then "track" mode is used.
    # See <http://www.replaygain.org> for more details about ReplayGain.
    # This setting is off by default.
    replaygain "album"
    # This setting sets the pre-amp used for files that have ReplayGain tags. By
    # default this setting is disabled.
    replaygain_preamp "0"
    # This setting sets the pre-amp used for files that do NOT have ReplayGain tags.
    # By default this setting is disabled.
    #replaygain_missing_preamp "0"
    # This setting enables or disables ReplayGain limiting.
    # MPD calculates actual amplification based on the ReplayGain tags
    # and replaygain_preamp / replaygain_missing_preamp setting.
    # If replaygain_limit is enabled MPD will never amplify audio signal
    # above its original level. If replaygain_limit is disabled such amplification
    # might occur. By default this setting is enabled.
    #replaygain_limit "yes"
    # This setting enables on-the-fly normalization volume adjustment. This will
    # result in the volume of all playing audio to be adjusted so the output has
    # equal "loudness". This setting is disabled by default.
    #volume_normalization "no"
    # MPD Internal Buffering ######################################################
    # This setting adjusts the size of internal decoded audio buffering. Changing
    # this may have undesired effects. Don't change this if you don't know what you
    # are doing.
    #audio_buffer_size "4096"
    # This setting controls the percentage of the buffer which is filled before
    # beginning to play. Increasing this reduces the chance of audio file skipping,
    # at the cost of increased time prior to audio playback.
    #buffer_before_play "10%"
    # Resource Limitations ########################################################
    # These settings are various limitations to prevent MPD from using too many
    # resources. Generally, these settings should be minimized to prevent security
    # risks, depending on the operating resources.
    #connection_timeout "60"
    #max_connections "10"
    #max_playlist_length "16384"
    #max_command_list_size "2048"
    #max_output_buffer_size "8192"
    # Character Encoding ##########################################################
    # If file or directory names do not display correctly for your locale then you
    # may need to modify this setting.
    #filesystem_charset "UTF-8"
    # This setting controls the encoding that ID3v1 tags should be converted from.
    #id3v1_encoding "ISO-8859-1"
    # SIDPlay decoder #############################################################
    # songlength_database:
    # Location of your songlengths file, as distributed with the HVSC.
    # The sidplay plugin checks this for matching MD5 fingerprints.
    # See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
    # default_songlength:
    # This is the default playing time in seconds for songs not in the
    # songlength database, or in case you're not using a database.
    # A value of 0 means play indefinitely.
    # filter:
    # Turns the SID filter emulation on or off.
    #decoder {
    # plugin "sidplay"
    # songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
    # default_songlength "120"
    # filter "true"
    /etc/X11/xinit/xinitrc.d/pulseaudio [not sure if I even need this?]
    #!/bin/bash
    case "$DESKTOP_SESSION" in
    gnome|kde*|xfce*) # PulseAudio is started via XDG Autostart
    # Extra checks in case DESKTOP_SESSION is not set correctly
    if [[ -z $KDE_FULL_SESSION && -z $GNOME_DESKTOP_SESSION_ID ]]; then
    /usr/bin/start-pulseaudio-x11
    fi
    esac
    /etc/pulse/daemon.conf
    # This file is part of PulseAudio.
    # PulseAudio is free software; you can redistribute it and/or modify
    # it under the terms of the GNU Lesser General Public License as published by
    # the Free Software Foundation; either version 2 of the License, or
    # (at your option) any later version.
    # PulseAudio is distributed in the hope that it will be useful, but
    # WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    # General Public License for more details.
    # You should have received a copy of the GNU Lesser General Public License
    # along with PulseAudio; if not, write to the Free Software
    # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
    # USA.
    ## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
    ## more information. Default values are commented out. Use either ; or # for
    ## commenting.
    ; daemonize = no
    ; fail = yes
    ; allow-module-loading = yes
    ; allow-exit = yes
    ; use-pid-file = yes
    ; system-instance = no
    ; local-server-type = user
    ; enable-shm = yes
    ; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
    ; lock-memory = no
    ; cpu-limit = no
    ; high-priority = yes
    ; nice-level = -11
    ; realtime-scheduling = yes
    ; realtime-priority = 5
    exit-idle-time=0
    ; exit-idle-time = 20
    ; scache-idle-time = 20
    ; dl-search-path = (depends on architecture)
    ; load-default-script-file = yes
    ; default-script-file = /etc/pulse/default.pa
    ; log-target = auto
    log-level = error
    ; log-meta = no
    ; log-time = no
    ; log-backtrace = 0
    resample-method = speex-float-7
    ; enable-remixing = yes
    ; enable-lfe-remixing = no
    flat-volumes = no
    ; rlimit-fsize = -1
    ; rlimit-data = -1
    ; rlimit-stack = -1
    ; rlimit-core = -1
    ; rlimit-as = -1
    ; rlimit-rss = -1
    ; rlimit-nproc = -1
    ; rlimit-nofile = 256
    ; rlimit-memlock = -1
    ; rlimit-locks = -1
    ; rlimit-sigpending = -1
    ; rlimit-msgqueue = -1
    ; rlimit-nice = 31
    ; rlimit-rtprio = 9
    ; rlimit-rttime = 1000000
    default-sample-format = s24le
    default-sample-rate = 48000
    ; alternate-sample-rate = 48000
    ; default-sample-channels = 2
    ; default-channel-map = front-left,front-right
    default-fragments = 2
    default-fragment-size-msec = 76
    ; enable-deferred-volume = yes
    ; deferred-volume-safety-margin-usec = 8000
    ; deferred-volume-extra-delay-usec = 0
    /etc/pulse/default.pa
    #!/usr/bin/pulseaudio -nF
    # This file is part of PulseAudio.
    # PulseAudio is free software; you can redistribute it and/or modify it
    # under the terms of the GNU Lesser General Public License as published by
    # the Free Software Foundation; either version 2 of the License, or
    # (at your option) any later version.
    # PulseAudio is distributed in the hope that it will be useful, but
    # WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    # General Public License for more details.
    # You should have received a copy of the GNU Lesser General Public License
    # along with PulseAudio; if not, write to the Free Software Foundation,
    # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
    # This startup script is used only if PulseAudio is started per-user
    # (i.e. not in system mode)
    .nofail
    ### Load something into the sample cache
    #load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
    #load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
    #load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
    #load-sample-lazy pulse-access /usr/share/sounds/generic.wav
    .fail
    ### Automatically restore the volume of streams and devices
    load-module module-device-restore
    load-module module-stream-restore
    load-module module-card-restore
    ### Automatically augment property information from .desktop files
    ### stored in /usr/share/application
    load-module module-augment-properties
    ### Should be after module-*-restore but before module-*-detect
    load-module module-switch-on-port-available
    ### Load audio drivers statically
    ### (it's probably better to not load these drivers manually, but instead
    ### use module-udev-detect -- see below -- for doing this automatically)
    #load-module module-alsa-sink
    #load-module module-alsa-source device=hw:1,0
    #load-module module-oss device="/dev/dsp" sink_name=output source_name=input
    #load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
    #load-module module-null-sink
    #load-module module-pipe-sink
    ### Automatically load driver modules depending on the hardware available
    .ifexists module-udev-detect.so
    load-module module-udev-detect
    .else
    ### Use the static hardware detection module (for systems that lack udev support)
    load-module module-detect
    .endif
    ### Automatically connect sink and source if JACK server is present
    .ifexists module-jackdbus-detect.so
    .nofail
    load-module module-jackdbus-detect channels=2
    .fail
    .endif
    ### Automatically load driver modules for Bluetooth hardware
    #.ifexists module-bluetooth-policy.so
    #load-module module-bluetooth-policy
    #.endif
    #.ifexists module-bluetooth-discover.so
    #load-module module-bluetooth-discover
    #.endif
    ### Load several protocols
    .ifexists module-esound-protocol-unix.so
    load-module module-esound-protocol-unix
    .endif
    load-module module-native-protocol-unix
    ### Network access (may be configured with paprefs, so leave this commented
    ### here if you plan to use paprefs)
    #load-module module-esound-protocol-tcp
    load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
    #load-module module-zeroconf-publish
    ### Load the RTP receiver module (also configured via paprefs, see above)
    #load-module module-rtp-recv
    ### Load the RTP sender module (also configured via paprefs, see above)
    #load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
    #load-module module-rtp-send source=rtp.monitor
    ### Load additional modules from GConf settings. This can be configured with the paprefs tool.
    ### Please keep in mind that the modules configured by paprefs might conflict with manually
    ### loaded modules.
    .ifexists module-gconf.so
    .nofail
    load-module module-gconf
    .fail
    .endif
    ### Automatically restore the default sink/source when changed by the user
    ### during runtime
    ### NOTE: This should be loaded as early as possible so that subsequent modules
    ### that look up the default sink/source get the right value
    load-module module-default-device-restore
    ### Automatically move streams to the default sink if the sink they are
    ### connected to dies, similar for sources
    load-module module-rescue-streams
    ### Make sure we always have a sink around, even if it is a null sink.
    load-module module-always-sink
    ### Honour intended role device property
    load-module module-intended-roles
    ### Automatically suspend sinks/sources that become idle for too long
    load-module module-suspend-on-idle
    ### If autoexit on idle is enabled we want to make sure we only quit
    ### when no local session needs us anymore.
    .ifexists module-console-kit.so
    load-module module-console-kit
    .endif
    .ifexists module-systemd-login.so
    load-module module-systemd-login
    .endif
    ### Enable positioned event sounds
    load-module module-position-event-sounds
    ### Cork music/video streams when a phone stream is active
    load-module module-role-cork
    ### Modules to allow autoloading of filters (such as echo cancellation)
    ### on demand. module-filter-heuristics tries to determine what filters
    ### make sense, and module-filter-apply does the heavy-lifting of
    ### loading modules and rerouting streams.
    load-module module-filter-heuristics
    load-module module-filter-apply
    # X11 modules should not be started from default.pa so that one daemon
    # can be shared by multiple sessions.
    ### Load X11 bell module
    #load-module module-x11-bell sample=bell-windowing-system
    ### Register ourselves in the X11 session manager
    #load-module module-x11-xsmp
    ### Publish connection data in the X11 root window
    #.ifexists module-x11-publish.so
    #.nofail
    #load-module module-x11-publish
    #.fail
    #.endif
    ### Make some devices default
    #set-default-sink output
    #set-default-source input
    ~/.xinitrc [currently using daemon mpd]
    #!/bin/sh
    # ~/.xinitrc
    # Executed by startx (run your window manager from here)
    if [ -d /etc/X11/xinit/xinitrc.d ]; then
    for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
    done
    unset f
    fi
    #if grep -q "state: pause" /home/quiv/.config/mpd/state; then
    # mpc toggle
    #fi
    #mpd ~/.config/mpd/mpd.conf
    ~/.config/bspwm/panel/notify_mpd
    xrdb ~/.Xresources
    xset +fp ~/.fonts
    xset +fp /usr/share/fonts/misc
    xset fp rehash
    xsetroot -cursor_name left_ptr &
    # imlibsetroot -x e -s f /home/quiv/Pictures/bloom_one_desktop.jpg
    sh ~/.fehbg &
    compton -CGb --backend glx --paint-on-overlay --vsync opengl-swc &
    # exec gnome-session
    # exec startkde
    # exec startxfce4
    # ...or the Window Manager of your choice
    sxhkd &
    exec bspwm
    ~/.zprofile [currently trying to use systemd/User]
    #[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx
    EDIT:A small update; it seems I don't need to have /etc/systemd/system/[email protected]/autologin.conf when using systemd to manag my user session as I removed it and I'm both automatically logged on and in X-session.
    Last edited by quiv (2014-07-05 13:40:30)

    o_caino wrote:
    Setting mpd as a systemd user service is very simple. This is what I did.
    In ~/.config/systemd/user/mpd.service
    [Unit]
    Description=Music Player Daemon
    After=network.target sound.target
    [Service]
    ExecStart=/usr/bin/mpd --no-daemon
    ExecStop=/usr/bin/mpd --kill
    [Install]
    WantedBy=default.target
    To enable
    systemctl --user enable mpd
    Done.
    Well shit. I guess I didn't need to do all that other stuff. I only wish I'd known about this before wasting most of my day. Thank you very much, everything appears to be working flawlessly now.

  • [Solved] Running mpd as user mpd with systemd without using mpd.conf

    Maybe this is tivial, but I searched about an hour without any results. I want to run mpd as user mpd. I cant use the mpd config file since mpd set the UID and GID explicitely resulting in mpd not having the necessary supplementary groups to access the locally shared music on my pc. Well I tried to run mpd with systemd by
    # systemctl start mpd
    and  the systemd contains the user mpd
    $ cat /etc/systemd/system/default.target.wants/mpd.service
    [Unit]
    Description=Music Player Daemon
    After=network.target sound.target
    [Service]
    User=mpd
    ExecStart=/usr/bin/mpd --no-daemon
    # allow MPD to use real-time priority 50
    LimitRTPRIO=50
    LimitRTTIME=-1
    # move MPD to a top-level cgroup, as real-time budget assignment fails
    # in cgroup /system/mpd.service, because /system has a zero real-time
    # budget; see
    # http://www.freedesktop.org/wiki/Software/systemd/MyServiceCantGetRealtime/
    ControlGroup=cpu:/mpd
    # assign a real-time budget
    ControlGroupAttribute=cpu.rt_runtime_us 500000
    [Install]
    WantedBy=default.target
    but it did not run as mpd.
    Well how can I run mpd as mpd? Is there a way to do it like with dropbox: dropbox@<user>.service
    Last edited by manuelschneid3r (2015-03-25 12:52:52)

    Glad you solved it. Was just typing a response and I'll still add two remarks:
    The ps|grep output showed that you run grep as root, not mpd itself (which won't have a space in the command -- the second time it only worked because the mpd group is preceded by a space).
    It sounds like it took you a while to find the drop-in configuration snippet in the mpd.service.d directory. These drop-in are shown in `systemctl status`, which is something you'd normally check in situations like these, and that might help to discover them more quickly.
    Last edited by Raynman (2015-03-25 12:58:36)

  • [solved] allow a systemd user service to shutdown the pc (mythtv)

    Hi,
    I have a problem with my mythtv htpc. What I want is to shutdown the PC if the PC idles.
    Mythtv (a pvr htpc software) recognizes if nobody is watching something and starts to shutdown the PC. This is not working ;(
    By default, mythtv is running als a system service with a "User=xxx" line in his .service file. I managed to configure mythtv to run as user service, so the user can start/stop it with "systemctl --user start/stop mythbackend" ... but this doesn't solve the problem.
    I installed polkit and now the user is able to shutdown the pc (systemctl poweroff) but this also doesn't help.
    I already asked in the german forum but nobody has a idea.
    Here is the german thread: https://bbs.archlinux.de/viewtopic.php?id=25290
    in the first post, you can see my journald output.
    can somebody help me? google can't
    I don't think this is a mythtv related problem, I think user services are just not allowed to shutdown the pc.
    thx for your help!
    Last edited by muh3 (2014-01-10 13:26:36)

    To handle power from XBMC polkit rule is needed. It is probably the same with mythtv.
    polkit.addRule(function(action, subject) {
    if (action.id.match("org.freedesktop.login1.") && subject.isInGroup("mythtv")) {
    return polkit.Result.YES;
    Save this as /etc/polkit-1/rules.d/10-mythtv.rules and add user to mythtv group.

  • [Solved] Autofs: mount as user?

    Hello, I have these:
    [virus_found@arch ~]$ cat /etc/udev/rules.d/00.rules
    KERNEL=="sd[b-z]", NAME="%k", SYMLINK+="flash", GROUP="users", OPTIONS="last_rule"
    KERNEL=="sd[b-z][0-9]", NAME="%k", SYMLINK+="flash", GROUP="users", OPTIONS="last_rule"
    [virus_found@arch ~]$ cat /etc/autofs/auto.master
    /media /etc/autofs/auto.misc
    [virus_found@arch ~]$ cat /etc/autofs/auto.misc
    cd -fstype=auto,ro,nodev,nosuid,users :/dev/cdrom
    flash -fstype=auto,rw,noauto,sync,dirsync,noexec,nodev,noatime,users :/dev/flash
    card -fstype=auto,rw,noauto,sync,dirsync,noexec,nodev,noatime,users :/dev/card
    Udev rules are for symlinking to /dev/flash. All is working, except for users flag in mount options of auto.misc. Everythng is mounted with root rights How do I solve this?
    Last edited by virus_found (2009-10-13 07:53:53)

    Unfortunately, that won't do anything. Everything is still automounted as root
    I wonder, does nobody use Autofs? If so, what's the alternative to it? Except for overbloated GUI filemanagers? Does everybody mount in terminal everytime a cd or flash is inserted? -_-

  • [solved] gdm not showing user list and not recognizing gconf

    I installed gdm2setup from aur and ran it as root, and since then gdm will no longer display a user browser to select my user from, I have to manually type in the user name and password to login.
    I uninstalled gdm2setup, and then did a force reinstall for gdm (pacman -S --force gdm)
    Then I rebooted, and as I mentioned, the user browser does not display.
    I edited /etc/gdm/custom.conf so that it shows:
    [greeter]
    Browser=1
    ...but still no luck.
    I made sure that gconf says that disable_user_list is not true, and it isn't.
    gconftool-2 --get /apps/gdm/simple-greeter/disable_user_list
    false
    So I don't know what else to do, or why this is happening.
    If anyone can help it would be greatly appreciated.
    EDIT: Here is the most recent :0-greeter.log after a fresh reboot
    No idea if any of this is related to my problem.
    # cat /var/log/gdm/\:0-greeter.log
    ** (<unknown>:2058): DEBUG: Client registered with session manager: /org/gnome/SessionManager/Client1
    gnome-session[2050]: WARNING: Could not launch application 'gnome-power-manager.desktop': Unable to start application: Failed to execute child process "gnome-power-manager" (No such file or directory)
    ** (process:2077): DEBUG: Greeter session pid=2077 display=:0.0 xauthority=/var/run/gdm/auth-for-gdm-JngQ5L/database
    gdm-simple-greeter[2077]: Gtk-WARNING: gtkwidget.c:5676: widget not within a GtkWindow
    gdm-simple-greeter[2077]: WARNING: Unable to read from file /etc/arch-release
    Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x160002b (Login Wind)
    Window manager warning: meta_window_activate called by a pager with a 0 timestamp; the pager needs to be fixed.
    Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x160002b (Login Wind)
    Window manager warning: meta_window_activate called by a pager with a 0 timestamp; the pager needs to be fixed.
    Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x160002b (Login Wind)
    Window manager warning: meta_window_activate called by a pager with a 0 timestamp; the pager needs to be fixed.
    Window manager warning: CurrentTime used to choose focus window; focus window may not be correct.
    Window manager warning: Got a request to focus the no_focus_window with a timestamp of 0.  This shouldn't happen!
    Window manager warning: Log level 16: Failed to send buffer
    gdm-simple-greeter[2077]: WARNING: Failed to send buffer
    Window manager warning: Log level 16: Failed to send buffer
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: AT_SPI_REGISTRY was not started at session startup.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: IOR not set.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: AT_SPI_REGISTRY was not started at session startup.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: IOR not set.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: AT_SPI_REGISTRY was not started at session startup.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: IOR not set.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: AT_SPI_REGISTRY was not started at session startup.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: IOR not set.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: AT_SPI_REGISTRY was not started at session startup.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: IOR not set.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: AT_SPI_REGISTRY was not started at session startup.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: IOR not set.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: AT_SPI_REGISTRY was not started at session startup.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: IOR not set.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: AT_SPI_REGISTRY was not started at session startup.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: IOR not set.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: AT_SPI_REGISTRY was not started at session startup.
    (gnome-settings-daemon:2059): atk-bridge-WARNING **: IOR not set.
    (polkit-gnome-authentication-agent-1:2076): polkit-gnome-1-WARNING **: Error enumerating temporary authorizations: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Cannot determine session the caller is in
    (polkit-gnome-authentication-agent-1:2076): polkit-gnome-1-WARNING **: Error enumerating temporary authorizations: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Cannot determine session the caller is in
    (polkit-gnome-authentication-agent-1:2076): polkit-gnome-1-WARNING **: Error enumerating temporary authorizations: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Cannot determine session the caller is in
    (polkit-gnome-authentication-agent-1:2076): polkit-gnome-1-WARNING **: Error enumerating temporary authorizations: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Cannot determine session the caller is in
    (polkit-gnome-authentication-agent-1:2076): polkit-gnome-1-WARNING **: Error enumerating temporary authorizations: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Cannot determine session the caller is in
    EDIT#2
    Solved!
    sudo -u gdm gconftool-2 --set --type boolean /apps/gdm/simple-greeter/disable_user_list false
    Last edited by goplexian (2010-10-13 10:56:29)

    I want to set disable_user_list to true, but If I execute this
    sudo -u gdm gconftool-2 --set --type boolean /apps/gdm/simple-greeter/disable_user_list true
    I'm asked for a password ...
    EDIT:
    this line was commented in my sudoers file
    %wheel ALL=(ALL) SETENV: ALL
    Last edited by SiD (2010-12-02 19:34:46)

  • [solved] fstab entry for user mounting of iso files?

    fstab entry for user mounting of iso files?
    I've seen it before but I can't seem to find it again.
    Last edited by eilenbeb (2010-03-21 20:11:40)

    I did, but couldn't find what I was looking for.
    I got fuseiso to work, and that will do the trick, so I'm marking this one solved.
    (I simply had to give 'others' write access to the mount point)
    Last edited by eilenbeb (2010-03-21 20:15:09)

  • [Solved] Giving A Normal User R/W Access To A SSD

    I have virtualbox setup so that it has direct (raw) access to my SSD (which is formatted with NTFS if it that matters) but the only way I can currently get it to work is by running virtualbox with root permissions. How can I make it work with my normal user?
    Last edited by brando56894 (2011-07-26 16:15:06)

    So the problem is that your user have no rights on the /dev/sdXY device on your hostsystem? Let's assume that your SSD is /dev/sdc.
    If you look at: ls -l /dev/sdc you will see that only user root and members of group disk have access(rw) on this device.
    One could think: ok, i put my normal user in group disk, problem solved. That's right, but it opens unneccassary security risks. It's bad to give a user more rights than needed exactly for one job. In group disk the user has direct access to all blockdevices on the host.
    So one possible solution: Devices in /dev are setup by udev via rules. So write a rule that change ownership on exactly the SSD device (sdc). Maybe with owner root:privdev, and put your user in the (new) privdev group.
    The IMHO better, simpler solution is IMHO: Use ACL's. (from package acl)
    With above example /dev/sdc:
    getfacl /dev/sdc
    getfacl: Removing leading '/' from absolute path names
    # file: dev/sdc
    # owner: root
    # group: disk
    user::rw-
    group::rw-
    other::---
    Now add a acl for your user (username brando for ex.)
    setfacl -m u:brando:rw /dev/sdc
    Control with getfacl and you will see that brando have now rw access directly on the device.
    You could put this permanently in /etc/rc.local
    Instead of /dev/sdxy in device naming it's better to work with ID's or UUID's. Adressing could be then:
    /dev/disk/by-id/???
    /dev/disk/by-uuid/???
    Identify your SSD device by looking in these directories. Not using the "old" /dev/sdxy naming prevents from wrong access when the SSD may changes the order of blockdevices.
    Last edited by GerBra (2011-07-26 08:27:53)

  • [SOLVED] Finding out connected users in shell

    Hi there!
    This may be a simple question at first glance: who is connected and how many sessions per user are opened?  I thought a 'who' or 'w' would do it.
    Sadly, it will only work with TTY sessions. Any session started from a login manager for X will not be taken into account by any of the aforementioned commands.
    'loginctl list-... ' does the trick for systemd-based systems. But I'm looking for a more portable solution (BSD, other GNU, etc.).
    Any thoughts?
    Last edited by Ambrevar (2014-01-11 08:51:00)

    Thanks, Trilby, this seems to be a good lead!
    I've been playing with 'ps' a little to see what I could get. First I think the following command is equivalent and more portable:
    $ ps -ax -o user='' -o tty='' | sort -u
    '-e' is GNU-specific, and --no-header can be avoided by setting all header entries to the null string.
    This will display all 'users', even 'root', 'polkitd', 'dbus', etc. Every X terminal will add another superfluous entry, but we can get rid of it easily:
    $ ps -ax -o user='' -o tty='' | grep -v ' pts/' | sort -u
    To display a list of all users with the number of started sessions:
    $ ps -ax -o user='' -o tty=''| sort -u | awk '$0 !~ / pts\// {x[$1]++} END{for(i in x) print i, x[i]}'
    doe 2
    polkitd 1
    dbus 1
    root 3
    To display the number of started session for the specified user:
    $ ps -o user='' -o tty='' -u $USER | sort -u | grep -cv ' pts/'
    Do not use '-U $USER', since it will display one root entry per X session (X euid is $USER but X ruid is root).
    I've not tested the above commands on BSD systems, but according to the 'ps' man page from FreeBSD, this should work well. But it may fail if the TTY are not reported the same way. It also relies on the pts names.
    Don't know if anyone can come up with a better suggestion, but for now I'm quite satisfied with the result, so I'll mark it as a 'solved'. Thanks again!
    Last edited by Ambrevar (2014-01-11 08:53:36)

  • [SOLVED]Nightly update as user

    Yes, I searched but couldn't find related information. Surprising actually!
    I had installed the stable Mozilla Firefox package 7.0.1, then uninstalled it and installed Nightly via AUR https://aur.archlinux.org/packages.php?ID=19830
    Now, updates are available but it won't let me install them( run as user). Is there anyway to do this without using yaourt/pacman but via the default firefox updater, as a user?
    Using Arch x86_64 and Openbox if that matters.
    Thanks!
    Solved, see my post below.
    Last edited by Supernova (2011-10-20 13:35:07)

    Supernova wrote:
    SS4 wrote:I changed the permissions in /opt/firefox-${pkgver} to my user instead of root
    This did it. For anyone who might have the same issue, do this.
    1. login as root in terminal
    2. see where nightly is installed.
    mine is in /opt/firefox-nightly10.0a1
    3. chmod -R 777 the firefox directory
    4. exit, run firefox-nightly as normal and update from the Help menu.
    Thanks everyone for help!
    This is the best arch-hacks and simplest help I have yet found in all Arch (distros) forums. Firefox (nightly and aurora) updated as it suppose to do, without having to be the QUEEN of England (or the pope) to use pacman which "anyway" would be telling me again that keys or packages are corrupted lol ahahah;)
    But I did this, as a way to update future other install as well like google-chrome for example.
      sudo chmod -R 777 /opt/
    This is the kind of "mark as solved" I wanna see and go for whenever I do a google search (or any search to get to the point
    Thanks;)
    this is making my day... on top of the fact that there is a brand new motherboard-processor-memory kit arriving here in the next hour to put in some box laying around    AM D happiest guy tonight happy  happy happy

  • [SOLVED] systemd/cron as user: timer doesn't start after boot

    Hello,
    I've tried to follow the wiki's systemd/cron functionality article to have a systemd service to run hourly.
    Everything seems to be working ok, except that the hourly timer doesn't start automatically : I have to issue a
    systemctl --user timer-hourly.timer start
    command every time I start the machine to get the timer running.
    Can you help me understand what I'm missing to get the (user) timer to start automatically after boot?
    Thanks!
    My setup consists of the following files:
    /home/myuser/.config/systemd/user:
    drwxr-xr-x 2 myuser users 4096 Jun 25 17:30 basic.target.wants/
    -rw-r--r-- 1 myuser users 217 Jun 25 10:08 db_backup.service
    -rw-r--r-- 1 myuser users 232 Jun 25 10:08 test.service
    -rw-r--r-- 1 myuser users 61 Jun 19 12:14 timer-hourly.target
    drwxr-xr-x 2 myuser users 4096 Jun 25 10:10 timer-hourly.target.wants/
    -rw-r--r-- 1 myuser users 134 Jun 19 12:14 timer-hourly.timer
    /home/myuser/.config/systemd/user/basic.target.wants/:
    lrwxrwxrwx 1 myuser users 50 Jun 25 10:08 timer-hourly.timer -> /home/myuser/.config/systemd/user/timer-hourly.timer
    /home/myuser/.config/systemd/user/timer-hourly.target.wants/:
    lrwxrwxrwx 1 myuser users 49 Jun 13 15:51 db_backup.service -> /home/myuser/.config/systemd/user/db_backup.service
    lrwxrwxrwx 1 myuser users 44 Jun 25 10:10 test.service -> /home/myuser/.config/systemd/user/test.service
    timer-hourly.timer:
    [Unit]
    Description=Hourly Timer
    [Timer]
    OnBootSec=5min
    OnCalendar=hourly
    Unit=timer-hourly.target
    [Install]
    WantedBy=basic.target
    timer-hourly.target:
    [Unit]
    Description=Hourly Timer Target
    StopWhenUnneeded=yes
    test.service:
    [Unit]
    Description=Run a test (echo) job every hour
    Wants=timer-hourly.timer
    [Service]
    Nice=19
    IOSchedulingClass=2
    IOSchedulingPriority=7
    ExecStart=/usr/bin/python /home/myuser/test_service.py
    [Install]
    WantedBy=timer-hourly.target
    db_backup.service:
    [Unit]
    Description=Backups databases
    Wants=timer-hourly.timer
    [Service]
    Nice=19
    IOSchedulingClass=2
    IOSchedulingPriority=7
    ExecStart=/home/myuser/source/db_backups/db_backup.sh
    [Install]
    WantedBy=timer-hourly.target
    test_service.py is a simple python script that appends the current time to a file, to check if the service is being run by the timer. (it is after I start the timer after boot, and runs correctly every hour)
    db_backup.sh is a script that dumps a database into a text file in a mercurial repository, commits the change and pushes it to backup locations.
    Last edited by fede (2014-06-25 21:06:09)

    Have you tried this:
    systemctl --user enable timer-hourly.timer

  • [Solved] White screen when user switching, but only the *second* time?

    I finally got around to adding another user to my arch installation.
    Here's what happens --
    User A is logged in
    User A selects logout, then "switch user" --> GDM login screen comes up *properly*.
    User B does whatever, selects logout, then logout (I haven't tried yet with switch user for this step, can't imagine it being any better)
    Logout occurs, but instead of GDM it's a white screen.
    Entering login credentials blindly does return to original session of User A, however.
    This is Arch 64, Nvidia driver, GNOME, compiz fusion...
    Last edited by arch_nemesis (2009-01-20 14:15:16)

    It appears that some update in the past few days fixed this problem.  Yay!
    However, I really hate having to bow to the "it fixed itself" fairy, so if anyone knows any way I may have been likely to fix it by accident (I am sort of continuously messing around with things, but nothing that I'd think would impact this), I'd still be interested to hear it.

  • [SOLVED] Getting my systemd user service to talk to dbus

    I'm currently trying to set up a nice email workflow with mbsync, msmtp and notmuch.
    My passwords are saved in the Gnome keyring "login", and I've configured mbsync to use secret-tool to retrieve them. Unfortunately when secret-tool is invoked from this systemd user service there is an error when it in turn tries to call dbus-launch.
    Here is the error:
    $ systemctl --user status -l mbsync.service
    ● mbsync.service - Synchronise IMAP folders
    Loaded: loaded (/home/leo/.config/systemd/user/mbsync.service; static; vendor preset: enabled)
    Active: failed (Result: exit-code) since Sun 2015-05-10 20:10:56 BST; 17min ago
    Process: 3691 ExecStart=/usr/bin/mbsync -a (code=exited, status=1/FAILURE)
    Main PID: 3691 (code=exited, status=1/FAILURE)
    May 10 20:10:55 think3 mbsync[3691]: (secret-tool:3696): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
    May 10 20:10:55 think3 mbsync[3691]: secret-tool: Error spawning command line 'dbus-launch --autolaunch=388eb9d3cc5542d5922d60c8f9605b31 --binary-syntax --close-stderr': Child process exited with code 1
    May 10 20:10:55 think3 mbsync[3691]: Skipping account ymail, password command exited with status 1
    May 10 20:10:56 think3 mbsync[3691]: (secret-tool:3698): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
    May 10 20:10:56 think3 mbsync[3691]: secret-tool: Error spawning command line 'dbus-launch --autolaunch=388eb9d3cc5542d5922d60c8f9605b31 --binary-syntax --close-stderr': Child process exited with code 1
    May 10 20:10:56 think3 mbsync[3691]: Skipping account gmail, password command exited with status 1
    May 10 20:10:56 think3 systemd[716]: mbsync.service: main process exited, code=exited, status=1/FAILURE
    May 10 20:10:56 think3 systemd[716]: Failed to start Synchronise IMAP folders.
    May 10 20:10:56 think3 systemd[716]: Unit mbsync.service entered failed state.
    May 10 20:10:56 think3 systemd[716]: mbsync.service failed.
    The file mbsync.service is simply
    [Unit]
    Description=Synchronise IMAP folders
    Wants=network-online.target
    After=network-online.target
    [Service]
    Type=oneshot
    ExecStart=/usr/bin/mbsync -a
    Any ideas how I can use secret-tool from within a systemd user service? The Wiki includes some information about DBus and systemd here but it looks a little outdated...
    Last edited by curiousleo (2015-05-22 22:02:33)

    barbae wrote:Please could you post the output of 'journalctl -b' just after user login into gnome through gdm?
    Sure thing. Here it is (I've cut out some stuff that obviously had nothing to do with the problem at hand):
    May 17 17:17:11 think3 systemd[1]: systemd 219 running in system mode. (+PAM -AUDIT -SELINUX -IMA -APPARMOR +SMACK -SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID -ELFUTILS +KMOD +IDN)
    May 17 17:17:11 think3 systemd[1]: Created slice Root Slice.
    May 17 17:17:11 think3 systemd[1]: Starting Root Slice.
    May 17 17:17:11 think3 systemd[1]: Created slice System Slice.
    May 17 17:17:11 think3 systemd[1]: Starting System Slice.
    May 17 17:17:11 think3 systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    May 17 17:17:11 think3 systemd[1]: Starting Forward Password Requests to Wall Directory Watch.
    May 17 17:17:11 think3 systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    May 17 17:17:11 think3 systemd[1]: Starting Dispatch Password Requests to Console Directory Watch.
    May 17 17:17:11 think3 systemd[1]: Reached target Login Prompts.
    May 17 17:17:11 think3 systemd[1]: Starting Login Prompts.
    May 17 17:17:11 think3 systemd[1]: Created slice User and Session Slice.
    May 17 17:17:11 think3 systemd[1]: Starting User and Session Slice.
    May 17 17:17:11 think3 systemd[1]: Reached target Slices.
    May 17 17:17:11 think3 systemd[1]: Starting Slices.
    May 17 17:17:11 think3 systemd[1]: Started Create System Users.
    May 17 17:17:11 think3 systemd[1]: Created slice system-systemd\x2drfkill.slice.
    May 17 17:17:11 think3 systemd[1]: Starting system-systemd\x2drfkill.slice.
    May 17 17:17:11 think3 systemd[1]: Started Commit a transient machine-id on disk.
    May 17 17:17:11 think3 systemd[1]: Started Daily verification of password and group files.
    May 17 17:17:11 think3 systemd[1]: Starting Daily verification of password and group files.
    May 17 17:17:11 think3 systemd[1]: Listening on D-Bus System Message Bus Socket.
    May 17 17:17:11 think3 systemd[1]: Starting D-Bus System Message Bus Socket.
    May 17 17:17:11 think3 systemd[1]: Reached target Sockets.
    May 17 17:17:11 think3 systemd[1]: Starting Sockets.
    May 17 17:17:11 think3 systemd[1]: Reached target Basic System.
    May 17 17:17:11 think3 systemd[1]: Starting Basic System.
    May 17 17:17:11 think3 systemd[1]: Starting Login Service...
    May 17 17:17:11 think3 systemd[1]: Starting Permit User Sessions...
    May 17 17:17:11 think3 systemd[1]: Started D-Bus System Message Bus.
    May 17 17:17:11 think3 systemd[1]: Starting D-Bus System Message Bus...
    May 17 17:17:11 think3 systemd[1]: Reached target Timers.
    May 17 17:17:11 think3 systemd[1]: Starting Timers.
    May 17 17:17:11 think3 systemd[1]: Started Permit User Sessions.
    May 17 17:17:11 think3 systemd[1]: Starting GNOME Display Manager...
    May 17 17:17:11 think3 systemd[1]: Started Login Service.
    May 17 17:17:12 think3 systemd[1]: Started GNOME Display Manager.
    May 17 17:17:12 think3 systemd[1]: Reached target Multi-User System.
    May 17 17:17:12 think3 systemd[1]: Starting Multi-User System.
    May 17 17:17:12 think3 systemd[1]: Reached target Graphical Interface.
    May 17 17:17:12 think3 systemd[1]: Starting Graphical Interface.
    May 17 17:17:12 think3 systemd-logind[293]: New seat seat0.
    May 17 17:17:12 think3 dbus[301]: [system] Activating via systemd: service name='org.freedesktop.Accounts' unit='accounts-daemon.service'
    May 17 17:17:12 think3 systemd[1]: Reached target User and Group Name Lookups.
    May 17 17:17:12 think3 systemd[1]: Starting User and Group Name Lookups.
    May 17 17:17:12 think3 systemd[1]: Starting Accounts Service...
    May 17 17:17:13 think3 dbus[301]: [system] Activating via systemd: service name='org.freedesktop.PolicyKit1' unit='polkit.service'
    May 17 17:17:13 think3 systemd[1]: Starting Authorization Manager...
    May 17 17:17:13 think3 polkitd[443]: Started polkitd version 0.112
    May 17 17:17:13 think3 polkitd[443]: Loading rules from directory /etc/polkit-1/rules.d
    May 17 17:17:13 think3 polkitd[443]: Loading rules from directory /usr/share/polkit-1/rules.d
    May 17 17:17:13 think3 polkitd[443]: Finished loading, compiling and executing 3 rules
    May 17 17:17:13 think3 dbus[301]: [system] Successfully activated service 'org.freedesktop.PolicyKit1'
    May 17 17:17:13 think3 polkitd[443]: Acquired the name org.freedesktop.PolicyKit1 on the system bus
    May 17 17:17:13 think3 systemd[1]: Started Authorization Manager.
    May 17 17:17:13 think3 accounts-daemon[436]: started daemon version 0.6.40
    May 17 17:17:13 think3 dbus[301]: [system] Successfully activated service 'org.freedesktop.Accounts'
    May 17 17:17:13 think3 systemd[1]: Started Accounts Service.
    May 17 17:17:13 think3 systemd[1]: Created slice user-120.slice.
    May 17 17:17:13 think3 systemd[1]: Starting user-120.slice.
    May 17 17:17:13 think3 systemd[1]: Starting User Manager for UID 120...
    May 17 17:17:13 think3 systemd-logind[293]: New session c1 of user gdm.
    May 17 17:17:13 think3 systemd[1]: Started Session c1 of user gdm.
    May 17 17:17:13 think3 systemd[1]: Starting Session c1 of user gdm.
    May 17 17:17:13 think3 systemd[454]: pam_unix(systemd-user:session): session opened for user gdm by (uid=0)
    May 17 17:17:13 think3 systemd[454]: Unit type .busname is not supported on this system.
    May 17 17:17:13 think3 systemd[454]: Reached target Paths.
    May 17 17:17:13 think3 systemd[454]: Starting Paths.
    May 17 17:17:13 think3 systemd[454]: Reached target Timers.
    May 17 17:17:13 think3 systemd[454]: Starting Timers.
    May 17 17:17:13 think3 systemd[454]: Reached target Sockets.
    May 17 17:17:13 think3 systemd[454]: Starting Sockets.
    May 17 17:17:13 think3 systemd[454]: Reached target Basic System.
    May 17 17:17:13 think3 systemd[454]: Starting Basic System.
    May 17 17:17:13 think3 systemd[454]: Reached target Default.
    May 17 17:17:13 think3 systemd[454]: Startup finished in 3ms.
    May 17 17:17:13 think3 systemd[454]: Starting Default.
    May 17 17:17:13 think3 systemd[1]: Started User Manager for UID 120.
    May 17 17:17:13 think3 gnome-session[460]: glamor: EGL version 1.4 (DRI2):
    May 17 17:17:13 think3 org.a11y.Bus[459]: Activating service name='org.a11y.atspi.Registry'
    May 17 17:17:13 think3 org.a11y.Bus[459]: Successfully activated service 'org.a11y.atspi.Registry'
    May 17 17:17:13 think3 org.a11y.atspi.Registry[518]: SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry
    May 17 17:17:14 think3 polkitd[443]: Registered Authentication Agent for unix-session:c1 (system bus name :1.9 [gnome-shell --mode=gdm --wayland --display-server], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_GB.utf8)
    May 17 17:17:18 think3 gdm-password][674]: pam_unix(gdm-password:session): session opened for user leo by (uid=0)
    May 17 17:17:18 think3 systemd[1]: Created slice user-1000.slice.
    May 17 17:17:18 think3 systemd[1]: Starting user-1000.slice.
    May 17 17:17:18 think3 systemd[1]: Starting User Manager for UID 1000...
    May 17 17:17:18 think3 systemd[1]: Started Session c2 of user leo.
    May 17 17:17:18 think3 systemd-logind[293]: New session c2 of user leo.
    May 17 17:17:18 think3 systemd[1]: Starting Session c2 of user leo.
    May 17 17:17:18 think3 systemd[717]: pam_unix(systemd-user:session): session opened for user leo by (uid=0)
    May 17 17:17:18 think3 systemd[717]: Unit type .busname is not supported on this system.
    May 17 17:17:18 think3 systemd[717]: Started Synchronise e-mails and create database dump once a day.
    May 17 17:17:18 think3 systemd[717]: Starting Synchronise e-mails and create database dump once a day.
    May 17 17:17:18 think3 systemd[717]: Reached target default.target.
    May 17 17:17:18 think3 systemd[717]: Startup finished in 13ms.
    May 17 17:17:18 think3 systemd[717]: Starting default.target.
    May 17 17:17:18 think3 /usr/lib/gdm/gdm-x-session[725]: /etc/gdm/Xsession: Beginning session setup...
    May 17 17:17:18 think3 /usr/lib/gdm/gdm-x-session[725]: localuser:leo being added to access control list
    May 17 17:17:18 think3 /usr/lib/gdm/gdm-x-session[725]: /etc/gdm/Xsession: Setup done, will execute: /usr/bin/ssh-agent -- gnome-session
    May 17 17:17:18 think3 /usr/lib/gdm/gdm-x-session[725]: Activating service name='org.a11y.Bus'
    May 17 17:17:19 think3 /usr/lib/gdm/gdm-x-session[725]: Successfully activated service 'org.a11y.Bus'
    May 17 17:17:19 think3 org.a11y.Bus[732]: Activating service name='org.a11y.atspi.Registry'
    May 17 17:17:19 think3 org.a11y.Bus[732]: Successfully activated service 'org.a11y.atspi.Registry'
    May 17 17:17:19 think3 org.a11y.atspi.Registry[756]: SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry
    May 17 17:17:19 think3 gnome-session[734]: SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
    May 17 17:17:19 think3 gnome-session[734]: SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
    May 17 17:17:19 think3 gnome-session[734]: GPG_AGENT_INFO=/run/user/1000/keyring/gpg:0:1
    May 17 17:17:20 think3 polkitd[443]: Registered Authentication Agent for unix-session:c2 (system bus name :1.43 [/usr/bin/gnome-shell], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_GB.utf8)
    May 17 17:17:20 think3 gnome-session[734]: Entering running state
    May 17 17:17:21 think3 gnome-shell[804]: GNOME Shell started at Sun May 17 2015 17:17:20 GMT+0100 (BST)
    May 17 17:17:52 think3 /usr/lib/gdm/gdm-x-session[725]: Activating service name='org.gnome.seahorse.Application'
    May 17 17:17:52 think3 /usr/lib/gdm/gdm-x-session[725]: Successfully activated service 'org.gnome.seahorse.Application'
    May 17 17:20:48 think3 /usr/lib/gdm/gdm-x-session[725]: Activating service name='org.gnome.seahorse.Application'
    May 17 17:20:48 think3 /usr/lib/gdm/gdm-x-session[725]: Successfully activated service 'org.gnome.seahorse.Application'

  • [SOLVED] Question about systemd-user-session

    Hi!
    I'm trying to setup a systemd --user session (using user-session-units and xorg-launch-helper from aur).
    I have a couple of questions; this is my .xinitrc now:
    #!/bin/bash
    export BROWSER=chromium
    if [ -d /etc/X11/xinit/xinitrc.d ]; then
    for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
    done
    unset f
    fi
    spacefm --desktop &
    compton -cGCf -m 0.9 -i 0.8 -D 5 --shadow-exclude 'g:e:Conky' &
    volumeicon &
    /home/federico/Script/touchpadoff_onboot.sh &
    #connman-ui-gtk &
    /home/federico/Script/calised-script &
    dimdaemon &
    tint2 -c .config/tint2/dragonauta.tint2rc &
    conky -p 5 -c Script/conky.conf &
    exec openbox
    1) is "if" statement required when using systemd-user-session? And if yes, how can I reproduce it?
    2) "conky -p 5 " will wait 5 seconds doing nothing. Will this mean that other .service will wait for it to finish? (i guess no, since they're executed in parallel).
    3) how can I export "chromium" as my default browser?
    Thank you very much!
    Last edited by nierro (2013-04-06 17:56:17)

    I followed everything in that wiki, and in KaiSforza and sofar github page.
    I finally managed to get my old method (autologin to vt and autostart x) to work together with systemd --user: i put in .xinitrc "systemd --user" and deleted everything else.
    So, my .config/systemd/user/ works. The problem is in the [email protected], i guess. I configured it like wiki says, mind to post here your /etc/systemd/system/[email protected]?
    Thanks.
    EDIT: here it is my [email protected]:
    # This file is part of systemd.
    # systemd is free software; you can redistribute it and/or modify it
    # under the terms of the GNU General Public License as published by
    # the Free Software Foundation; either version 2 of the License, or
    # (at your option) any later version.
    [Unit]
    Description=User Manager for %I
    After=systemd-user-sessions.service
    # This is needed for folks running Xorg on vt/1
    Conflicts=[email protected]
    [Service]
    User=%I
    PAMName=login
    # Note memory:/ required kernel memory CGroups support
    ControlGroup=%R/user/%I/shared cpu:/ memory:/
    ControlGroupModify=yes
    Type=notify
    TTYPath=/dev/tty1
    ExecStart=-/usr/lib/systemd/systemd --user
    Environment=DISPLAY=:0
    Environment=XDG_RUNTIME_DIR=/run/user/%U
    Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%U/dbus/user_bus_socket
    [Install]
    WantedBy=getty.target
    and loginctl says my user has "1000" as UID.
    Last edited by nierro (2013-04-05 16:13:14)

  • [SOLVED] vsFTP and virtual users

    EDIT: One should really install pam_pwdfile if he wants this to work (it's also in the wiki, but I'm blind)
    Hey,
    I'm trying to set up vsFTP with virtual users on my machine. Here is what I did:
    # pacman -S vsftpd
    # mkdir /etc/vsftpd
    # htpasswd -cd /etc/vsftpd/.passwd ftpguest
    *password*
    # vi /etc/pam.d/vsftpd
    auth required pam_pwdfile.so pwdfile /etc/vsftpd/.passwd
    account required pam_permit.so
    # useradd -d /storage/ftp virtual
    # chown virtual:virtual /storage/ftp
    My /etc/vsftpd.conf:
    anonymous_enable=NO
    pam_service_name=vsftpd
    hide_ids=YES
    local_enable=YES
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    chroot_local_user=YES
    local_root=/storage/ftp/$USER
    user_sub_token=$USER
    guest_enable=YES
    guest_username=virtual
    virtual_use_local_privs=YES
    listen=YES
    # mkdir /storage/ftp/ftpguest
    # chown virtual:virtual /storage/ftp/ftpguest
    # systemctl start vsftpd.service
    Then I point my browser to ftp://myip and I get a prompt for username and password, but the problem is that the user I created (ftpguest) can't log in. What am I missing?
    Thanks
    Last edited by developej (2014-05-10 20:38:59)

    EDIT: One should really install pam_pwdfile if he wants this to work (it's also in the wiki, but I'm blind)
    Hey,
    I'm trying to set up vsFTP with virtual users on my machine. Here is what I did:
    # pacman -S vsftpd
    # mkdir /etc/vsftpd
    # htpasswd -cd /etc/vsftpd/.passwd ftpguest
    *password*
    # vi /etc/pam.d/vsftpd
    auth required pam_pwdfile.so pwdfile /etc/vsftpd/.passwd
    account required pam_permit.so
    # useradd -d /storage/ftp virtual
    # chown virtual:virtual /storage/ftp
    My /etc/vsftpd.conf:
    anonymous_enable=NO
    pam_service_name=vsftpd
    hide_ids=YES
    local_enable=YES
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    chroot_local_user=YES
    local_root=/storage/ftp/$USER
    user_sub_token=$USER
    guest_enable=YES
    guest_username=virtual
    virtual_use_local_privs=YES
    listen=YES
    # mkdir /storage/ftp/ftpguest
    # chown virtual:virtual /storage/ftp/ftpguest
    # systemctl start vsftpd.service
    Then I point my browser to ftp://myip and I get a prompt for username and password, but the problem is that the user I created (ftpguest) can't log in. What am I missing?
    Thanks
    Last edited by developej (2014-05-10 20:38:59)

Maybe you are looking for