1
1
mirror of https://github.com/go-gitea/gitea synced 2025-07-29 05:38:37 +00:00

Use standard lessc and minify CSS using Node.js (#2337)

* Use standard lessc and minify CSS using Node.js

This changes the previous nonstandard `lessc` to the official one and
enables CSS minification via the clean-css module.

To build CSS, Node.js is required along with a `npm install` to get the
tools installed locally in node_modules so there is no dependency on
binaries in PATH. Benefits include:

- Allows one to have a standard lessc in PATH.
- Can now use command line switches on lessc.
- Minified CSS brings faster page load times and also has the benefit
  of discouraging contributors from editing CSS directly.

To build CSS, Node.js is required along with a `npm install` to get the
tools installed locally based on the information in `package.json`.

The 'make stylesheet' task was modified to run without condition. This
makes it easier to work on the make task itself without having to delete
files.

Also fixes: https://github.com/go-gitea/gitea/issues/2198

* install node, npm and modules on drone

* .PHONY

* use 'minify' to minify CSS
This commit is contained in:
silverwind
2017-09-21 05:35:11 +02:00
committed by Lunny Xiao
parent fa1cbc2896
commit 1fbfccb4fc
6 changed files with 25 additions and 3139 deletions

View File

@@ -15,7 +15,6 @@ else
endif
BINDATA := modules/{options,public,templates}/bindata.go
STYLESHEETS := $(wildcard public/less/index.less public/less/_*.less)
DOCKER_TAG := gitea/gitea:latest
GOFILES := $(shell find . -name "*.go" -type f ! -path "./vendor/*" ! -path "*/bindata.go")
GOFMT ?= gofmt -s
@@ -299,14 +298,12 @@ stylesheets-check: stylesheets
fi;
.PHONY: stylesheets
stylesheets: public/css/index.css
.IGNORE: public/css/index.css
public/css/index.css: $(STYLESHEETS)
@which lessc > /dev/null; if [ $$? -ne 0 ]; then \
$(GO) get -u github.com/kib357/less-go/lessc; \
stylesheets:
@hash minify > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
$(GO) get -u github.com/tdewolff/minify/cmd/minify; \
fi
lessc -i $< -o $@
node_modules/.bin/lessc --no-ie-compat public/less/index.less public/css/index.css
minify -o public/css/index.css public/css/index.css
.PHONY: swagger-ui
swagger-ui: