summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 72fa5b160977b3de369807a404b577598d796eef (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
# MAINTAINER: Noble Eugene <nobleeugene2005@gmail.com>
# https://www.github.com/eugenenoble2005/avalonia-ls.git

pkgname="avalonia-ls-git"
pkgver=1.02
pkgrel=1
pkgdesc="Standalone LSP for Avalonia Projects. Plus XamlStyler for formatting."
arch=(any)
makedepends=("dotnet-sdk" "git")
depends=("dotnet-runtime")
url="https://www.github.com/eugenenoble2005/avalonia-ls"
source=("git+https://github.com/eugenenoble2005/avalonia-ls")
sha256sums=("SKIP")

prepare(){
	cd $srcdir/avalonia-ls
	git submodule update --init
}
package(){
	cd $srcdir/avalonia-ls
    mkdir -p bin/lsp
    #I have to build with one CPU core here because Arch Linux is retarded and keeps killing the process
    dotnet build src/AvaloniaLSP/AvaloniaLanguageServer --output bin/lsp -m:1
     
    mkdir -p bin/solution-parser
    dotnet build src/SolutionParser/SolutionParser.csproj --output bin/solution-parser

    mkdir -p bin/xaml-styler
    dotnet build src/XamlStyler/src/XamlStyler.Console/XamlStyler.Console.csproj --output bin/xaml-styler

    mkdir -p bin/avalonia-preview
    dotnet build src/AvaloniaPreview --output bin/avalonia-preview  -m:1

    install -d -m 755 "$pkgdir/usr/lib/avalonia-ls" && cp -r bin/* "$pkgdir/usr/lib/avalonia-ls"
    
    install -d -m 755 "$pkgdir/usr/bin"
    echo -e "#!/bin/bash\n exec /usr/lib/avalonia-ls/xaml-styler/xstyler \"\$@\"" > $pkgdir/usr/bin/xaml-styler
    chmod +x $pkgdir/usr/bin/xaml-styler

    echo -e "#!/bin/bash\n exec /usr/lib/avalonia-ls/lsp/AvaloniaLanguageServer \"\$@\"" > $pkgdir/usr/bin/avalonia-ls
    chmod +x $pkgdir/usr/bin/avalonia-ls
    
    echo -e "#!/bin/bash\n exec /usr/lib/avalonia-ls/solution-parser/SolutionParser \"\$@\"" > $pkgdir/usr/bin/avalonia-solution-parser
    chmod +x $pkgdir/usr/bin/avalonia-solution-parser
    
    echo -e "#!/bin/bash\n exec /usr/lib/avalonia-ls/avalonia-preview/AvaloniaPreview \"\$@\"" > $pkgdir/usr/bin/avalonia-preview
    chmod +x $pkgdir/usr/bin/avalonia-preview

}