summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 1b1fc195866aae1ae1880399d4f0d46e924a0165 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# Maintainer: Igor Ochocki <unigniu14@gmail.com>
pkgname=wutsk-calendar
_npmname=WUTSKCalendar
pkgver=1.0.0
pkgrel=1
pkgdesc="A Next.JS calendar application for WUT SK"
arch=('x86_64' 'aarch64')
url="https://github.com/Igor-Ochocki/WUTSKCalendar"
license=('MIT')
depends=('nodejs' 'npm' 'nginx' 'openssl' 'git')
makedepends=('python-setuptools')
optdepends=("certbot: For obtaining trusted SSL certificates from Let's Encrypt" "certbot-nginx: Nginx plugin for Certbot")
install=${pkgname}.install

source=("${_npmname}::git+${url}.git#tag=v${pkgver}"
        "wutsk-calendar.nginx"
        "wutsk-calendar.service"
        "wutsk-calendar.confd"
)
sha256sums=('SKIP'
            'SKIP'
            'SKIP'
            'SKIP'
)

prepare() {
    cd "${srcdir}/${_npmname}"

    export NPM_CONFIG_CACHE="${srcdir}/${_npmname}/.npm_cache_wutsk_calendar"
    mkdir -p "${NPM_CONFIG_CACHE}"

    export npm_config_devdir="${srcdir}/${_npmname}/.node-gyp_cache"
    mkdir -p "${npm_config_devdir}"
}

build() {
    msg "Building WUT SK Calendar v${pkgver}..."
    cd "${srcdir}/${_npmname}"

    export NPM_CONFIG_CACHE="${srcdir}/${_npmname}/.npm_cache_wutsk_calendar"
    export npm_config_devdir="${srcdir}/${_npmname}/.node-gyp_cache"
    mkdir -p "${NPM_CONFIG_CACHE}"
    mkdir -p "${npm_config_devdir}"

    export NODE_ENV=production
    npm install --verbose --production=false

    npm run build --verbose
}

package() {
    msg "Packaging WUT SK Calendar..."
    cd "${srcdir}/${_npmname}"

    local app_install_dir="${pkgdir}/usr/share/${pkgname}"

    install -d "${app_install_dir}"
    cp -r .next public next.config.js package.json "${app_install_dir}/"

    msg "Installing production Node.js modules into package..."
    cd "${app_install_dir}"
    export NPM_CONFIG_CACHE="${srcdir}/${_npmname}/.npm_cache_wutsk_calendar"
    export npm_config_devdir="${srcdir}/${_npmname}/.node-gyp_cache"
    mkdir -p "${NPM_CONFIG_CACHE}"
    mkdir -p "${npm_config_devdir}"
    npm install --verbose --production


    install -d "${pkgdir}/etc/nginx/conf.d/"
    install -Dm644 "${srcdir}/wutsk-calendar.nginx" "${pkgdir}/etc/nginx/conf.d/${pkgname}.conf"

    install -d "${pkgdir}/usr/lib/systemd/system/"
    install -Dm644 "${srcdir}/wutsk-calendar.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}.service"

    install -d "${pkgdir}/etc/conf.d/"
    install -Dm644 "${srcdir}/wutsk-calendar.confd" "${pkgdir}/etc/conf.d/${pkgname}.example"

    install -d "${pkgdir}/var/log/${pkgname}"
}