$ sudo groupadd nitter $ sudo useradd -m -g nitter nitter $ sudo -iu nitter
$ wget https://nim-lang.org/download/nim-1.6.6-linux_x64.tar.xz https://nim-lang.org/download/nim-1.6.6-linux_x64.tar.xz.sha256 $ sha256sum -c nim-1.6.6-linux_x64.tar.xz.sha256 nim-1.6.6-linux_x64.tar.xz: OK $ xzcat nim-1.6.6-linux_x64.tar.xz | tar xf - $ PATH=~/nim-1.6.6/bin:$PATH $ nim -v Nim Compiler Version 1.6.6 [Linux: amd64] Compiled at 2022-05-05 Copyright (c) 2006-2021 by Andreas Rumpf git hash: 0565a70eab02122ce278b98181c7d1170870865c active boot switches: -d:release
$ git clone https://github.com/zedeus/nitter $ cd nitter $ nimble build -d:release $ nimble scss $ vi public/md/about.md $ nimble md $ cp nitter.example.conf nitter.conf $ ps -ef | grep -i redis redis 848 1 0 Jun26 ? 00:00:50 /usr/bin/redis-server 127.0.0.1:6379 nitter 14237 16126 0 03:02 pts/2 00:00:00 grep -i redis $ ./nitter & $ w3m http://localhost:8080/ $ kill %1
/etc/systemd/system/nitter.service
[Unit] Description=Nitter (An alternative Twitter front-end) After=syslog.target After=network.target [Service] Type=simple # set user and group User=nitter Group=nitter # configure location WorkingDirectory=/home/nitter/nitter ExecStart=/home/nitter/nitter/nitter Restart=always RestartSec=15 [Install] WantedBy=multi-user.target
$ sudo systemctl enable --now nitter.service $ systemctl status nitter ● nitter.service - Nitter (An alternative Twitter front-end) Loaded: loaded (/etc/systemd/system/nitter.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2021-02-17 01:13:07 JST; 34s ago Main PID: 19702 (nitter) Tasks: 1 (limit: 4696) Memory: 3.6M CGroup: /system.slice/nitter.service └─19702 /home/nitter/nitter/nitter $ w3m http://localhost:8080/
$ sudo certbot certonly -d nitter.matoken.org
/etc/apache2/sites-available/nitter.matoken.org.conf
<VirtualHost *:80> ServerName nitter.matoken.org Redirect permanent / https://nitter.matoken.org/ </VirtualHost> <IfModule mod_ssl.c> <VirtualHost *:443> ServerName nitter.matoken.org ServerAdmin webmaster@matoken.org <Proxy *> Order deny,allow Allow from all </Proxy> ProxyPreserveHost On ProxyPass / http://127.0.0.1:8080/ nocanon ProxyPassReverse / http://127.0.0.1:8080/ AllowEncodedSlashes On ErrorLog ${APACHE_LOG_DIR}/error.nitter.matoken.org.log CustomLog ${APACHE_LOG_DIR}/access.nitter.matoken.org.log combined SSLCertificateFile /etc/letsencrypt/live/nitter.matoken.org/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/nitter.matoken.org/privkey.pem </VirtualHost> </IfModule>
$ sudo a2ensite nitter.matoken.org.conf $ sudo apache2ctl configtest $ sudo systemctl reload apache2
$ sudo su - nitter $ cd ~/nitter $ git pull $ export PATH=~/nim-1.6.6/bin:${PATH} $ nim -v $ nimble build -d:release $ nimble scss $ nimble md $ diff -u ./nitter.example.conf ./nitter.conf $ exit $ sudo service nitter restart
※要JavaScript
Nitter ページの右上の⚙から設定画面に遷移して,「Infinite scrolling (experimental, requires JavaScript)」をOnにする.
カンマ区切りでアカウントを複数指定できる.
https://nitter.matoken.org/JAXA_jp,jaxa_aero,ISAS_JAXA,TKSC_JAXA,tnsc_JAXA,JAXA_Kakuda
RSS も
https://nitter.matoken.org/JAXA_jp,jaxa_aero,ISAS_JAXA,TKSC_JAXA,tnsc_JAXA,JAXA_Kakuda/rss
URL の長さに制限があるのであまり沢山のユーザは指定できない.
購読したいユーザをTwitter アカウントの公開リストに登録してそのリストをNitter に指定して読み込む
https://nitter.matoken.org/i/lists/1640656683142889472
RSS も
※解決済.未だ起こる場合はNitterを最新にする.
https://nitter.matoken.org/matoken1 にアクセスするとコンテンツが空. https://nitter.matoken.org/matoken1/search だと見えるのでそれで一応しのげる.
RedisやNitterを再起動したり,Nitterを最新にしたりしても変わらない.
ISSUEにそれらしいものが.
Twitterがドイツのインスタンスに対してアクセス制限をかけている?ドイツのVPSでホストしているのでこれのよう.
試しに日本のVPSでhttp_proxyを立ててNitterをそちら経由にすると見えるようになった,しかし当たり前だが反応が悪くなった. proxyを外す.
何故か https://nitter.matoken.org/matoken1 でコンテンツが取得できるようになった…….
コメント