• reflector-antergos


    I would prefer systems, cause minimalism… but I need to catch some time to investigate into this, but still 2 certifications in front of me.

  • @joekamprad
    Take your time my friend, there’s no rush… ;)

  • Think I found the reason, now testing, results will come later.

  • ✌ This will be a great helper for casuals and lazies

  • Okay, the following seems to work. However, don’t know if it is the most optimal way of doing it, but so far it seems to work as expected.

    /etc/systemd/system/reflector-antergos.timer:

    [Unit]
    Description=Run reflector-antergos periodically
    
    [Timer]
    OnCalendar=weekly
    Persistent=true
     
    [Install]
    WantedBy=timers.target
    

    and /etc/systemd/system/reflector-antergos.service:

    [Unit]
    Description=Updates /etc/pacman.d/antergos-mirrorlist
    
    [Service]
    Type=oneshot
    ExecStart=/usr/bin/reflector-antergos --save
    
    [Install]
    WantedBy=reflector-antergos.timer
    

    Finally the timer needs to be started:

    sudo systemctl enable antergos-reflector.timer
    sudo systemctl start antergos-reflector.timer
    

    Must say that a crontab entry would have been only one line. Although this systemd approach brings other benefits, for this simple task it is an overkill. And the documentation is unfortunately not great in my mind.

  • Yes documentations on freedesktop and Archwiki are full of question marks

  • But having this as a package make it easy for users, and can be enabled / started with systemd-manager

  • I added these systemd files to github, so you get them when installing reflector-antergos using the associated PKGBUILD.

  • just fork it to my system…

  • Apr 08 19:38:38 empowered64 sudo[21634]:     root : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/usr/bin/mv -f /etc/pacman.d/antergos-mirrorlist /etc/pacman.d/antergos-mirrorlist.bak
    Apr 08 19:38:38 empowered64 sudo[21634]: pam_unix(sudo:session): session opened for user root by (uid=0)
    Apr 08 19:38:38 empowered64 sudo[21634]: pam_unix(sudo:session): session closed for user root
    Apr 08 19:38:38 empowered64 sudo[21636]:     root : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/usr/bin/cp -f /.rankingstuff.tmp.20067/rankedmirrors /etc/pacman.d/antergos-mirrorlist
    Apr 08 19:38:38 empowered64 sudo[21636]: pam_unix(sudo:session): session opened for user root by (uid=0)
    Apr 08 19:38:38 empowered64 sudo[21636]: pam_unix(sudo:session): session closed for user root
    Apr 08 19:38:38 empowered64 systemd[1]: Started Updates /etc/pacman.d/antergos-mirrorlist.
    Apr 08 19:39:05 empowered64 i3-gnome.desktop[763]: systemd-manager: reflector-antergos.timer successfully started
    Apr 08 19:39:05 empowered64 systemd[1]: Started Run reflector-antergos periodically.
    Apr 08 19:39:10 empowered64 i3-gnome.desktop[763]: systemd-manager: reflector-antergos.timer has been enabled
    Apr 08 19:39:33 empowered64 i3-gnome.desktop[763]: systemd-manager: reflector-antergos.service has been enabled
    
    
  • i need only to start/enable the tiomer as it will call the service, or i am wrong?

  • @joekamprad Yes, only timer needs to be enabled and started.

  • @joekamprad said in reflector-antergos:

    reflector-antergos.timer

     systemctl status reflector-antergos.timer
    ● reflector-antergos.timer - Run reflector-antergos periodically
       Loaded: loaded (/etc/systemd/system/reflector-antergos.timer; enabled; vendor preset: disabled)
       Active: active (waiting) since Sun 2018-04-08 20:35:48 CEST; 40min ago
      Trigger: Mon 2018-04-09 00:00:00 CEST; 2h 43min left
    
    Apr 08 20:35:48 empowered64 systemd[1]: Started Run reflector-antergos periodically.
    
    
  • Do you think it is possible to include also updating Archlinux mirrorlist with the same timer/service?
    As i test it now and it seems to work very well, i would like to have archlinux mirrors updated in the same way…

  • @joekamprad
    Yes. At least you can replace the ExecStart line in reflector-antergos.service to call a script that calls both mirrorlist updaters, something like:

    ExecStart=/usr/local/bin/update-my-both-mirrorlists
    

    Then you just write the contents of that script, and make it executable (chmod +x scriptname).

    The script update-my-both-mirrorlists could be like:

    #!/bin/bash
    /usr/bin/reflector-antergos --save
    # and add your updater of Arch mirrorlist
    

    There is a syntax for adding more commands before or after ExecStart, but I wasn’t able to get it working, that’s why the additional script.

  • The other syntaxes were ExecStartPre and ExecStartPost, similar to ExecStart.
    See man systemd.service for more.

    If you manage to get them working, please share the howto info here! :)

  • Hi all!

    Just noticed that due to recent changes in pacman, antergos-reflector is not producing a suitable /etc/pacman.d/antergos-mirrorlist for the latest pacman.

    The problem is simple but crucial: a comment on the same line as the server definition is no more accepted by pacman.

    Workaround: remove the comment in the end of each line starting with:

    Server =
    

    Example:

    Server = http://mirrors.antergos.com/$repo/$arch # downloadtime:  0,34 status: ok                                       Automated
    
    # change the above to:
    
    Server = http://mirrors.antergos.com/$repo/$arch
    # downloadtime:  0,34 status: ok                                       Automated
    
    
  • I will fix this as soon as possible, but it may take a couple of days.

  • OK, it should be fixed now. New release 1.34 is waiting for you at Github! :)

  • needs only couple of hours instead of days ;)

Posts 96Views 5051
Bloom Email Optin Plugin

Looks like your connection to Antergos Community Forum was lost, please wait while we try to reconnect.