Merge branch 'master' of git+ssh://code.ungleich.ch/ungleich-public/ungleich-staticcms
This commit is contained in:
commit
c9db8c3e6f
10 changed files with 153 additions and 7 deletions
|
@ -8,3 +8,16 @@ There is not much here - everything is stored below /u/.
|
|||
You should actually not be able to see this page below ungleich.ch. If
|
||||
you do, please let us know.
|
||||
---
|
||||
slider:
|
||||
|
||||
title:
|
||||
|
||||
description:
|
||||
|
||||
button_text:
|
||||
|
||||
button_link:
|
||||
|
||||
background_image:
|
||||
|
||||
video_mp4:
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
title: Emacs, be my server
|
||||
title: Emacs server the fun way
|
||||
---
|
||||
pub_date: 2020-04-23
|
||||
---
|
||||
|
@ -57,13 +57,13 @@ much faster is the obvious advantage. However, there is a much bigger
|
|||
one:
|
||||
|
||||
With the emacs server, you can connect to it from the terminal **and** X
|
||||
Windows. Because the emacs server also manages the buffers ("open
|
||||
Window. Because the emacs server also manages the buffers ("open
|
||||
files" for non-emacs users), you can view the same open file from the
|
||||
terminal or an x window.
|
||||
|
||||
## Turning the notebook into a server
|
||||
|
||||
As you might now, we at ungleich are pretty much into IPv6. So all of
|
||||
As you might know, we at ungleich are pretty much into IPv6. So all of
|
||||
our devices are generally speaking world-wide reachable. Our work
|
||||
notebooks are no exception from that. In fact, most notebooks even
|
||||
have their own [/48 IPv6 network assigned via
|
||||
|
@ -118,3 +118,26 @@ window is the X11 window, the lower window is a terminal window (they
|
|||
happen to be configured to have the same nice background colour).
|
||||
|
||||
![](emacs.png)
|
||||
|
||||
|
||||
## Updates
|
||||
|
||||
### 2020-04-23, 17:23
|
||||
|
||||
[MutoShack](https://www.reddit.com/user/MutoShack/) pointed
|
||||
out on
|
||||
[reddit](https://www.reddit.com/r/emacs/comments/g6nqwv/emacs_server_the_fun_way/foazghz/)
|
||||
that using
|
||||
|
||||
```
|
||||
emacsclient -a "" -c
|
||||
```
|
||||
|
||||
is actually smarter than just using
|
||||
|
||||
```
|
||||
emacsclient -c
|
||||
```,
|
||||
|
||||
because it will start the daemon if it is not already running. No day
|
||||
that you don't learn something!
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
_discoverable: no
|
||||
_discoverable: yes
|
||||
---
|
||||
_hidden: no
|
||||
---
|
||||
|
@ -6,3 +6,48 @@ title: BGP Peering
|
|||
---
|
||||
subtitle: Manage your own address space
|
||||
---
|
||||
---
|
||||
headline1: BGP Peering
|
||||
---
|
||||
headline2: Your own IP Space
|
||||
---
|
||||
headline3: At Data Center Light
|
||||
---
|
||||
header_background_color: #6298CB
|
||||
---
|
||||
header_text_color: text-light
|
||||
---
|
||||
content1_text:
|
||||
|
||||
## For whom is BGP peering?
|
||||
|
||||
If you have your own ASN with IPv6 or IPv4 address space, you can
|
||||
announce it in our data centers.
|
||||
|
||||
## What is required for BGP peering
|
||||
|
||||
To be able to peer with us, you will need to have IP addresses in our
|
||||
data center. This is the case if you have one of these products:
|
||||
|
||||
* [A Data Center Light VM](../virtual-machine-hosting/)
|
||||
* [An IPv6 Only VM](../ipv6-only-hosting/)
|
||||
* [Physical co-located hardware](../colocation/)
|
||||
|
||||
## How to setup BGP peering
|
||||
|
||||
Send a mail to support -at- ungleich.ch containing the following
|
||||
information:
|
||||
|
||||
* Your ASN and the list of networks you intend to announce
|
||||
* Your local IP addresses
|
||||
|
||||
Before we can peer, ensure that all objects in the RIPE database are
|
||||
setup correctly. Specifically ensure that you have
|
||||
|
||||
* route6 / route objects
|
||||
* inet6num / inetnum objects
|
||||
* ROA / RPKI configured
|
||||
|
||||
## Pricing
|
||||
|
||||
Setting up peering has a 42 CHF one time fee.
|
||||
|
|
|
@ -22,7 +22,7 @@ If you already have a matrix account, you can join
|
|||
|
||||
If you don't have a matrix account, you find the instructions
|
||||
on [how to create a matrix account on our Open Chat
|
||||
page](../open-chat).
|
||||
page](/u/projects/open-chat/).
|
||||
|
||||
## Other chat rooms
|
||||
|
||||
|
|
|
@ -2,6 +2,8 @@ title: This.week.via-IPv6.com
|
|||
---
|
||||
subtitle: What happens in a week with IPv6?
|
||||
---
|
||||
_discoverable: no
|
||||
---
|
||||
content:
|
||||
|
||||
To be able to track what is going on in the IPv6 world, we created a
|
||||
|
|
29
content/u/projects/ubookmark/contents.lr
Normal file
29
content/u/projects/ubookmark/contents.lr
Normal file
|
@ -0,0 +1,29 @@
|
|||
title: ubookmark
|
||||
---
|
||||
subtitle:
|
||||
ubookmark is a simple link collecting website.
|
||||
---
|
||||
content:
|
||||
|
||||
## Introduction
|
||||
|
||||
ubookmark is based on Django, Bootstrap 4
|
||||
and uses LDAP authentication. It was written and designed for
|
||||
running [IPv6.blog](https://IPv6.blog), but should be re-usable in
|
||||
other situations.
|
||||
|
||||
ubookmark is FOSS and its source code can be found on
|
||||
[code.ungleich.ch](https://code.ungleich.ch/ungleich-public/ubookmark/).
|
||||
|
||||
## How to install
|
||||
|
||||
* git clone above repository
|
||||
* Setup a local postgresql database named "ubookmark"
|
||||
* Copy ubookmark/sample_settings.py to ubookmark/local_settings.py
|
||||
* Modify settings as needed
|
||||
* Install requirements using `pip install -r requirements.txt`
|
||||
|
||||
## How to run
|
||||
|
||||
It is a standard Django app, so you can use uwsgi
|
||||
or the included server for testing: `python manage.py runserver`.
|
|
@ -17,3 +17,7 @@ type = markdown
|
|||
[fields.image]
|
||||
label = Image
|
||||
type = url
|
||||
|
||||
[fields.slider]
|
||||
type = flow
|
||||
flow_blocks = slider
|
||||
|
|
3
templates/blocks/slider.html
Normal file
3
templates/blocks/slider.html
Normal file
|
@ -0,0 +1,3 @@
|
|||
<div class="text-block text-block-{{ this.class }}">
|
||||
{{ this.text }}
|
||||
</div>
|
|
@ -99,6 +99,12 @@
|
|||
</form>
|
||||
</div>
|
||||
</nav>
|
||||
{# Priority:
|
||||
If slider given, take slider.
|
||||
If headline1/2/3 given, take the headline.
|
||||
Else default to boxed title + subtitle
|
||||
#}
|
||||
|
||||
{% if this.headline1 or this.headline2 or this.headline3 %}
|
||||
<div class="jumbotron jumbotron-fluid" style="background-color: {{this.header_background_color}};">
|
||||
<div class="container-fluid">
|
||||
|
|
|
@ -6,6 +6,22 @@
|
|||
|
||||
<div class="container">
|
||||
{% for childpage in this.children %}
|
||||
|
||||
{# Setup default settings for the overview #}
|
||||
|
||||
{% if childpage.header_background_color %}
|
||||
{% set div_style = 'background-color:' + childpage.header_background_color + ';' %}
|
||||
{% else %}
|
||||
{% set div_style = 'background-color: #6FB0E5;' %}
|
||||
{% endif %}
|
||||
|
||||
{% if childpage.header_text_color %}
|
||||
{% set div_classes = childpage.header_text_color %}
|
||||
{% else %}
|
||||
{% set div_classes = 'text-light' %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% if loop.first %}
|
||||
<div class="row mb-3">
|
||||
{% endif %}
|
||||
|
@ -16,8 +32,13 @@
|
|||
<img class="card-img-top" src="{{ childpage.image }}"
|
||||
alt="{{ childpage.title }}">
|
||||
{% else %}
|
||||
<img class="card-img-top" src="/u/image/cards/placeholder.jpg"
|
||||
alt="{{ childpage.title }}">
|
||||
<div style="{{ div_style }} font-weight: bold; padding-left:
|
||||
12px; padding-right: 6px; text-transform: uppercase;"
|
||||
class="{{ div_classes }} display-4">
|
||||
<br/>
|
||||
{{ childpage.title }}<sup style="font-weight: normal;">≠</sup><br/>
|
||||
<br/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</a>
|
||||
<div class="card-body">
|
||||
|
|
Loading…
Reference in a new issue