Compare commits
26 Commits
v2.4
...
841c342fcc
Author | SHA1 | Date | |
---|---|---|---|
|
841c342fcc | ||
|
5aec3b4dab | ||
|
d787060a24 | ||
|
c1a29418eb | ||
|
17847f999c | ||
|
3adcddc70c | ||
|
e9676491ee | ||
|
1a545bb2a1 | ||
|
1e128a7cd8 | ||
|
5dbb6a710c | ||
|
dadadeb066 | ||
|
c76ff26bd6 | ||
|
50f8648f64 | ||
|
5f82a9e339 | ||
|
3278ba4eac | ||
|
9fc72f8b68 | ||
|
b7b707bd43 | ||
|
7cf27e0fde | ||
|
66f2a973a3 | ||
|
7ecbbff18a | ||
|
850ce195a0 | ||
|
479aebd023 | ||
|
9b178d1fb3 | ||
|
3ab098db5c | ||
|
6d16e93008 | ||
|
98934daee4 |
@@ -18,7 +18,7 @@ Then run one of the corresponding commands:
|
||||
make serve # starts a server at http://localhost:7070
|
||||
|
||||
# ... or build a docker image
|
||||
docker build -t yarr .
|
||||
docker build -t yarr -f etc/dockerfile .
|
||||
|
||||
## ARM compilation
|
||||
|
||||
@@ -26,7 +26,7 @@ The instructions below are to cross-compile *yarr* to `Linux/ARM*`.
|
||||
|
||||
Build:
|
||||
|
||||
docker build -t yarr.arm -f dockerfile.arm .
|
||||
docker build -t yarr.arm -f etc/dockerfile.arm .
|
||||
|
||||
Test:
|
||||
|
@@ -1,4 +1,12 @@
|
||||
# upcoming
|
||||
# upcoming
|
||||
|
||||
- (new) Fever API support (thanks to @icefed)
|
||||
- (fix) duplicate articles caused by the same feed addition (thanks to @adaszko)
|
||||
- (fix) relative article links (thanks to @adazsko for the report)
|
||||
- (fix) atom article links stored in id element (thanks to @adazsko for the report)
|
||||
- (fix) parsing atom feed titles (thanks to @wnh)
|
||||
|
||||
# v2.4 (2023-08-15)
|
||||
|
||||
- (new) ARM build support (thanks to @tillcash & @fenuks)
|
||||
- (new) auth configuration via param or env variable (thanks to @pierreprinetti)
|
||||
|
19
doc/fever.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# Fever API support
|
||||
|
||||
Fever API is a kind of RSS HTTP API interface, because the Fever API definition is not very clear, so the implementation of Fever server and Client may have some compatibility problems.
|
||||
|
||||
The Fever API implemented by Yarr is based on the Fever API spec: https://github.com/DigitalDJ/tinytinyrss-fever-plugin/blob/master/fever-api.md.
|
||||
|
||||
Here are some Apps that have been tested to work with yarr. Feel free to test other Clients/Apps and update the list here.
|
||||
|
||||
> Different apps support different URL/Address formats. Please note whether the URL entered has `http://` scheme and `/` suffix.
|
||||
|
||||
| App | Platforms | Config Server URL |
|
||||
|:------------------------------------------------------------------------- | ---------------- |:--------------------------------------------------- |
|
||||
| [Reeder](https://reederapp.com/) | MacOS<br>iOS | 127.0.0.1:7070/fever<br>http://127.0.0.1:7070/fever |
|
||||
| [ReadKit](https://readkit.app/) | MacOS<br>iOS | http://127.0.0.1:7070/fever |
|
||||
| [Fluent Reader](https://github.com/yang991178/fluent-reader) | MacOS<br>Windows | http://127.0.0.1:7070/fever/ |
|
||||
| [Unread](https://apps.apple.com/us/app/unread-an-rss-reader/id1363637349) | iOS | http://127.0.0.1:7070/fever |
|
||||
| [Fiery Feeds](https://voidstern.net/fiery-feeds) | MacOS<br>iOS | http://127.0.0.1:7070/fever |
|
||||
|
||||
If you are having trouble using Fever, please open an issue and @icefed, thanks.
|
@@ -28,17 +28,17 @@ RUN env \
|
||||
CGO_ENABLED=1 \
|
||||
GOOS=linux GOARCH=arm64 \
|
||||
go build \
|
||||
-tags "sqlite_foreign_keys release linux" \
|
||||
-tags "sqlite_foreign_keys linux" \
|
||||
-ldflags="-s -w" \
|
||||
-o /root/out/yarr.arm64 src/main.go
|
||||
-o /root/out/yarr.arm64 ./cmd/yarr
|
||||
|
||||
RUN env \
|
||||
CC=arm-linux-gnueabihf-gcc \
|
||||
CGO_ENABLED=1 \
|
||||
GOOS=linux GOARCH=arm GOARM=7 \
|
||||
go build \
|
||||
-tags "sqlite_foreign_keys release linux" \
|
||||
-tags "sqlite_foreign_keys linux" \
|
||||
-ldflags="-s -w" \
|
||||
-o /root/out/yarr.arm7 src/main.go
|
||||
-o /root/out/yarr.arm7 ./cmd/yarr
|
||||
|
||||
CMD ["/bin/bash"]
|
BIN
etc/promo.png
Before Width: | Height: | Size: 223 KiB After Width: | Height: | Size: 173 KiB |
16
makefile
@@ -8,26 +8,26 @@ GO_LDFLAGS := $(GO_LDFLAGS) -X 'main.Version=$(VERSION)' -X 'main.GitHash=$(GITH
|
||||
|
||||
build_default:
|
||||
mkdir -p _output
|
||||
go build -tags "sqlite_foreign_keys release" -ldflags="$(GO_LDFLAGS)" -o _output/yarr src/main.go
|
||||
go build -tags "sqlite_foreign_keys" -ldflags="$(GO_LDFLAGS)" -o _output/yarr ./cmd/yarr
|
||||
|
||||
build_macos:
|
||||
mkdir -p _output/macos
|
||||
GOOS=darwin GOARCH=amd64 go build -tags "sqlite_foreign_keys release macos" -ldflags="$(GO_LDFLAGS)" -o _output/macos/yarr src/main.go
|
||||
GOOS=darwin GOARCH=amd64 go build -tags "sqlite_foreign_keys macos" -ldflags="$(GO_LDFLAGS)" -o _output/macos/yarr ./cmd/yarr
|
||||
cp src/platform/icon.png _output/macos/icon.png
|
||||
go run bin/package_macos.go -outdir _output/macos -version "$(VERSION)"
|
||||
go run ./cmd/package_macos -outdir _output/macos -version "$(VERSION)"
|
||||
|
||||
build_linux:
|
||||
mkdir -p _output/linux
|
||||
GOOS=linux GOARCH=amd64 go build -tags "sqlite_foreign_keys release linux" -ldflags="$(GO_LDFLAGS)" -o _output/linux/yarr src/main.go
|
||||
GOOS=linux GOARCH=amd64 go build -tags "sqlite_foreign_keys linux" -ldflags="$(GO_LDFLAGS)" -o _output/linux/yarr ./cmd/yarr
|
||||
|
||||
build_windows:
|
||||
mkdir -p _output/windows
|
||||
go run bin/generate_versioninfo.go -version "$(VERSION)" -outfile src/platform/versioninfo.rc
|
||||
go run ./cmd/generate_versioninfo -version "$(VERSION)" -outfile src/platform/versioninfo.rc
|
||||
windres -i src/platform/versioninfo.rc -O coff -o src/platform/versioninfo.syso
|
||||
GOOS=windows GOARCH=amd64 go build -tags "sqlite_foreign_keys release windows" -ldflags="$(GO_LDFLAGS) -H windowsgui" -o _output/windows/yarr.exe src/main.go
|
||||
GOOS=windows GOARCH=amd64 go build -tags "sqlite_foreign_keys windows" -ldflags="$(GO_LDFLAGS) -H windowsgui" -o _output/windows/yarr.exe ./cmd/yarr
|
||||
|
||||
serve:
|
||||
go run -tags "sqlite_foreign_keys" src/main.go -db local.db
|
||||
go run -tags "sqlite_foreign_keys" ./cmd/yarr -db local.db
|
||||
|
||||
test:
|
||||
cd src && go test -tags "sqlite_foreign_keys release" ./...
|
||||
cd src && go test -tags "sqlite_foreign_keys" ./...
|
||||
|
34
readme.md
@@ -3,32 +3,36 @@
|
||||
**yarr** (yet another rss reader) is a web-based feed aggregator which can be used both
|
||||
as a desktop application and a personal self-hosted server.
|
||||
|
||||
It is written in Go with the frontend in Vue.js. The storage is backed by SQLite.
|
||||
The app is a single binary with an embedded database (SQLite).
|
||||
|
||||

|
||||
|
||||
## usage
|
||||
|
||||
The latest prebuilt binaries for Linux/MacOS/Windows are available
|
||||
[here](https://github.com/nkanaev/yarr/releases/latest).
|
||||
The latest prebuilt binaries for Linux/MacOS/Windows AMD64 are available
|
||||
[here](https://github.com/nkanaev/yarr/releases/latest). Installation instructions:
|
||||
|
||||
### macos
|
||||
* MacOS
|
||||
|
||||
Download `yarr-*-macos64.zip`, unzip it, place `yarr.app` in `/Applications` folder, [open the app][macos-open], click the anchor menu bar icon, select "Open".
|
||||
Download `yarr-*-macos64.zip`, unzip it, place `yarr.app` in `/Applications` folder, [open the app][macos-open], click the anchor menu bar icon, select "Open".
|
||||
|
||||
* Windows
|
||||
|
||||
Download `yarr-*-windows64.zip`, unzip it, open `yarr.exe`, click the anchor system tray icon, select "Open".
|
||||
|
||||
* Linux
|
||||
|
||||
Download `yarr-*-linux64.zip`, unzip it, place `yarr` in `$HOME/.local/bin`
|
||||
and run [the script](etc/install-linux.sh).
|
||||
|
||||
[macos-open]: https://support.apple.com/en-gb/guide/mac-help/mh40616/mac
|
||||
|
||||
### windows
|
||||
|
||||
Download `yarr-*-windows64.zip`, unzip it, open `yarr.exe`, click the anchor system tray icon, select "Open".
|
||||
|
||||
### linux
|
||||
|
||||
Download `yarr-*-linux64.zip`, unzip it, place `yarr` in `$HOME/.local/bin`
|
||||
and run [the script](etc/install-linux.sh).
|
||||
|
||||
For self-hosting, see `yarr -h` for auth, tls & server configuration flags.
|
||||
For building from source code, see [build.md](build.md)
|
||||
|
||||
See more:
|
||||
|
||||
* [Building from source code](doc/build.md)
|
||||
* [Fever API support](doc/fever.md)
|
||||
|
||||
## credits
|
||||
|
||||
|
@@ -1,6 +1,3 @@
|
||||
//go:build release
|
||||
// +build release
|
||||
|
||||
package assets
|
||||
|
||||
import "embed"
|
||||
@@ -9,6 +6,7 @@ import "embed"
|
||||
//go:embed graphicarts
|
||||
//go:embed javascripts
|
||||
//go:embed stylesheets
|
||||
//go:embed manifest.json
|
||||
var embedded embed.FS
|
||||
|
||||
func init() {
|
||||
|
BIN
src/assets/graphicarts/android/android-launchericon-144-144.png
Normal file
After Width: | Height: | Size: 5.3 KiB |
BIN
src/assets/graphicarts/android/android-launchericon-192-192.png
Normal file
After Width: | Height: | Size: 8.3 KiB |
BIN
src/assets/graphicarts/android/android-launchericon-48-48.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
src/assets/graphicarts/android/android-launchericon-512-512.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
src/assets/graphicarts/android/android-launchericon-72-72.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
BIN
src/assets/graphicarts/android/android-launchericon-96-96.png
Normal file
After Width: | Height: | Size: 3.1 KiB |
BIN
src/assets/graphicarts/ios/100.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
src/assets/graphicarts/ios/1024.png
Normal file
After Width: | Height: | Size: 56 KiB |
BIN
src/assets/graphicarts/ios/114.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
src/assets/graphicarts/ios/120.png
Normal file
After Width: | Height: | Size: 4.4 KiB |
BIN
src/assets/graphicarts/ios/128.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
src/assets/graphicarts/ios/144.png
Normal file
After Width: | Height: | Size: 5.3 KiB |
BIN
src/assets/graphicarts/ios/152.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
BIN
src/assets/graphicarts/ios/16.png
Normal file
After Width: | Height: | Size: 515 B |
BIN
src/assets/graphicarts/ios/167.png
Normal file
After Width: | Height: | Size: 7.0 KiB |
BIN
src/assets/graphicarts/ios/180.png
Normal file
After Width: | Height: | Size: 7.6 KiB |
BIN
src/assets/graphicarts/ios/192.png
Normal file
After Width: | Height: | Size: 8.3 KiB |
BIN
src/assets/graphicarts/ios/20.png
Normal file
After Width: | Height: | Size: 699 B |
BIN
src/assets/graphicarts/ios/256.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
src/assets/graphicarts/ios/29.png
Normal file
After Width: | Height: | Size: 939 B |
BIN
src/assets/graphicarts/ios/32.png
Normal file
After Width: | Height: | Size: 1010 B |
BIN
src/assets/graphicarts/ios/40.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
src/assets/graphicarts/ios/50.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
src/assets/graphicarts/ios/512.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
src/assets/graphicarts/ios/57.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
src/assets/graphicarts/ios/58.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
src/assets/graphicarts/ios/60.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
src/assets/graphicarts/ios/64.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
src/assets/graphicarts/ios/72.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
BIN
src/assets/graphicarts/ios/76.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
src/assets/graphicarts/ios/80.png
Normal file
After Width: | Height: | Size: 2.5 KiB |
BIN
src/assets/graphicarts/ios/87.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
src/assets/graphicarts/windows11/LargeTile.scale-100.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/graphicarts/windows11/LargeTile.scale-125.png
Normal file
After Width: | Height: | Size: 19 KiB |
BIN
src/assets/graphicarts/windows11/LargeTile.scale-150.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
src/assets/graphicarts/windows11/LargeTile.scale-200.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
src/assets/graphicarts/windows11/LargeTile.scale-400.png
Normal file
After Width: | Height: | Size: 69 KiB |
BIN
src/assets/graphicarts/windows11/SmallTile.scale-100.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
BIN
src/assets/graphicarts/windows11/SmallTile.scale-125.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
src/assets/graphicarts/windows11/SmallTile.scale-150.png
Normal file
After Width: | Height: | Size: 3.3 KiB |
BIN
src/assets/graphicarts/windows11/SmallTile.scale-200.png
Normal file
After Width: | Height: | Size: 5.3 KiB |
BIN
src/assets/graphicarts/windows11/SmallTile.scale-400.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
src/assets/graphicarts/windows11/SplashScreen.scale-100.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
src/assets/graphicarts/windows11/SplashScreen.scale-125.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
src/assets/graphicarts/windows11/SplashScreen.scale-150.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
src/assets/graphicarts/windows11/SplashScreen.scale-200.png
Normal file
After Width: | Height: | Size: 34 KiB |
BIN
src/assets/graphicarts/windows11/SplashScreen.scale-400.png
Normal file
After Width: | Height: | Size: 75 KiB |
BIN
src/assets/graphicarts/windows11/Square150x150Logo.scale-100.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
BIN
src/assets/graphicarts/windows11/Square150x150Logo.scale-125.png
Normal file
After Width: | Height: | Size: 8.0 KiB |
BIN
src/assets/graphicarts/windows11/Square150x150Logo.scale-150.png
Normal file
After Width: | Height: | Size: 8.2 KiB |
BIN
src/assets/graphicarts/windows11/Square150x150Logo.scale-200.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/graphicarts/windows11/Square150x150Logo.scale-400.png
Normal file
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 602 B |
After Width: | Height: | Size: 715 B |
After Width: | Height: | Size: 722 B |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 602 B |
After Width: | Height: | Size: 715 B |
After Width: | Height: | Size: 722 B |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 3.3 KiB |
BIN
src/assets/graphicarts/windows11/Square44x44Logo.scale-100.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
src/assets/graphicarts/windows11/Square44x44Logo.scale-125.png
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
src/assets/graphicarts/windows11/Square44x44Logo.scale-150.png
Normal file
After Width: | Height: | Size: 2.4 KiB |