RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    How to restart ES from a script?

    Scheduled Pinned Locked Moved Help and Support
    scriptessystems.cfgrestart
    111 Posts 5 Posters 43.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • BuZzB
      BuZz administrators @TMNTturtlguy
      last edited by

      @TMNTturtlguy said in How to restart ES from a script?:

      @BuZz @cyperghost

      touch /tmp/es-restart; killall -e "/opt/retropie/supplementary/emulationstation/emulationstation"

      When i use this in my script, it runs the first time. The second time i try to run it, the script crashes with error "cant remove /tmp/es-restart

      because custom retropie scripts are actually run as root - ill change that I think, but just make sure you create it owned by pi for now.

      sudo -u pi touch /tmp/es-restart
      pkill -f "/emulationstation$"
      

      To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

      cyperghostC 2 Replies Last reply Reply Quote 0
      • cyperghostC
        cyperghost @BuZz
        last edited by

        @BuZz Solid work!
        Thank you

        1 Reply Last reply Reply Quote 0
        • cyperghostC
          cyperghost @BuZz
          last edited by cyperghost

          @BuZz What is your prefered method?
          pkill or killall? I think pkill offers more room for changes.

          BuZzB 1 Reply Last reply Reply Quote 0
          • BuZzB
            BuZz administrators
            last edited by

            I have updated retropie-setup so user scripts will now be launched as a normal user without elevated permissions (can use sudo in a script if needed).

            To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

            1 Reply Last reply Reply Quote 1
            • BuZzB
              BuZz administrators @cyperghost
              last edited by

              @cyperghost pkill so it can kill emulationstation running from any path.

              To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

              1 Reply Last reply Reply Quote 0
              • cyperghostC
                cyperghost
                last edited by

                @BuZz
                Ufff... that was hard stuff!

                TMNTturtlguyT 1 Reply Last reply Reply Quote 0
                • TMNTturtlguyT
                  TMNTturtlguy @cyperghost
                  last edited by

                  @cyperghost @BuZz i updated retropie-setup and now i can't run my script, and i also cannot do anything within the retropie setup script either. I enter restropie setup, it freezes up for a bit and then exits back to the retropie menu.

                  BuZzB 1 Reply Last reply Reply Quote 0
                  • cyperghostC
                    cyperghost
                    last edited by

                    Wait a moment...

                    1 Reply Last reply Reply Quote 0
                    • BuZzB
                      BuZz administrators @TMNTturtlguy
                      last edited by BuZz

                      @TMNTturtlguy did you reboot ? you may want to sudo rm /tmp/es-restart also.

                      To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                      cyperghostC 1 Reply Last reply Reply Quote 0
                      • BuZzB
                        BuZz administrators
                        last edited by

                        There is a problem after launching the first time. Will check.

                        To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                        1 Reply Last reply Reply Quote 1
                        • cyperghostC
                          cyperghost @BuZz
                          last edited by cyperghost

                          @BuZz There seems to be a problem with the one lost PID!
                          I did not update but I'm facing the same problem!

                          1 Reply Last reply Reply Quote 0
                          • cyperghostC
                            cyperghost
                            last edited by cyperghost

                            No the first killall script runs in best condition!
                            All 3 PIDs are running there!

                            touch /tmp/es-restart; killall -e "/opt/retropie/supplementary/emulationstation/emulationstation"
                            

                            and I can execute @TMNTturtlguy script like usual behavior.

                            BuZzB TMNTturtlguyT 2 Replies Last reply Reply Quote 0
                            • BuZzB
                              BuZz administrators @cyperghost
                              last edited by BuZz

                              @cyperghost the pkill isn't working as it also kills a needed parent process as the pattern matches a bash line which I missed.

                              touch /tmp/es-restart
                              pkill -f "/opt/retropie/supplementary/.*/emulationstation$"
                              

                              should sort it

                              To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                              1 Reply Last reply Reply Quote 0
                              • TMNTturtlguyT
                                TMNTturtlguy @cyperghost
                                last edited by

                                @cyperghost @BuZz Ok, so I did the ps -a and killed the largest emulationstatio and i can at least navigate the menus again....so yes the pkill is causing the issue,

                                Next issue is after the setup script update my script gives an error saying that '/opt/retropie/configs/all/emulationstation/es_systems.cfg' is write protected and the script errors out.

                                BuZzB 1 Reply Last reply Reply Quote 0
                                • BuZzB
                                  BuZz administrators @TMNTturtlguy
                                  last edited by

                                  @TMNTturtlguy if your script wants to edit that file it will need to use sudo as user scripts are no longer run as root.

                                  To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                                  TMNTturtlguyT 1 Reply Last reply Reply Quote 1
                                  • TMNTturtlguyT
                                    TMNTturtlguy @BuZz
                                    last edited by

                                    @BuZz thanks that seems to work. New issue. When running

                                    touch /tmp/es-restart
                                    pkill -f "/opt/retropie/supplementary/.*/emulationstation$"
                                    

                                    the script works great, but when i press start and go to QUIT, the screen flashes back to my script and ES restarts. I can't navigate to exit or shutdown. I immediately see the script blue screen and restart ES. So this is not killing the /tmp/es-restart

                                    1 Reply Last reply Reply Quote 0
                                    • cyperghostC
                                      cyperghost
                                      last edited by

                                      you can please check permission of your Restart Script in retropiemenu.
                                      It must be set to pi.

                                      TMNTturtlguyT 1 Reply Last reply Reply Quote 0
                                      • TMNTturtlguyT
                                        TMNTturtlguy @cyperghost
                                        last edited by

                                        @cyperghost another beginner questions, how do i check that?

                                        cyperghostC 1 Reply Last reply Reply Quote 0
                                        • cyperghostC
                                          cyperghost @TMNTturtlguy
                                          last edited by cyperghost

                                          @TMNTturtlguy
                                          Because the sh und rp files are called via bash. I'm not 100% sure if this can cause errors. if you never entered SSH as root it's very unlikely you have the wrong permission set.

                                          Sorry late here
                                          ls -al in retropiemenue

                                          TMNTturtlguyT 1 Reply Last reply Reply Quote 0
                                          • TMNTturtlguyT
                                            TMNTturtlguy @cyperghost
                                            last edited by

                                            @cyperghost everything is set to pi

                                            0_1497635557803_4606aa25-3b6b-4ad2-8688-5af151cbaf51-image.png

                                            TMNTturtlguyT 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.