Evidlo / remarkable_news

Daily news/comics on your reMarkable's suspend screen

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Installation fails - systemctl not found

urb4nc4rl opened this issue · comments

The first time I tried to install, the script would abort on the line where it tries to stop the service, presumably because it hasn't been installed yet.

Failed to stop renews.service: Unit renews.service not loaded.
make: *** [install_nyt] Error 5

Having commented out the line of the Makefile that does this, now I cannot install because apparently systemctl is not found on the remarkable:

Identity added: /Users/myname/.ssh/id_rsa (/Users/myname/.ssh/id_rsa)
root@192.168.1.193's password: 
renews.arm                                             100%   11MB 438.1KB/s   00:24    
root@192.168.1.193's password: 
renews.service                                         100%  339    70.2KB/s   00:00    
Pseudo-terminal will not be allocated because stdin is not a terminal.
root@192.168.1.193's password: 
make: systemctl: No such file or directory
make: *** [install_nyt] Error 1

Clearly, systemctl is installed - otherwise the first error would not have occurred?

Any thoughts? I'm wondering if it's because I'm on a Mac and the default shell is now zsh. Going to try using Bash and will report back

@urb4nc4rl probably related to my reportings in #14. I use fish shell but didn't further with bash so far

I think I fixed the first issue with the latest commit.

As for the second issue, if you manually ssh into 192.168.1.193, can you run systemctl? Normally the reMarkable is at 10.11.99.1 when connected via USB.

I can confirm the first issue is fixed.

But, it still gives the error

bash-3.2$ make install_nyt
Identity added: /Users/myname/.ssh/id_rsa (/Users/myname/.ssh/id_rsa)
root@10.11.99.1's password: 
root@10.11.99.1's password: 
renews.arm                                                                                                                                   100%   11MB   6.2MB/s   00:01    
root@10.11.99.1's password: 
renews.service                                                                                                                               100%  341   144.2KB/s   00:00    
Pseudo-terminal will not be allocated because stdin is not a terminal.
root@10.11.99.1's password: 
make: systemctl: No such file or directory
make: *** [install_nyt] Error 1

PS: I was SSH'ing in over WiFi, but have switched to USB, hence the IP change

Can you manually ssh into the reMarkable and run systemctl?

I could, yes, and in the end that's how I completed the final steps of installation. For some reason, the syntax in the Makefile kept throwing things off.

This will immediately trigger an image download and put it in /tmp/dump.png

./renews.arm -test -output /tmp/dump.png -verbose -url https://xkcd.com -xpath '//div[@id="comic"]/img/@src'

Or if you leave out the -test option, it will wait for a WiFi connection to be established.

seems the RM2 doesn't like the input as a stream. if you change Makefile : install to this:

define install
	# stop running service, ignore failure to stop
	ssh root@$(host) systemctl stop renews || true
	scp renews.arm root@$(host):
	# substitute timezone/cooldown arguments
	sed -e "s|TZ|$(timezone)|" \
		-e "s|COOLDOWN|$(cooldown)|" \
		$(1) > renews.service
	# copy service to remarkable and enable
	scp renews.service root@$(host):/etc/systemd/system/renews.service
	ssh root@$(host) systemctl daemon-reload
	ssh root@$(host) systemctl enable renews
	ssh root@$(host) systemctl restart renews
endef

it seems to work. Might be a busybox update issue, perhaps?

Are you on OSX?

Let's do an experiment. If you run make, does it give an error or print the text?

Makefile

.ONESHELL:

.PHONY: test
test:
	cat <<- ENDCAT
		hello world
		foobar123
		more text
	ENDCAT

Turns out the version of Make OSX ships with doesn't support .ONESHELL.