1
0
mirror of https://github.com/hrfee/jfa-go.git synced 2024-12-22 09:00:10 +00:00
Commit Graph

42 Commits

Author SHA1 Message Date
2c6d08319b
add typechecking step to Makefile when DEBUG=on 2021-05-03 18:32:56 +01:00
a2c344de83
add shorthand flag names
along with an ugly wrapper for the help message that merges the
descriptions for the short & long versions.
2021-04-24 23:54:56 +01:00
886ae64feb
add "systemd" command to generate a .service file
never got around to adding this from jellyfin-accounts for some reason.
2021-04-24 18:54:31 +01:00
dbe7e2e659
remove ts-debug 2021-04-01 14:33:57 +01:00
e16f05b130
use build constraints for embed, clean up makefile
internal-files/external-files and compile-debug are gone, the
environment variables INTERNAL=on/off and DEBUG=on/off replace them.
2021-04-01 14:22:11 +01:00
9370913ace
add password reset link option
When enabled (in Settings > Password Resets), a magic link will be sent
instead of a PIN when the user tries reset their password. By doing
this the user doesn't have to keep the Jellyfin tab open to enter the
code.
2021-03-30 22:41:28 +01:00
92332206f0
add basic update functionality
If enabled, jfa-go pings buildrone (hosted at builds.hrfee.pw) every 30
min for new updates. If there is one, it gets information (and if
applicable, a binary) from the appropriate source (buildrone, github, or
dockerhub) and displays it on the admin page. You can switch update
channels between stable and unstable. For binary releases, updates are
downloaded automatically and installed when the user presses update.

Since this obviously introduces some "phone-home" functionality into
jfa-go, I just want to say IPs are not and will not be logged by
buildrone, although I may later introduce functionality to give a rough
idea of the number of users (again, no IPs stored). The whole thing can
also be turned off in settings.
2021-03-07 15:23:44 +00:00
bd05a4b35a
include LICENSE in build, display in about tab
Also fixes last commit, user cache wasn't refreshed in ApplySettings, is
now.
2021-03-01 00:32:09 +00:00
40fc5e9604
Fix email editor when plaintext setting enabled 2021-02-22 16:40:37 +00:00
9799665951
fix tag versioning and dockerfile 2021-02-22 01:26:07 +00:00
b3fa667db1
version with ldflags instead of script 2021-02-22 01:23:42 +00:00
82034a2586
use python3 in makefile for embed 2021-02-17 16:11:01 +00:00
5d7972db56
rename embed/noembed to internal-files/external-files 2021-02-17 14:41:44 +00:00
403ad58274
move all scripts to scripts/ 2021-02-17 14:32:03 +00:00
873afb47cd
strip debug symbols in makefile 2021-02-12 14:59:35 +00:00
98a9e20cc0
Fix docker build, add GOBINARY flag for make
GOBINARY defaults to "go", but if you want to build on a normal system,
you'll likely set it to go1.16rc1 with "make all GOBINARY=go1.16rc1".
2021-02-12 14:35:13 +00:00
72cf3e2240
add external/internal data options
"make all" will build with internal data, whereas "make debug"/"make
all-external" will make an external "data/" directory.
2021-02-12 14:32:48 +00:00
815bdc35ac
fully self-contained
paths are pretty janky, but it works. Also, [files]/lang_files now must
be the path to a directory CONTAINING a "lang/" directory. I'll work
around this at a later date.
2021-02-12 14:28:09 +00:00
fefe2d82a4
rebase 12/02, use go1.16rc1 in make, remove ioutil, start switching to io/fs for file i/o
ioutil's contents are now in io and os.
Eventually jfa-go's files will be embedded in the binary with go1.16's
new embed feature. Using io/fs will provide abstraction for accessing
these files, and allow for both embedded and non-embedded versions.
Also, internal paths to things like email templates, etc. will be
prefixed with "jfa-go:" to indicate to use the app's own Filesystem
instead of reading the file normally. This also allows for custom files
to continue to be used as they are currently.
2021-02-12 14:27:01 +00:00
2b55a1873c
fix css, oops 2021-02-11 18:28:25 +00:00
c2e68bdc77
add GOESBUILD option for platform without esbuild on npm 2021-02-11 18:21:21 +00:00
23ae18d732
compile setup.ts in Makefile/Goreleaser
surprised there hasn't been issues for this, the setup page would've
been broken for a while.
2021-01-26 00:37:32 +00:00
406fef6595
bundle typescript 2021-01-23 19:08:27 +00:00
f7d8feac5d
bundle css with esbuild 2021-01-23 18:53:14 +00:00
fdc97b4e86
rename ts to typescript
unusual name conflict meant this step gets skipped.
2021-01-05 18:40:19 +00:00
eb370d64df
Merge a17t-redesign, kinda ts-ify setup.js
the web ui has been redesigned with the a17t toolkit, which imo looks a
lot better than bootstrap. This also brought a complete rework of the
web code, which now makes a lot more sense hopefully. the setup page is
still stuck with bootstrap, its not much of a priority but i'll rewrite
it eventually.
2021-01-05 18:16:23 +00:00
301f502052
Rework typescript to use modules
web UI now uses modules, and relies less on bodge to make things work.
Also fixes an issue where invites where "failed to send to xx" appeared
in invite form.
2020-10-22 17:50:40 +01:00
8e6cf799cd
use npx to avoid looking for node_modules, get rid of useless
get_node_deps

makefile works without interaction by default now.
2020-10-18 00:57:53 +01:00
2a2435ae11
remove version, device, device_id options, set them automatically
not sure why i exposed these to the user in the first place. they are
set to <jfa-go version>, <jfa-go>, <jfa-go-<version>-<commit>>
respectively.
2020-09-29 20:51:15 +01:00
04a4a4ca95
use esbuild to compile and minify ts
tsc is still used for ts-debug.
2020-09-29 20:35:06 +01:00
9fec714da7
fix goreleaser builds
wrapped tsc in a a shell script to ignore duplicate function errors.
2020-09-25 00:11:52 +01:00
64ad8ccf6e
Fix docker build; add some color 2020-09-24 21:59:08 +01:00
b6537cef65
Add basic swagger documentation
accessible by running with -swagger. Accessible at /swagger/index.html.
Currently doesn't have authentication setup, so no requests will work.
2020-09-24 17:51:13 +01:00
ce844e0574
add ts-debug option to makefile for including typescript and sourcemaps 2020-09-23 20:14:16 +01:00
32b8ed4aa2
rewrite* most web ui code in typescript
i wanted to split up the web ui components into multiple files, and
figured it'd be a good chance to try out typescript. run make typescript
to compile everything in ts/ and put it in data/static/.

This is less of a rewrite and more of a refactoring, most of it still
works the same but bits have been cleaned up too.

Remaining javascript found in setup.js and form.html
2020-09-21 22:06:27 +01:00
258656fbf9
version based on current tag for makefile
if there isnt a tag, version is 'git'. this fixes versioning for aur package and docker.
2020-09-15 12:12:51 +01:00
9850545f1b
add version to default config file 2020-09-05 17:32:13 +01:00
17994352b1
Disable cgo and add compress step to makefile 2020-09-02 20:06:02 +01:00
1b0ca34586
include version and commit hash at compile time
when using makefile, version is set to "git". Currently  printed on
start, but an about page in the web UI will be added.
2020-08-31 14:57:42 +01:00
c778837593
Added install step to makefile; start PKGBUILD
Also added MIT License
2020-08-19 12:10:34 +01:00
8c4bd4541c
Added non interactive makefile option; fixed flags again
fixed another problem with the -data option, and added 'make headless'
for use in the dockerfile
2020-08-16 20:11:16 +01:00
54af15cc5a
Added makefile
Alternative to goreleaser.
2020-08-03 18:00:54 +01:00