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
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
|
%global _empty_manifest_terminate_build 0
Name: python-publ
Version: 0.7.22
Release: 1
Summary: A flexible web-based publishing framework
License: MIT
URL: https://publ.plaidweb.site/
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/b3/06/4838bdef8bdd202a8c9f92139bfd1607a6fb3d78f04af354b28cab264358/publ-0.7.22.tar.gz
BuildArch: noarch
Requires: python3-authl
Requires: python3-misaka
Requires: python3-arrow
Requires: python3-atomicwrites
Requires: python3-awesome-slugify
Requires: python3-Flask
Requires: python3-Flask-Caching
Requires: python3-pony
Requires: python3-Pygments
Requires: python3-watchdog
Requires: python3-Whoosh
Requires: python3-Pillow
Requires: python3-pillow
Requires: python3-flask
%description
# Publ
A personal publishing platform. Like a static publishing system, only dynamic.
## Motivation
I make a lot of different things — comics, music, art, code, games — and none of
the existing content management systems I found quite satisfied my use cases.
Either they don't allow enough flexibility in the sorts of content that they can
provide, or the complexity in managing the content makes it more complicated than
simply hand-authoring a site.
I wanted to bring the best of the classic static web to a more dynamic
publishing system; scheduled posts, private posts, category-based templates, and
built-in support for image renditions (including thumbnails, high-DPI support,
and image galleries). And I want to do it all using simple Markdown files
organized in a sensible file hierarchy.
## Basic tenets
* Containerized web app that's deployable with little friction (hopefully)
* Do one thing (present heterogeneous content), do it well (hopefully)
* Use external tools for site content editing
* Be CDN-friendly
* High-DPI images and image sets as first-class citizens
* Interoperate with everything that's open for interoperation (especially [IndieWeb](http://indieweb.org))
## See it in action
The main demonstration site is at https://beesbuzz.biz/ — it is of course a
work in progress! The documentation site for Publ itself (which is also a work in progress) lives at https://publ.plaidweb.site/
## Operating requirements
I am designing this to work in any WSGI-capable environment with a supported
version of Python. This means that it will, for example, be deployable on any
shared hosting which has Passenger support (such as Dreamhost), as well as on
Heroku, Google AppEngine, S3, or any other simple containerized deployment
target.
The file system is the ground truth for all site data, and while it does use a
database as a content index, the actual choice of database doesn't matter all
that much. A typical deployment will use SQLite, but MySQL, Postgres, Oracle,
and Cockroach are also supported.
## Developing Publ
In order to develop Publ itself, you'll need to install its dependencies; see
the [getting started
guide](http://publ.plaidweb.site/manual/328-Getting-started) for more
information. In particular, make sure you have compatible versions of
[Python](https://python.org/) and [Poetry](https://python-poetry.org/)
installed, and, if on Windows, you'll probably need to install the [Visual C++
build tools](https://visualstudio.microsoft.com/downloads/).
As far as developing Publ itself goes, cloning this repository and running
`./runTests.sh` (Linux/macOS/etc.) or `wintests.cmd` (Windows) should get you up
and running. The runtime manual test suite site lives in `tests/` (with the
actual site content in `content/`, `templates/` and `static/`).
For developing CLI functionality, you'll have to override the `FLASK_APP`
environment variable to be `test_app.py`.
## Additional resources
The [Publ-site](https://github.com/PlaidWeb/Publ-site) repository stores all of
the templates, site content, and configuration for the [Publ
site](https://publ.plaidweb.site).
The
[Publ-templates-beesbuzz.biz](https://github.com/PlaidWeb/Publ-templates-beesbuzz.biz)
repository provides a stripped-down sample site based on [my personal
homepage](https://beesbuzz.biz).
## Authors
In order of first contribution:
* [fluffy](https://github.com/fluffy-critter)
* [karinassuni](https://github.com/karinassuni)
%package -n python3-publ
Summary: A flexible web-based publishing framework
Provides: python-publ
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-publ
# Publ
A personal publishing platform. Like a static publishing system, only dynamic.
## Motivation
I make a lot of different things — comics, music, art, code, games — and none of
the existing content management systems I found quite satisfied my use cases.
Either they don't allow enough flexibility in the sorts of content that they can
provide, or the complexity in managing the content makes it more complicated than
simply hand-authoring a site.
I wanted to bring the best of the classic static web to a more dynamic
publishing system; scheduled posts, private posts, category-based templates, and
built-in support for image renditions (including thumbnails, high-DPI support,
and image galleries). And I want to do it all using simple Markdown files
organized in a sensible file hierarchy.
## Basic tenets
* Containerized web app that's deployable with little friction (hopefully)
* Do one thing (present heterogeneous content), do it well (hopefully)
* Use external tools for site content editing
* Be CDN-friendly
* High-DPI images and image sets as first-class citizens
* Interoperate with everything that's open for interoperation (especially [IndieWeb](http://indieweb.org))
## See it in action
The main demonstration site is at https://beesbuzz.biz/ — it is of course a
work in progress! The documentation site for Publ itself (which is also a work in progress) lives at https://publ.plaidweb.site/
## Operating requirements
I am designing this to work in any WSGI-capable environment with a supported
version of Python. This means that it will, for example, be deployable on any
shared hosting which has Passenger support (such as Dreamhost), as well as on
Heroku, Google AppEngine, S3, or any other simple containerized deployment
target.
The file system is the ground truth for all site data, and while it does use a
database as a content index, the actual choice of database doesn't matter all
that much. A typical deployment will use SQLite, but MySQL, Postgres, Oracle,
and Cockroach are also supported.
## Developing Publ
In order to develop Publ itself, you'll need to install its dependencies; see
the [getting started
guide](http://publ.plaidweb.site/manual/328-Getting-started) for more
information. In particular, make sure you have compatible versions of
[Python](https://python.org/) and [Poetry](https://python-poetry.org/)
installed, and, if on Windows, you'll probably need to install the [Visual C++
build tools](https://visualstudio.microsoft.com/downloads/).
As far as developing Publ itself goes, cloning this repository and running
`./runTests.sh` (Linux/macOS/etc.) or `wintests.cmd` (Windows) should get you up
and running. The runtime manual test suite site lives in `tests/` (with the
actual site content in `content/`, `templates/` and `static/`).
For developing CLI functionality, you'll have to override the `FLASK_APP`
environment variable to be `test_app.py`.
## Additional resources
The [Publ-site](https://github.com/PlaidWeb/Publ-site) repository stores all of
the templates, site content, and configuration for the [Publ
site](https://publ.plaidweb.site).
The
[Publ-templates-beesbuzz.biz](https://github.com/PlaidWeb/Publ-templates-beesbuzz.biz)
repository provides a stripped-down sample site based on [my personal
homepage](https://beesbuzz.biz).
## Authors
In order of first contribution:
* [fluffy](https://github.com/fluffy-critter)
* [karinassuni](https://github.com/karinassuni)
%package help
Summary: Development documents and examples for publ
Provides: python3-publ-doc
%description help
# Publ
A personal publishing platform. Like a static publishing system, only dynamic.
## Motivation
I make a lot of different things — comics, music, art, code, games — and none of
the existing content management systems I found quite satisfied my use cases.
Either they don't allow enough flexibility in the sorts of content that they can
provide, or the complexity in managing the content makes it more complicated than
simply hand-authoring a site.
I wanted to bring the best of the classic static web to a more dynamic
publishing system; scheduled posts, private posts, category-based templates, and
built-in support for image renditions (including thumbnails, high-DPI support,
and image galleries). And I want to do it all using simple Markdown files
organized in a sensible file hierarchy.
## Basic tenets
* Containerized web app that's deployable with little friction (hopefully)
* Do one thing (present heterogeneous content), do it well (hopefully)
* Use external tools for site content editing
* Be CDN-friendly
* High-DPI images and image sets as first-class citizens
* Interoperate with everything that's open for interoperation (especially [IndieWeb](http://indieweb.org))
## See it in action
The main demonstration site is at https://beesbuzz.biz/ — it is of course a
work in progress! The documentation site for Publ itself (which is also a work in progress) lives at https://publ.plaidweb.site/
## Operating requirements
I am designing this to work in any WSGI-capable environment with a supported
version of Python. This means that it will, for example, be deployable on any
shared hosting which has Passenger support (such as Dreamhost), as well as on
Heroku, Google AppEngine, S3, or any other simple containerized deployment
target.
The file system is the ground truth for all site data, and while it does use a
database as a content index, the actual choice of database doesn't matter all
that much. A typical deployment will use SQLite, but MySQL, Postgres, Oracle,
and Cockroach are also supported.
## Developing Publ
In order to develop Publ itself, you'll need to install its dependencies; see
the [getting started
guide](http://publ.plaidweb.site/manual/328-Getting-started) for more
information. In particular, make sure you have compatible versions of
[Python](https://python.org/) and [Poetry](https://python-poetry.org/)
installed, and, if on Windows, you'll probably need to install the [Visual C++
build tools](https://visualstudio.microsoft.com/downloads/).
As far as developing Publ itself goes, cloning this repository and running
`./runTests.sh` (Linux/macOS/etc.) or `wintests.cmd` (Windows) should get you up
and running. The runtime manual test suite site lives in `tests/` (with the
actual site content in `content/`, `templates/` and `static/`).
For developing CLI functionality, you'll have to override the `FLASK_APP`
environment variable to be `test_app.py`.
## Additional resources
The [Publ-site](https://github.com/PlaidWeb/Publ-site) repository stores all of
the templates, site content, and configuration for the [Publ
site](https://publ.plaidweb.site).
The
[Publ-templates-beesbuzz.biz](https://github.com/PlaidWeb/Publ-templates-beesbuzz.biz)
repository provides a stripped-down sample site based on [my personal
homepage](https://beesbuzz.biz).
## Authors
In order of first contribution:
* [fluffy](https://github.com/fluffy-critter)
* [karinassuni](https://github.com/karinassuni)
%prep
%autosetup -n publ-0.7.22
%build
%py3_build
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-publ -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.7.22-1
- Package Spec generated
|