cleaner bb project

This commit is contained in:
Yann Esposito (Yogsototh) 2022-10-09 20:44:41 +02:00
parent f8afbff5d1
commit 6103d212c0
Signed by untrusted user who does not match committer: yogsototh
GPG key ID: 7B19A4C650D59646
3 changed files with 47 additions and 4 deletions

7
bb.edn
View file

@ -8,9 +8,10 @@
(fs/delete-if-exists "brut.min.css")
(fs/delete-if-exists "brut-nocolors.min.css"))}
build-site {:doc "build the HTML"
:requires ([brut.main])
:task (brut.main/-main)}
:requires ([brut.site])
:task (brut.site/-main)}
build-css {:doc "build the CSS"
:task (shell "./build.clj")}
:requires ([brut.build-css])
:task (brut.build-css/-main)}
build {:doc "Build everything"
:depends [build-css build-site]}}}

42
bb/brut/build_css.clj Normal file
View file

@ -0,0 +1,42 @@
(ns brut.build-css
(:require
[babashka.fs :as fs]
[babashka.process :refer [process]]))
(defn -main [& _args]
(let [dist "_build"
tmp-dir (-> (fs/create-temp-dir)
(fs/delete-on-exit))
tmp-css (fs/file tmp-dir "tmp.css")
brut-css "brut.min.css"
sub-css ["colors"
"extended-colors"
"general"
"buttons"
"grid"
"components"
"headings"
"icons"
"forms"
"navbar"
"tables"
"messages"]
current-year (-> (new java.util.Date)
.getYear
;; yeah... it's dumb
(+ 1900))]
(fs/create-dirs dist)
(spit tmp-css (format "/* Copyright %s Yann Esposito; MIT licensed */" current-year))
(doseq [item sub-css]
(printf "building: %s\n" item)
(let [css (fs/file tmp-dir (str item ".css"))
min-css (fs/file dist (str item ".min.css"))
_ @(process ["lessc" (format "src/%s.less" item)] {:out css})
minified (-> @(process ["minify" css] {:out :string}) :out)]
(spit min-css minified)
(when-not (= "extended-colors" item)
(spit tmp-css minified :append true))))
(fs/move tmp-css brut-css {:replace-existing true
:atomic-move true})
(println "built: " brut-css)))

View file

@ -1,4 +1,4 @@
(ns brut.main
(ns brut.site
(:require [hiccup2.core :as h]
[clojure.string :as string]
[babashka.fs :as fs]))