0xGA: Check-in [19fd48004e]

Yet another PHP framework, but made for org-mode and geeks.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:New installer version
Timelines: family | ancestors | descendants | both | narv
Files: files | file ages | folders
SHA1:19fd48004e9eb63c1eca6e3d6bcf82ed72de3c91
User & Date: milouse 2014-05-04 21:20:41
Context
2014-05-07
00:47
Add interruption mechanism to narv.py to allow devs to add custom actions to their apps check-in: 3f38ad2fef user: milouse tags: narv
2014-05-04
21:20
New installer version check-in: 19fd48004e user: milouse tags: narv
17:05
Update the doc check-in: 0fd14e3ac6 user: milouse tags: narv
Changes

Changes to README.md.

13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
..
51
52
53
54
55
56
57
58
59
60
61
62
63
------------

The code is released under the terms of the [WTFPL v2](http://sam.zoy.org/wtfpl/). Feel free to submit [new tickets or bug reports](tktnew) or share [proposals](tktnew?type=Feature_Request&severity=Cosmetic).

Install
-------

It is as simple as the following command: `wget -O narv_install.sh http://projects.depar.is/0xGA/raw/narv_install.sh?name=f41e25da5531fa0b9d213836ed23b4dc6f29e341 && bash narv_install.sh`

It require the following commands to be present on your system:

- base64
- gzip
- install
- wget
................................................................................

Note for myself or other people using the [Hiawatha Webserver](https://www.hiawatha-webserver.org/),
here is an example of reverse proxy config to access your narv
application without abandonning all your other applications.

    VirtualHost {
        Hostname = etienne.loc
        AllowDotFiles = yes 
        WebsiteRoot = /dev/null
        ReverseProxy .* http://localhost:8000 15
        PreventXSS = yes
    }








|







 







|




<
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
..
51
52
53
54
55
56
57
58
59
60
61
62

------------

The code is released under the terms of the [WTFPL v2](http://sam.zoy.org/wtfpl/). Feel free to submit [new tickets or bug reports](tktnew) or share [proposals](tktnew?type=Feature_Request&severity=Cosmetic).

Install
-------

It is as simple as the following command: `wget -O narv_install.sh http://projects.depar.is/0xGA/raw/narv_install.sh?name=604bfbadcc && bash narv_install.sh`

It require the following commands to be present on your system:

- base64
- gzip
- install
- wget
................................................................................

Note for myself or other people using the [Hiawatha Webserver](https://www.hiawatha-webserver.org/),
here is an example of reverse proxy config to access your narv
application without abandonning all your other applications.

    VirtualHost {
        Hostname = etienne.loc
        AllowDotFiles = yes
        WebsiteRoot = /dev/null
        ReverseProxy .* http://localhost:8000 15
        PreventXSS = yes
    }

Changes to narv_install.sh.

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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135



136
137
138
139
140
141
142
143
#!/usr/bin/env bash

PAYLOAD="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



AAA="

WORKINGREP=`realpath ./narvroot`

echo "$PAYLOAD" | base64 -d > narv.tar.gz
tar xzf narv.tar.gz
rm narv.tar.gz
gzip -d narv.gz narv.py.gz


|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
>
>
>
|







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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
#!/usr/bin/env bash

PAYLOAD="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
/wAquUz4ACgAAA=="

WORKINGREP=`realpath ./narvroot`

echo "$PAYLOAD" | base64 -d > narv.tar.gz
tar xzf narv.tar.gz
rm narv.tar.gz
gzip -d narv.gz narv.py.gz