# # Cookbook:: esh_nitter # Recipe:: install # # Copyright:: 2022, https://easyself.host # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. git '/home/nitter/nitter' do repository 'https://github.com/zedeus/nitter.git' # Sadly nitter poject does not manage any releases nor tags/branches revision 'HEAD' user 'nitter' group 'nitter' action :sync notifies :run, 'execute[build nitter]', :immediately notifies :run, 'execute[generate CSS]', :immediately notifies :run, 'execute[render MD]', :immediately end execute 'build nitter' do command 'nimble -y build -d:release' user 'nitter' login true cwd '/home/nitter/nitter' live_stream true action :nothing notifies :restart, 'service[nitter]', :delayed end execute 'generate CSS' do command 'nimble scss' user 'nitter' login true cwd '/home/nitter/nitter' live_stream true action :nothing notifies :restart, 'service[nitter]', :delayed end execute 'render MD' do command 'nimble md' user 'nitter' login true cwd '/home/nitter/nitter' live_stream true action :nothing notifies :restart, 'service[nitter]', :delayed end template '/home/nitter/nitter/nitter.conf' do owner 'nitter' group 'nitter' mode '0400' variables title: node['esh']['nitter']['config']['title'], hostname: node['esh']['nitter']['config']['hostname'], hmac_key: node['esh']['nitter']['config']['hmac_key'], replace_twitter: node['esh']['nitter']['config']['replace_twitter'], replace_youtube: node['esh']['nitter']['config']['replace_youtube'] notifies :restart, 'service[nitter]', :delayed action :create end esh_nginx_basic_proxy node['esh']['nitter']['nginx']['ip_addr'] do port node['esh']['nitter']['nginx']['port'] end