Commit graph

19 commits

Author SHA1 Message Date
0b43d717d3
git-sync: Add sanity check before remote pull
Added check to fetch remote updates before actually pulling in remote
changes.
This may help somewhat with the modification of files when they are
simultaneously open in vim, though I am not entirely sure.
Needs further investigation.
2020-11-13 08:21:16 +01:00
bbfbf5bcfe
services: Add activitywatch service
Added service module to automatically start activitywatch in the
background, to monitor window usage throughout.
2020-11-04 13:02:07 +01:00
94673ea507
services: Fix shellcheck error 2020-09-25 11:24:10 +02:00
7bee413323
services: Reorganize services, detect X
Detect X autostart a bit better with a separate service. The service
relies on a shell script which searches for a socket which X creates on
startup and only finishes when it finds the socket succesfully.

This makes services which need X to start successfully a bit more
robust, and while it can still break if X takes too long, it should be
more stable now.

Finally, services can restart more quickly when ended since they don't
require the 2+ `RestartSec` option to be present anymore to successfully
start.
2020-09-24 16:24:42 +02:00
e5414cbadf
services: Fix flashfocus startup
Flashfocus did not start up correctly since it was not required for the
`default.target` which is the only (?) valid target when systemd
operates in user-mode.

Instead of overwriting just part of the flashfocus service file, and
subsequently having it enabled for default.target and a non-existent
graphical.target user environment, we overwrite the whole file and set
it to `default.target`.

Additionally, the service should be restarted when it fails and slow
down on its restart attempts (I kept 5 seconds for this one, since it is
not as time critical as others -- no one cares if windows only flash
5 seconds after starting the machine.)

Added (wishful) After components to many service units, in case I figure
out one day how to make a useful target for the systemd user mode.
2020-09-23 17:55:07 +02:00
b83929bcbd
services: Move flashfocus to systemd service
Removed manual initialization of flashfocus from xinitrc, enabled the
service in systemd.

Changed the restart timer to 5 seconds, to mirror other X-dependent user
services to circumvent systemd being too eager to start the service
before X is ready on booting.
2020-09-18 13:16:09 +02:00
34fca7670f
services: Lower restart time to 2 seconds
Main issue the restart delay fixes is that services don't wait for X to
be ready on startup (which is bad if the application being started
requires X being ready to actually work.)

I have still not found a way to work around waiting for X being ready
other then the ugly delay hack (for systemd --user modules at least).

However, the delay can be --- in most cases --- smaller than 5 seconds.
All my machines start reasonably fast and have X up and running from
pressing login to staring at the wallpaper in a couple seconds at most.

If services don't start correctly and the error is X not being ready,
increase the startup delay once again.
2020-09-12 17:37:43 +02:00
12beacac19
nvim: Fix 'vim:' modeline, add paragraph highlights
Fixed bug when line in todo dropdown starts with `vim:`, `vi:`, or `:ex`
which would automatically be read by vim and tried to be set in the
editor. Removed modeline reading from vim to fix the bug, and since it
provides quite an attack vector anyway.

Added Limelight to its startup procedure to highlight the current to-do
paragraph.
2020-09-08 14:58:36 +02:00
845dbba848
services: Increase restart period for X services
Dropdown services need an X server to connect to and fail autostarting
if there's no available server.

HACK

Increasing their restart timer will alleviate this problem, *but* it
also means the dropdowns will start more slowly when closed by the user.

There should be another way to alleviate one issue (start automatically
after X is available) without exacerbating the other (restart when you
have been closed).
2020-07-29 09:49:51 +02:00
5d4998481f
services: Unify naming pattern to kebab case 2020-07-29 09:38:22 +02:00
cc0cdd2a6c
services: Add autostarting dropdown todo list
Added systemd-controlled automatic restart to existing i3 todo list
overlay (super+t). Contains a lot of hard-coded paths and applications.
2020-07-29 09:35:23 +02:00
1c45202f18
services: Add autostarting dropdown-terminal 2020-07-29 09:22:31 +02:00
440629f3c3
services: Rename commit_notes to uni_notes_sync 2020-07-29 08:13:32 +02:00
0b65023253
services: Add autostart for several other packages
Autostarts an2linuxserver, dunst, kbfs, keybase, and the keybase://
redirector.

Will (presumably) complain if one of the programs is missing. Either
this should not be enabled by default or the startup service should
contain a sanity check for the program before attempting to launch
itself.
2020-07-29 08:13:32 +02:00
51178df4a3
services: Add time override to greenclip, redshift
Both greenclip and redshift did not automatically start on system start,
since they needed X to be running but their restart was almost
instantaneously. So, they restarted their alloted 5 times before X was
ready and gave up.

Restart time has been set to 5 and 10 seconds, so their startup takes a
little longer but should, in most cases, succeed.
2020-07-29 08:13:25 +02:00
90fcf81dfd
services: Fix commit_notes service autostart
Used wrong 'after' designation which would wait forever since it needed
to start after the runlevel which it was designated to run at.

Committed default.target.wants symlink to service file to automatically
enable its autostart on new machines.

This wil only really work for my directory set-up, so perhaps either the
service module should be disabled by default for the installation, be
asked during installation, or simply be manually enabled to autostart
during initial set-up (maybe mention in readme for the module).
2020-07-23 23:37:53 +02:00
a6096c25ef
[services] Make git-sync script more universal
Can now sync any folder, passed in on the command line.
2020-06-17 21:01:09 +02:00
589211ed3a
[services] Fix note-sync services pushing
Fixed conditional to not always reset push timer, even if no changes
were made.
2020-06-08 22:33:12 +02:00
98377fdf00
[services] Add note sync service
Added service to automatically commit changes in notes directory (every
2 minutes) and automatically push them to their remote origin (after no
  changes occured for an hour).

Uses git and systemd to work as a service in the background. Gets
restarted on failure.
2020-06-06 09:22:14 +02:00