From 2f64af811e67dfc5fc2350ce1c3903323a89f6f5 Mon Sep 17 00:00:00 2001 From: Philipp Oppermann Date: Sat, 24 Oct 2015 14:53:48 +0200 Subject: [PATCH] Switch to `none` permalinks and setup redirects --- _config.yml | 8 +++++--- _posts/2015-08-18-multiboot-kernel.md | 1 + _posts/2015-08-25-entering-longmode.md | 1 + _posts/2015-09-02-setup-rust.md | 1 + _posts/2015-10-23-printing-to-screen.md | 1 + archive.md | 1 + contact.md | 1 + 7 files changed, 11 insertions(+), 3 deletions(-) diff --git a/_config.yml b/_config.yml index a911833b..65329344 100644 --- a/_config.yml +++ b/_config.yml @@ -1,7 +1,7 @@ # Permalinks # # Use of `relative_permalinks` ensures post links from the index work properly. -permalink: pretty +permalink: none relative_permalinks: true # Setup @@ -34,7 +34,9 @@ github: # Navigation navigation_pages: - Archive: '/archive' + Archive: '/archive.html' -contact: '/contact' +contact: '/contact.html' +gems: + - jekyll-redirect-from diff --git a/_posts/2015-08-18-multiboot-kernel.md b/_posts/2015-08-18-multiboot-kernel.md index 333d1c3e..96c4e2e9 100644 --- a/_posts/2015-08-18-multiboot-kernel.md +++ b/_posts/2015-08-18-multiboot-kernel.md @@ -2,6 +2,7 @@ layout: post title: 'A minimal x86 kernel' category: 'rust-os' +redirect_from: '/rust-os/2015/08/18/multiboot-kernel/' --- This post explains how to create a minimal x86 operating system kernel. In fact, it will just boot and print `OK` to the screen. The following blog posts we will extend it using the [Rust] programming language. diff --git a/_posts/2015-08-25-entering-longmode.md b/_posts/2015-08-25-entering-longmode.md index 3e627f01..fd42de68 100644 --- a/_posts/2015-08-25-entering-longmode.md +++ b/_posts/2015-08-25-entering-longmode.md @@ -2,6 +2,7 @@ layout: post title: 'Entering Long Mode' category: 'rust-os' +redirect_from: "/rust-os/2015/08/25/entering-longmode/" --- In the [previous post] we created a minimal multiboot kernel. It just prints `OK` and hangs. The goal is to extend it and call 64-bit [Rust] code. But the CPU is currently in [protected mode] and allows only 32-bit instructions and up to 4GiB memory. So we need to setup _Paging_ and switch to the 64-bit [long mode] first. diff --git a/_posts/2015-09-02-setup-rust.md b/_posts/2015-09-02-setup-rust.md index cff58440..b4731be0 100644 --- a/_posts/2015-09-02-setup-rust.md +++ b/_posts/2015-09-02-setup-rust.md @@ -2,6 +2,7 @@ layout: post title: 'Setup Rust' category: 'rust-os' +redirect_from: "/rust-os/2015/09/02/setup-rust/" --- In the previous posts we created a [minimal Multiboot kernel][multiboot post] and [switched to Long Mode][long mode post]. Now we can finally switch to [Rust] code. Rust is a high-level language without runtime. It allows us to not link the standard library and write bare metal code. Unfortunately the setup is not quite hassle-free yet. diff --git a/_posts/2015-10-23-printing-to-screen.md b/_posts/2015-10-23-printing-to-screen.md index 8b631bbd..100aa0eb 100644 --- a/_posts/2015-10-23-printing-to-screen.md +++ b/_posts/2015-10-23-printing-to-screen.md @@ -2,6 +2,7 @@ layout: post title: 'Printing to Screen' category: 'rust-os' +redirect_from: "/rust-os/2015/10/23/printing-to-screen/" --- In the [previous post] we switched from assembly to [Rust], a systems programming language that provides great safety. But so far we are using unsafe features like [raw pointers] whenever we want to print to screen. In this post we will create a Rust module that provides a safe and easy-to-use interface for the VGA text buffer. It will support Rust's [formatting macros], too. diff --git a/archive.md b/archive.md index 4584e07f..7f74ee71 100644 --- a/archive.md +++ b/archive.md @@ -1,6 +1,7 @@ --- layout: page title: Archive +redirect_from: "/archive/" --- ## Blog Posts diff --git a/contact.md b/contact.md index cd901863..92205f19 100644 --- a/contact.md +++ b/contact.md @@ -1,6 +1,7 @@ --- layout: page title: Contact +redirect_from: "/contact/" --- Philipp Oppermann