From 4ba7beb7b9f0f001b752eff2a2be3a7f32035255 Mon Sep 17 00:00:00 2001 From: Wolfgang Wiedmeyer Date: Mon, 9 Jan 2017 22:59:58 +0100 Subject: bundle hosting, nonfree firmware, setup: typo fixes --- content/git-bundle-hosting.rst | 2 +- content/nonfree-firmware-android.rst | 2 +- content/pages/setup.rst | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/content/git-bundle-hosting.rst b/content/git-bundle-hosting.rst index 7505836..2431c46 100644 --- a/content/git-bundle-hosting.rst +++ b/content/git-bundle-hosting.rst @@ -6,7 +6,7 @@ :status: published :summary: Cloning large repositories can result in quite some load on the server side. A possible solution is the use of bundles. Git can package a certain revision in an archive. The client can fetch the bundle and set up a clone locally based on the bundle. -Cloning large repositories can result in quite some load on the server side. Depending on the server specs, the server may run out of RAM or the CPU load goes way up. In my case, the limiting factor is the CPU. Too much load can even result in fatal errors that make it impossible to freshly clone a repository. +Cloning large repositories can result in quite some load on the server side. Depending on the server specs, the server may run out of RAM or the CPU load increases heavily. In my case, the limiting factor is the CPU. Too much load can even result in fatal errors that make it impossible to freshly clone a repository. A possible solution is the use of bundles. Git can package a certain revision in an archive. The client can fetch the bundle and set up a clone locally based on the bundle. The `Git documentation `_ describes how this works. The server then has the only task of serving the bundle which takes almost no load. When the client has set up the clone with the bundle, subsequent pull or fetch requests will take a lot less server load because the server only needs to handle the diff between the revision archived in the bundle and the revision that currently gets fetched. diff --git a/content/nonfree-firmware-android.rst b/content/nonfree-firmware-android.rst index 5603408..36d8506 100644 --- a/content/nonfree-firmware-android.rst +++ b/content/nonfree-firmware-android.rst @@ -8,7 +8,7 @@ The following instructions make it possible to install nonfree firmware on Android devices for the purpose of enabling certain functionalities. For now, only the Galaxy S3 (GT-I9300) is supported, but support for other devices can be added easily. Please see `Paul's blog post `_ for the reasons why these instructions shouldn't be published on official documentation pages of free systems, but why it still makes sense to publish them elsewhere. -Paul's script is compatible with CyanogenMod version 10.1.3 and 9.1.0. It extracts the firmwares from a CyanogenMod installation zip and either installs them with ADB or creates an installation zip with them. My implementation is intended to be compatible with CyanogenMod 13.0. It's possible to only select a certain functionality for which the firmwares should be installed. The firmwares are downloaded from a `repository `_, that hosts the firmware files for CyanogenMod builds, and they are installed with ADB. It's impractical to extract them from a CyanogenMod 13.0 installation zip because recent Android versions use complicated compression techniques that require tools which are usually not readily available as packages for GNU/Linux systems. Creating installation zips is also not easy anymore because the zip needs to be signed with a key that is trusted by the recovery. If your recovery stills just accepts any installation zip, then you are using an insecure recovery. +Paul's script is compatible with CyanogenMod version 10.1.3 and 9.1.0. It extracts the firmwares from a CyanogenMod installation zip and either installs them with ADB or creates an installation zip with them. My implementation is intended to be compatible with CyanogenMod 13.0. It's possible to only select a certain functionality for which the firmwares should be installed. The firmwares are downloaded from a `repository `_, that hosts the firmware files for CyanogenMod builds, and they are installed with ADB. It's impractical to extract them from a CyanogenMod 13.0 installation zip because recent Android versions use complicated compression techniques that require tools which are usually not readily available as packages for GNU/Linux systems. Creating installation zips is also not easy anymore because the zip needs to be signed with a key that is trusted by the recovery. If your recovery still just accepts any installation zip, then you are using an insecure recovery. Make sure that you have ADB and root access with ADB enabled. These steps are required: diff --git a/content/pages/setup.rst b/content/pages/setup.rst index 2ad5fb1..ecd9202 100644 --- a/content/pages/setup.rst +++ b/content/pages/setup.rst @@ -7,11 +7,11 @@ I'm always interested in what tools others are using to get their work done. On Hardware ######## -My laptop is a Thinkpad Edge E530. I was lucky to get it quite cheaply without Windows preinstalled. I like about it that it did not yet fail on me over the last years. I replaced the crappy hard disk with a SSD to get some performance out of the otherwise not very powerful laptop. The screen is not that good, but the fact that it's a matte screen makes it quite usable in the sunlight. I removed the camera and microphone. `This guide `_ was quite helpful for that, although it's actually for replacing the screen. However, the same steps make it possible to access the camera and microphone module above the screen. +My laptop is a Thinkpad Edge E530. I was lucky to get it quite cheaply without Windows preinstalled. I like about it that it did not yet fail over the last years. I replaced the crappy hard disk with a SSD to get some performance out of the otherwise not very powerful laptop. The screen is not that good, but the fact that it's a matte screen makes it quite usable in the sunlight. I removed the camera and microphone. `This guide `_ was quite helpful for that, although it's actually for replacing the screen. However, the same steps make it possible to access the camera and microphone module above the screen. I built my own PC after I had finished school and I still use it today. The CPU is an Intel Core i7-860 and runs overclocked at 3.4 GHz which is still enough for my performance needs. The processor is perfectly cooled by a `Scythe Mugen 2 Rev.B `_ which is not only really huge but also very quiet. I added 8 GB of RAM and the motherboard is a `MSI P55-GD65 `_. I can't really say something positive about the motherboard as it made quite some issues over the years. The only bad purchase besides the motherboard was the GPU. I managed to buy a variant of the Nvidia GeForce GTS 250 from EVGA that has the fan always running at 100%. To keep the noise down, I replaced the fan with an `Alpenföhn Klara `_. The power supply is from `bequiet! `_ and everything is kept inside a nice Aluminium case from Lian Li that also has a side panel window. The only issue is the sometimes oscillating and thus noisy side panel. -For personal data and services for family and friends, I use a HP ProLiant MicroServer N54L as a home server. It is equipped with two 1 TB disks. A TP-Link TL-WDR4300 serves as router with an Allnet ALL0333CJ as modem. This blog and other public stuff is hosted on a `VPS `_ which uses `KVM `_. I'm planning to move from the VPS to another home server as soon as I can get hold on a fast internet connection that is separate from the one the MicroServer is connected to. I'd like to keep the two servers completely separate from each other so I can use them as backups for each other. +For personal data and services for family and friends, I use a HP ProLiant MicroServer N54L as a home server. It is equipped with two 1 TB disks. A TP-Link TL-WDR4300 serves as router with an Allnet ALL0333CJ as modem. This blog and other public stuff is hosted on a `VPS `_ which uses `KVM `_. I'm planning to move from the VPS to another home server as soon as I have access to a fast internet connection that is separate from the one the MicroServer is connected to. I'd like to keep the two servers completely separate from each other so I can use them as backups for each other. Furthermore, I own two Samsung Galaxy S III phones. One of them is my daily driver and I use the other one for development work on `Replicant `_. @@ -21,7 +21,7 @@ Software Freedom/security aspects and the operating systems I use -------------------------------------------------------- -`I try to use as much free software as possible <{filename}/why_free_software.rst>`_. Unfortunately, we are not yet at the point when we can buy almost any kind of hardware as use it exclusively with free software. My laptop and PC work fine with the free graphics drivers for Intel and Nvidia chips. On the operating system level, I don't depend on nonfree software in the case of the PC, home server and router. However, the laptop needs a nonfree firmware to make the Intel Wireless card work. +`I try to use as much free software as possible <{filename}/why_free_software.rst>`_. Unfortunately, we are not yet at the point where we can buy almost any kind of hardware and use it exclusively with free software. My laptop and PC work fine with the free graphics drivers for Intel and Nvidia chips. On the operating system level, I don't depend on nonfree software in the case of the PC, home server and router. However, the laptop needs a nonfree firmware to make the Intel Wireless card work. My PC, laptop and home server need proprietary hardware initialization software. There isn't a free `BIOS `_ replacement available yet. I'd like to use hardware that is supported by `Libreboot `_ or at least supported by `Coreboot `_. The `Libreboot website `_ explains why it's important that free software boots up your system. It also sums up why security and privacy is only possible on `Intel `_ and `AMD `_ hardware that is several years old. @@ -30,7 +30,7 @@ My PC, laptop and home server need proprietary hardware initialization software. Unfortunately, my two phones also need proprietary initialization software. The bootloaders are not even replaceable because the hardware only runs bootloaders that are signed by the manufacturer. `There is also a second nonfree operating system running on the modem and various chips need proprietary firmwares for which there are no free replacements yet `_. The `Replicant website `_ explains why these issues need our attention. The graphics chip and GPS even need proprietary drivers that run on the main CPU. I use a QSTARZ BT-Q818XT as external GPS receiver over Bluetooth. It is quite accurate, has a long battery life and works nicely with my updated `BlueGPS `_ app version. I don't use any proprietary drivers or other software that runs on the main CPU of the phone, but I use some proprietary firmware to get different functionality working. -The two servers, the PC and the laptop are running `Debian Stable `_. I tried many different `distributions `_, but I always came back to Debian. It has a huge community, focuses on free software and is just stable and secure. The router is running `Openwrt `_. `Replicant 6.0 `_ powers the phones. +The two servers, the PC and the laptop are running `Debian Stable `_. I tried many different `distributions `_, but I always came back to Debian. It has a huge community, focuses on free software and is stable and secure. The router is running `Openwrt `_. `Replicant 6.0 `_ powers the phones. I use various tools to make my desktops and servers more secure and to reduce the maintenance burden. For example, I make heavy use of AppArmor to confine critical or Internet-facing applications. `Here `_ are some of my customized profiles. My kernels are hardened with `grsecurity `_ including PaX. -- cgit v1.1