Skip to content

Commit

Permalink
Merge pull request #5 from jurraca/just-the-docs-theme
Browse files Browse the repository at this point in the history
Use just-the-docs theme
  • Loading branch information
jurraca authored Aug 5, 2024
2 parents d888297 + ae4cf0d commit f379348
Show file tree
Hide file tree
Showing 16 changed files with 103 additions and 97 deletions.
7 changes: 4 additions & 3 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
source "https://rubygems.org"

gem "jekyll"
gem "jekyll-remote-theme"
gem "minima", git: 'https://github.com/jekyll/minima'
gem "jekyll-sass-converter"
gem "dartsass-ruby"
gem "just-the-docs"
gem "kramdown-parser-gfm"
112 changes: 61 additions & 51 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,95 +1,105 @@
GIT
remote: https://github.com/jekyll/minima
revision: 10124515953527c8990a2de99ae4ddb2a81ffee3
specs:
minima (3.0.0.dev)
jekyll (>= 3.5, < 5.0)
jekyll-feed (~> 0.9)
jekyll-seo-tag (~> 2.1)

GEM
remote: https://rubygems.org/
specs:
addressable (2.8.5)
public_suffix (>= 2.0.2, < 6.0)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
colorator (1.1.0)
concurrent-ruby (1.2.2)
concurrent-ruby (1.3.3)
dartsass-ruby (3.0.2)
sass-embedded (~> 1.54, < 1.67)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
eventmachine (1.2.7)
ffi (1.16.3)
ffi (1.17.0)
ffi (1.17.0-arm64-darwin)
ffi (1.17.0-x86_64-darwin)
ffi (1.17.0-x86_64-linux-gnu)
forwardable-extended (2.6.0)
google-protobuf (3.25.1-arm64-darwin)
google-protobuf (3.25.1-x86_64-linux)
google-protobuf (3.25.4)
google-protobuf (3.25.4-arm64-darwin)
google-protobuf (3.25.4-x86_64-darwin)
google-protobuf (3.25.4-x86_64-linux)
http_parser.rb (0.8.0)
i18n (1.14.1)
i18n (1.14.5)
concurrent-ruby (~> 1.0)
jekyll (4.3.2)
jekyll (3.9.5)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 1.0)
jekyll-sass-converter (>= 2.0, < 4.0)
i18n (>= 0.7, < 2)
jekyll-sass-converter (~> 1.0)
jekyll-watch (~> 2.0)
kramdown (~> 2.3, >= 2.3.1)
kramdown-parser-gfm (~> 1.0)
kramdown (>= 1.17, < 3)
liquid (~> 4.0)
mercenary (>= 0.3.6, < 0.5)
mercenary (~> 0.3.3)
pathutil (~> 0.9)
rouge (>= 3.0, < 5.0)
rouge (>= 1.7, < 4)
safe_yaml (~> 1.0)
terminal-table (>= 1.8, < 4.0)
webrick (~> 1.7)
jekyll-feed (0.17.0)
jekyll-include-cache (0.2.1)
jekyll (>= 3.7, < 5.0)
jekyll-remote-theme (0.4.3)
addressable (~> 2.0)
jekyll (>= 3.5, < 5.0)
jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0)
rubyzip (>= 1.3.0, < 3.0)
jekyll-sass-converter (3.0.0)
sass-embedded (~> 1.54)
jekyll-sass-converter (1.5.2)
sass (~> 3.4)
jekyll-seo-tag (2.8.0)
jekyll (>= 3.8, < 5.0)
jekyll-watch (2.2.1)
listen (~> 3.0)
just-the-docs (0.8.2)
jekyll (>= 3.8.5)
jekyll-include-cache
jekyll-seo-tag (>= 2.0)
rake (>= 12.3.1)
kramdown (2.4.0)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.4)
listen (3.8.0)
listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
mercenary (0.3.6)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (5.0.4)
public_suffix (5.1.1)
rake (13.2.1)
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
rb-inotify (0.11.1)
ffi (~> 1.0)
rexml (3.2.6)
rouge (4.2.0)
rubyzip (2.3.2)
rexml (3.3.4)
strscan
rouge (3.30.0)
safe_yaml (1.0.5)
sass-embedded (1.69.5-arm64-darwin)
sass (3.7.4)
sass-listen (~> 4.0.0)
sass-embedded (1.66.1)
google-protobuf (~> 3.23)
rake (>= 13.0.0)
sass-embedded (1.66.1-arm64-darwin)
google-protobuf (~> 3.23)
sass-embedded (1.66.1-x86_64-darwin)
google-protobuf (~> 3.23)
sass-embedded (1.69.5-x86_64-linux-gnu)
sass-embedded (1.66.1-x86_64-linux-gnu)
google-protobuf (~> 3.23)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
unicode-display_width (2.5.0)
webrick (1.8.1)
sass-listen (4.0.0)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
strscan (3.1.0)

PLATFORMS
arm64-darwin-22
aarch64-mingw-ucrt
arm64-darwin
ruby
x86-cygwin
x86-mingw-ucrt
x86_64-cygwin
x86_64-darwin
x86_64-linux

DEPENDENCIES
jekyll
jekyll-remote-theme
minima!
dartsass-ruby
jekyll-sass-converter
just-the-docs
kramdown-parser-gfm

BUNDLED WITH
2.5.11
2.5.9
11 changes: 5 additions & 6 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
title: ASMap.org
remote_theme: jekyll/minima
title: ASmap.org

plugins:
- jekyll-remote-theme
theme: just-the-docs

nav_enabled: true
heading_anchors: true

header_pages:
- background.md
Expand All @@ -12,5 +13,3 @@ header_pages:
- bitcoin-core.md
- contributing.md

minima:
skin: auto
2 changes: 0 additions & 2 deletions _layouts/base.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@

<body>

{%- include header.html -%}

<main class="page-content" aria-label="Content">
<div class="wrapper">
{{ content }}
Expand Down
2 changes: 1 addition & 1 deletion _layouts/home.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
layout: base
layout: default
---

<div class="home">
Expand Down
2 changes: 1 addition & 1 deletion _layouts/post.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
layout: base
layout: default
---
<article class="post h-entry" itemscope itemtype="http://schema.org/BlogPosting">

Expand Down
5 changes: 4 additions & 1 deletion background.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
---
layout: page
layout: default
title: Background
permalink: /background/
nav_order: 2
---

## AS, BGP, and Prior Work

The following is background information on Autonomous Systems (AS) and BGP, as well as prior art on ASmap.

The allocation of IP address space on the Internet begins with the Internet Assigned Numbers Authority (IANA), which allocates IP address ranges to a Regional Internet Registry (RIR). This RIR then assigns IP address ranges to an AS they control. They then announce to the world which AS controls which IP address range via the Border Gateway Protocol (BGP).
Expand Down
7 changes: 4 additions & 3 deletions bitcoin-core.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
---
layout: page
title: Bitcoin Core
layout: default
title: In Bitcoin Core
permalink: /bitcoin-core/
nav_order: 4
---

## Motivation
## ASmap in Bitcoin Core

Using an ASmap file in one's Bitcoin Core configuration is already strictly better than the default, and so we want to encourage usage of ASMap among users. However, currently the adoption of the ASMap feature must be assumed to be minimal, since doing so requires creating or procuring an ASMap file and then passing it as an option to the node during startup. Aside from the common wisdom that most users don't change the defaults, this is hindered further by the fact that there is no trusted way to provide ASMap files for download, and the tools available for creating an ASMap file are scattered across multiple projects.

Expand Down
3 changes: 2 additions & 1 deletion contributing.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
---
layout: page
layout: default
title: Contributing
permalink: /contributing/
nav_order: 7
---

A handful of changes are currently proposed in the Bitcoin Core project and need review. You can find them all linked in the [project tracking issue](https://github.com/bitcoin/bitcoin/issues/28794).
Expand Down
3 changes: 2 additions & 1 deletion data-sourcing.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
---
layout: page
layout: default
title: Sourcing Data
permalink: /sourcing-data/
nav_order: 4
---

The major challenge remaining for ASmap is to source and aggregate data about which AS owns which IP address range. Several entities, public and private, make BGP announcement data available. The following data sources represent the current state of research, and all remain incomplete or problematic in some way.
Expand Down
8 changes: 4 additions & 4 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 6 additions & 7 deletions flake.nix
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
{
description = "A very basic flake";
description = "ASmap website flake";

inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-24.05";
};

outputs = { self, nixpkgs }: let
outputs = { self, nixpkgs }: let
pkgs = import nixpkgs { system = "x86_64-linux"; };
rubypkgs = with pkgs.rubyPackages; [ jekyll-remote-theme jekyll-feed webrick ];
rubypkgs = with pkgs.rubyPackages; [ webrick ];
in {
devShells.x86_64-linux.default = pkgs.mkShell {
buildInputs = [ pkgs.jekyll ] ++ rubypkgs ;
};

buildInputs = [ pkgs.ruby pkgs.jekyll ] ++ rubypkgs ;
};
};
}
3 changes: 2 additions & 1 deletion glossary.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
---
layout: page
layout: default
title: Glossary
permalink: /glossary/
nav_order: 6
---


Expand Down
16 changes: 4 additions & 12 deletions index.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
layout: home
layout: default
title: Home
nav_order: 1
---

This website presents background and state of current research on ASMap development and usage.

## Introduction
## The ASmap Project

The ASMap project began in 2019 with the goal to help diversify a node's peerset and prevent reliance on too few Autonomous System (AS) entities. Various attacks have been described which can leverage weaknesses in peer discovery to partition a node from the broader network, for example in the case of an [eclipse attack](https://bitcoinops.org/en/topics/eclipse-attacks/). What we want is a map of IP addresses to the AS they belong to, so that we can ensure a node isn't hosting a number of peers under the control of a single AS entity, and thus raise the cost of an attacker successfully eclipsing our node from the broader network.

Expand All @@ -14,11 +14,3 @@ Since Core 20.0, users can pass their own (compressed) ASmap file to core, which

Generating the IP-to-AS map relies on data that must be sourced from best-effort public announcements in several places and parsed carefully to detect errors and misattributions. To learn more about the sourcing of this AS data, see [Sourcing Data](../data-sourcing.md).

Index:
- Background and Research
- [Background](../background)
- [Sourcing Data](../sourcing-data)
- [Tools and Resources](../tools-and-resources)
- [Contributing](../contributing.md)
- [In Bitcoin Core](../bitcoin-core.md)
- [Glossary](../glossary)
3 changes: 1 addition & 2 deletions resources.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
---
layout: page
title: Resources
layout: default
permalink: /resources/
---

Expand Down
3 changes: 2 additions & 1 deletion tools-and-resources.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
---
layout: page
layout: default
title: Tools and Resources
permalink: /tools-and-resources/
nav_order: 3
---

## Tools
Expand Down

0 comments on commit f379348

Please sign in to comment.