Skip to main content
Topic solved
This topic has been marked as solved and requires no further attention.
Topic: [SOLVED] teamviewer for dinit (Read 1351 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

[SOLVED] teamviewer for dinit

Hi all, I know dinit is relatively new, but I'm using it and its simple, however, I do use teamviewer and in aur, i see s6/openrc and runit, but not one for dinit.  I don't have a clue how time consuming it would be to get a teamviewer-dinit made so it would work, so is this the right place to make such a request please?  Any response is greatly appreciated in advance, G.

Re: teamviewer for dinit

Reply #1
in aur, i see s6/openrc and runit, but not one for dinit.
You should understand that AUR stands for "Arch User Repository" and is in no way official, neither for Arch nor for Artix. Literally anyone can send PKGBUILDs to AUR, and those packages are not checked nor curated by Arch nor Artix team.

Teamviewer is a non-Free, proprietary program, so from the Free Software developer perspective there is no incentive to create packages for it.

Arch forum has a subforum for AUR requests.

Re: teamviewer for dinit

Reply #2
yea, i been using arch for quite a few years so i do know what aur is, i just thought this might be a good place to start what with there not being many arch users using anything other than systemd,  and certainly even fewer using dinit, but  thanks anyway.   It'll probably be infinitely quicker just to ditch dinit and use runit instead, so reckon i'll do that.

Re: teamviewer for dinit

Reply #3
Don't switch dinit
with few edits runit service can be used with dinit
Create problems which don't have solution

Re: teamviewer for dinit

Reply #4
Code: [Select]
type = process
command = /opt/teamviewer/tv_bin/teamviewerd -f
logfile = /var/log/dinit/teamviewerd.log
pid-file = /var/run/teamviewerd.pid
depends-on = dbus
waits-for = network
Put above lines at /etc/dinit.d/teamviewerd

Issue:
  • Stopping service do not kill teamviewerd process
  • Workaround:# pkill teamviewerd[ /li]
---
If I made any mistake point it
Create problems which don't have solution

Re: teamviewer for dinit

Reply #5
Code: [Select]
type = process
command = /opt/teamviewer/tv_bin/teamviewerd -d
logfile = /var/log/dinit/teamviewer.log
pid-file = /var/run/teamviewerd.pid
depends-on = dbus
waits-for = network
Put above lines at /etc/dinit.d/teamviewer

Edit: I found issue that , stopping service do not kill teamviewer process
---
If I made any mistake point it


thank you so much!   You're an absolute star, worked perfectly, cheers again.   G

Re: [SOLVED] teamviewer for dinit

Reply #6
@gavincc I made minor tweaks (changed service name, log file name)  :)
Update it
Create problems which don't have solution

Re: [SOLVED] teamviewer for dinit

Reply #7
@Arch_user You can replace
Code: [Select]
command = /opt/teamviewer/tv_bin/teamviewerd -d
with

Code: [Select]
command = /opt/teamviewer/tv_bin/teamviewerd -f

so teamviewerd stays in the foreground and is able to monitored and stopped with dinit normally.

This is also what the runit service does, by the way.


Re: [SOLVED] teamviewer for dinit

Reply #8
@Arch_user You can replace
Code: [Select]
command = /opt/teamviewer/tv_bin/teamviewerd -d
with

Code: [Select]
command = /opt/teamviewer/tv_bin/teamviewerd -f

so teamviewerd stays in the foreground and is able to monitored and stopped with dinit normally.

This is also what the runit service does, by the way.


excuse my ignorance as I'm all a bit new to dinit switches, but what does replacing -d with -f do in real terms?     Because i put the original set of lines in, then ran sudo dinitctl enable teamviewer  to start the service (not the app.) on a fresh boot and all's good.  Just curious, thanks.

Re: [SOLVED] teamviewer for dinit

Reply #9
It's not a switch for dinit; it's a switch for the teamviewer executable/command. It ultimately removes the need for the pkill teamviewerd workaround.

type = process dinit services, like runit services, need the executable to stay on the foreground, or else they can't be monitored and starting/auto-restarting/stopping them is not possible. The -d option makes TeamViewer go in the background, so dinit loses track of it (as runit would). The service itself is still running (despite being in the background), so it "works".



Another option would be to change to a type = bgprocess service (then dinit will rely on the PID file instead of assuming it is able to monitor and stop the service directly).

Re: [SOLVED] teamviewer for dinit

Reply #10
got it - that now makes perfect sense.  Thanks. 

Re: [SOLVED] teamviewer for dinit

Reply #11
@capezotte  Thanks for explanation
Create problems which don't have solution