2021-04-25 23:02:12 +00:00
|
|
|
|
---
|
|
|
|
|
title: tank
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
A Lenovo ThinkPad X201 Tablet. My first ever ThinkPad, a very useful tool for
|
|
|
|
|
my studies. It has been my daily driver, on and off, for over a year and a
|
|
|
|
|
half in total. I really like it when I compute on the go, especially on
|
|
|
|
|
trains or on mountains (not to be confused with [mountain](./mountain.html)).
|
|
|
|
|
I now try to bring it with me and use it wherever, just to add to the list on
|
|
|
|
|
this page.
|
|
|
|
|
|
2024-02-25 17:14:44 +00:00
|
|
|
|
![tank in tablet mode, used to browse a PostgreSQL database while standing in a square](img/tank.jpg)
|
|
|
|
|
|
2021-04-25 23:02:12 +00:00
|
|
|
|
## Specifications
|
|
|
|
|
|
2024-02-02 19:30:48 +00:00
|
|
|
|
* Birth date: 2011-03-13
|
|
|
|
|
* Bought second-hand, received on 2017-07-28
|
2021-04-25 23:02:12 +00:00
|
|
|
|
* Product ID: 45N4955
|
2024-02-02 19:30:48 +00:00
|
|
|
|
* Machine type: 3113
|
|
|
|
|
* Serial: R9C12M0
|
2021-04-25 23:02:12 +00:00
|
|
|
|
* Core i5-520UM
|
|
|
|
|
* Intel HD Graphics
|
|
|
|
|
* 12.1" 1280×800 (WXGA) TFT display
|
|
|
|
|
* Wacom Serial Penabled Pen
|
|
|
|
|
* 8GB PC3-8500 RAM
|
|
|
|
|
* SanDisk SSD PLUS 240GB 19136F805340
|
|
|
|
|
* Ricoh 5-in-1 Multicard Reader
|
|
|
|
|
* Intel 10/100/1000 Ethernet
|
|
|
|
|
* Intel HD audio with CX20585 codec
|
|
|
|
|
* ThinkPad Modem (MDC-3.0, 56kbps HDA)
|
|
|
|
|
* 2 MiniPCI Express slots:
|
|
|
|
|
* Intel Centrino Advanced-N 6200 Wi-Fi card
|
|
|
|
|
* Qualcomm Gobi 2000 3G and GPS card, Verizon-locked
|
|
|
|
|
* ExpressCard/54 slot
|
|
|
|
|
* 2MP webcam
|
|
|
|
|
* UPEK Touchstrip TCRD4C fingerprint reader
|
|
|
|
|
* Broadcom BCM2046 Bluetooth Controller
|
|
|
|
|
* TPM 1.2 embedded security system
|
|
|
|
|
* HDAPS support
|
|
|
|
|
* UltraNav trackpoint
|
|
|
|
|
* Intel Active Management Technology 6.x
|
|
|
|
|
|
|
|
|
|
## Places it went to
|
|
|
|
|
|
|
|
|
|
Just taking it with me without doing anything does not count; I have to turn
|
|
|
|
|
it on and use it for a place to enter this list. This list is unordered.
|
|
|
|
|
I sometimes add some fun things I did in each place, when I remember them.
|
|
|
|
|
|
|
|
|
|
* Grenoble
|
|
|
|
|
* My student room
|
|
|
|
|
* Daily driver for a year
|
|
|
|
|
* Helped set up [Carthage](cybrecluster/carthage.html)
|
|
|
|
|
* My first apartment
|
|
|
|
|
* At my best friend's place in Championnet
|
|
|
|
|
* On a hill near the Désert de l'Écureuil
|
|
|
|
|
* Maintenance on an autonomous webcam and weather station
|
|
|
|
|
* <abbr title="Institut de Géographie Alpine">IGA</abbr> (abandoned geography institute)
|
|
|
|
|
* Saw the Tour de France on a road down there while listening to the organizer's radio comms
|
2023-03-27 07:40:42 +00:00
|
|
|
|
* Checked the connection to a Wi-Fi network provided by a router many kilometers away
|
2021-04-25 23:02:12 +00:00
|
|
|
|
* Institut Dolomieu (abandoned geology institute)
|
|
|
|
|
* Tried to draw some floorplans, and ate breakfast there
|
|
|
|
|
* Charmant Som (a summit)
|
|
|
|
|
* Listed QRZs received during a hamradio contest
|
|
|
|
|
* Answered random people's questions about the 6 meter-high antenna we deployed there
|
|
|
|
|
* La Coop
|
|
|
|
|
* [La Turbine](https://turbine.coop)
|
2021-06-01 21:12:29 +00:00
|
|
|
|
* Under [Étoile Polaire](https://www.grenoble-patrimoine.fr/element/276/595-etoile-polaire-mark-di-suvero.htm)
|
|
|
|
|
* Analyzed Wi-Fi scanning results from a ESP32 contraption to look for weak security Wi-Fi access points
|
|
|
|
|
* "Sushione" sushi restaurant
|
|
|
|
|
WEP password: `1234567890`
|
2022-08-15 11:52:54 +00:00
|
|
|
|
* Place Verdun
|
|
|
|
|
* Learnt how to tunnel through another server to connect to a server over SSH
|
|
|
|
|
* Wrote some thoughts on using a laptop outside in a journal
|
2022-09-18 15:57:08 +00:00
|
|
|
|
* A park alongside the courthouse
|
|
|
|
|
* Uploaded 120 edits to OpenStreetMap through StreetComplete
|
|
|
|
|
* Did some quasi-meditative writing on where I was and how I was feeling
|
2023-03-01 15:42:42 +00:00
|
|
|
|
* Kateb Yacine public library
|
2024-02-02 19:30:48 +00:00
|
|
|
|
* City center public library
|
2024-02-02 00:00:29 +00:00
|
|
|
|
* On a concrete barrier of the A480 motorway
|
|
|
|
|
* Wrote an XQuery script and a post for [RSRSSS](./rsrsss)
|
2024-02-02 19:30:48 +00:00
|
|
|
|
* French Coffee Shop
|
|
|
|
|
* Found out when tank was born
|
|
|
|
|
* Wrote yet another post for [RSRSSS](./rsrsss)
|
2022-06-19 14:28:39 +00:00
|
|
|
|
* La Buisse
|
|
|
|
|
* Plateau du Grand Ratz
|
|
|
|
|
* Looked for Wi-Fi networks on a paraglider takeoff zone
|
|
|
|
|
* Identified a [wind measurement station](http://www.balisemeteo.com/balise.php?idBalise=16) next to us
|
2021-04-25 23:02:12 +00:00
|
|
|
|
* Lille
|
|
|
|
|
* Lille-Flandres train station
|
|
|
|
|
* Gaston Berger high school
|
|
|
|
|
* Removed the Windows partition, making it my first Linux-only computer
|
|
|
|
|
* Solved riddles in law class using regexes
|
|
|
|
|
* Played games, wrote blog articles, learnt Python during classes
|
|
|
|
|
* Lille university
|
|
|
|
|
* <abbr title="Institut Universitaire de Technologie">IUT</abbr>
|
|
|
|
|
* Pierant's room
|
|
|
|
|
* Liliad (library)
|
|
|
|
|
* Plugged into [a dead drop](https://deaddrops.com/db/?page=view&id=1108)
|
|
|
|
|
* On the stairs to the opera
|
|
|
|
|
* Walking around a neighborhood
|
|
|
|
|
* Got a few WEP passwords using wifite
|
|
|
|
|
* Wattrelos
|
|
|
|
|
* My great-aunt's house
|
|
|
|
|
* Douai
|
|
|
|
|
* At home
|
|
|
|
|
* Walking around the city center, breaking into WEP passwords using Kali-Linux
|
|
|
|
|
* "Le Prince" kebab restaurant
|
|
|
|
|
WEP password: `1122334455`
|
|
|
|
|
* F.P.'s place
|
|
|
|
|
* Brest
|
|
|
|
|
* My aunt's apartment
|
|
|
|
|
* Configured a router
|
|
|
|
|
* Le Folgoët
|
|
|
|
|
* My grandparents' house
|
|
|
|
|
* Watching movies
|
|
|
|
|
* Thionville
|
|
|
|
|
* My parents' home
|
|
|
|
|
* Daily driver for a few months
|
|
|
|
|
* Typed this list
|
|
|
|
|
* Paris
|
|
|
|
|
* Teklia's previous office
|
|
|
|
|
* Carcassonne
|
|
|
|
|
* My grandparents' house
|
|
|
|
|
* Finished a 4+ month-long group project alone in 2 days
|
2021-12-19 15:25:44 +00:00
|
|
|
|
* My aunt and uncle's house
|
|
|
|
|
* Valence
|
|
|
|
|
* Valence-TGV Rhône-Alpes-Sud train station
|
2021-12-19 18:45:09 +00:00
|
|
|
|
* Won a game of Battle for Wesnoth
|
2021-04-25 23:02:12 +00:00
|
|
|
|
* Trains
|
|
|
|
|
* Grenoble → Valence TGV
|
|
|
|
|
* Valence TGV → Paris-Lyon
|
2021-12-15 18:53:55 +00:00
|
|
|
|
* Valence TGV → Carcassonne
|
|
|
|
|
* Installed NetworkManager on Alpine to get the Wi-Fi to work
|
|
|
|
|
* Worked on parsing binary files using [Kaitai Struct](https://kaitai.io)
|
2021-12-19 18:45:09 +00:00
|
|
|
|
* Valence TGV → Grenoble
|
2021-12-19 19:23:24 +00:00
|
|
|
|
* Found a 0.05£ coin
|
2021-12-19 15:25:44 +00:00
|
|
|
|
* Narbonne → Valence TGV
|
2021-12-19 18:45:09 +00:00
|
|
|
|
* Learnt a lot about the Well-Known Binary format
|
2021-04-25 23:02:12 +00:00
|
|
|
|
* Grenoble → Lyon Perrache
|
|
|
|
|
* Lyon Part-Dieu → Paris-Lyon
|
2023-02-27 18:42:13 +00:00
|
|
|
|
* Lyon Part-Dieu → Grenoble
|
|
|
|
|
* Wrote a blog post
|
|
|
|
|
* [Contributed to OSM](https://www.openstreetmap.org/node/9790785617)
|
2024-01-09 22:02:21 +00:00
|
|
|
|
* Chambéry → Paris-Lyon
|
|
|
|
|
* Posted to [RSRSSS](./rsrsss/)
|
2021-04-25 23:02:12 +00:00
|
|
|
|
* Grenoble → Paris-Lyon
|
|
|
|
|
* Paris-Lyon → Grenoble
|
|
|
|
|
* Douai → Lille Flandres
|
|
|
|
|
* Lille Flandres → Douai
|
|
|
|
|
* Worked on my first C# project, a coffee machine simulator
|
|
|
|
|
* Played with my Windows 98SE VM
|
|
|
|
|
* Rewrote my [French blog](./brainshit.html)
|
2024-01-09 22:02:26 +00:00
|
|
|
|
* Played Euro Truck Simulator 2 while standing
|
2021-04-25 23:02:12 +00:00
|
|
|
|
|
|
|
|
|
## Alpine setup
|
|
|
|
|
|
|
|
|
|
[wsinatra](https://lambdacreate.com) got me interested in Alpine, and I am
|
|
|
|
|
having issues with Ubuntu 20 on most computers with `tank` being the worst
|
2021-09-30 20:44:05 +00:00
|
|
|
|
affected, so I switched to Alpine.
|
|
|
|
|
Below are some notes on the initial setup process.
|
2021-04-25 23:02:12 +00:00
|
|
|
|
|
|
|
|
|
* <https://wiki.alpinelinux.org/wiki/LVM_on_LUKS>
|
|
|
|
|
* <https://wiki.alpinelinux.org/wiki/Xfce_Setup>
|
|
|
|
|
|
|
|
|
|
1. Go through setup-alpine until the disk prompt, then `^C`
|
2021-09-30 20:44:05 +00:00
|
|
|
|
|
|
|
|
|
2. ```
|
|
|
|
|
apk add lvm2 cryptsetup parted haveged e2fsprogs syslinux
|
|
|
|
|
rc-service haveged start
|
|
|
|
|
parted -a optimal
|
|
|
|
|
|
|
|
|
|
# Inside parted
|
|
|
|
|
mklabel msdos
|
|
|
|
|
mkpart primary ext4 0% 100M
|
|
|
|
|
mkpart primary ext4 100M 100%
|
|
|
|
|
set 1 boot on
|
|
|
|
|
# Check that everything looks right
|
|
|
|
|
print
|
|
|
|
|
quit
|
|
|
|
|
|
|
|
|
|
haveged -n 0 | dd of=/dev/sda2
|
|
|
|
|
cryptsetup luksFormat /dev/sda2
|
|
|
|
|
cryptsetup luksOpen /dev/sda2 lvmcrypt
|
|
|
|
|
|
|
|
|
|
pvcreate /dev/mapper/lvmcrypt
|
|
|
|
|
vgcreate vg0 /dev/mapper/lvmcrypt
|
|
|
|
|
lvcreate -L 9G vg0 -n swap
|
|
|
|
|
lvcreate -l 100%FREE vg0 -n root
|
|
|
|
|
# Check that everything looks right
|
|
|
|
|
lvscan
|
|
|
|
|
|
|
|
|
|
mkfs.ext4 /dev/sda1
|
|
|
|
|
mkfs.ext4 /dev/vg0/root
|
|
|
|
|
mkswap /dev/vg0/swap
|
|
|
|
|
swapon /dev/vg0/swap
|
|
|
|
|
mount -t ext4 /dev/vg0/root /mnt/
|
|
|
|
|
mkdir -v /mnt/boot
|
|
|
|
|
mount -t ext4 /dev/sda1 /mnt/boot
|
|
|
|
|
setup-disk -m sys /mnt/
|
|
|
|
|
|
|
|
|
|
echo "/dev/vg0/swap\tnone\tswap\tdefaults\t0 0" > /mnt/etc/fstab
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
3. Add `cryptsetup` and `keymap` to the `features` in `/mnt/etc/mkinitfs/mkinitfs.conf`
|
2023-07-22 06:40:54 +00:00
|
|
|
|
|
2021-09-30 20:44:05 +00:00
|
|
|
|
4. ```
|
2023-07-22 06:40:54 +00:00
|
|
|
|
mkinitfs -c /mnt/etc/mkinitfs/mkinitfs.conf -b /mnt/ $(ls /mnt/lib/modules/)
|
|
|
|
|
blkid -s UUID -o value /dev/sda2 > ~/uuid
|
|
|
|
|
```
|
|
|
|
|
|
2021-09-30 20:44:05 +00:00
|
|
|
|
5. Set the proper UUID in `/mnt/etc/update-extlinux.conf`:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
default_kernel_opts="… cryptroot=UUID=<THE UUID> cryptdm=lvmcrypt"
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Also check this:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
modules=sd-mod,usb-storage,ext4,cryptsetup,keymap,cryptkey,kms,lvm
|
|
|
|
|
root=UUID=<UUID of /dev/mapper/vg0-root>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
6. ```
|
2023-07-22 06:40:54 +00:00
|
|
|
|
chroot /mnt/
|
|
|
|
|
# This may cause errors on `/boot`, ignore them
|
|
|
|
|
update-extlinux
|
|
|
|
|
exit
|
|
|
|
|
dd bs=440 count=1 conv=notrunc if=/mnt/usr/share/syslinux/mbr.bin of=/dev/sda
|
|
|
|
|
cd
|
|
|
|
|
umount /mnt/boot
|
|
|
|
|
swapoff /dev/vg0/swap
|
|
|
|
|
umount /mnt
|
|
|
|
|
vgchange -a n
|
|
|
|
|
cryptsetup luksClose lvmcrypt
|
|
|
|
|
reboot
|
|
|
|
|
```
|
2021-09-30 20:44:05 +00:00
|
|
|
|
|
2022-01-27 08:15:34 +00:00
|
|
|
|
7. Enable the edge repos in `/etc/apk/repositories`
|
2021-09-30 20:44:05 +00:00
|
|
|
|
|
|
|
|
|
8. ```
|
|
|
|
|
apk update
|
|
|
|
|
setup-xorg-base xfce4 xfce4-terminal lightdm-gtk-greeter xfce4-screensaver dbus-x11 sudo
|
|
|
|
|
apk add \
|
2023-07-22 06:40:54 +00:00
|
|
|
|
xf86-video-intel \
|
|
|
|
|
xf86-input-synaptics \
|
|
|
|
|
xf86-input-libinput \
|
|
|
|
|
xf86-input-evdev \
|
|
|
|
|
xf86-input-wacom \
|
|
|
|
|
setxkbmap \
|
|
|
|
|
elogind \
|
|
|
|
|
polkit-elogind \
|
|
|
|
|
gvfs-fuse \
|
|
|
|
|
gvfs-mtp \
|
|
|
|
|
gvfs-smb \
|
|
|
|
|
fuse-openrc \
|
|
|
|
|
thunar-volman \
|
|
|
|
|
udisks2 \
|
|
|
|
|
pavucontrol \
|
|
|
|
|
libreoffice \
|
|
|
|
|
firefox \
|
|
|
|
|
pass \
|
|
|
|
|
git \
|
|
|
|
|
gvim \
|
|
|
|
|
xfce4-screenshooter \
|
|
|
|
|
syncthing \
|
|
|
|
|
xfce4-whiskermenu-plugin \
|
|
|
|
|
onboard \
|
|
|
|
|
evolution \
|
|
|
|
|
vlc \
|
|
|
|
|
openssh \
|
|
|
|
|
tlp \
|
|
|
|
|
cpufreqd \
|
|
|
|
|
blueman \
|
2023-09-02 16:18:50 +00:00
|
|
|
|
pipewire-alsa \
|
|
|
|
|
pipewire-pulse \
|
|
|
|
|
wireplumber
|
2023-07-22 06:40:54 +00:00
|
|
|
|
|
2021-09-30 20:44:05 +00:00
|
|
|
|
cat <<EOF
|
2023-07-22 06:40:54 +00:00
|
|
|
|
Section "InputClass"
|
|
|
|
|
Identifier "Keyboard Default"
|
|
|
|
|
MatchIsKeyboard "yes"
|
|
|
|
|
Option "XkbLayout" "fr"
|
|
|
|
|
Option "XkbVariant" "oss"
|
|
|
|
|
Option "XkbOptions" "compose:rctrl"
|
|
|
|
|
EndSection
|
2021-09-30 20:44:05 +00:00
|
|
|
|
EOF >/usr/share/X11/xorg.conf.d/20-keyboard.conf
|
2023-07-22 06:40:54 +00:00
|
|
|
|
|
2021-09-30 20:44:05 +00:00
|
|
|
|
adduser -g lucidiot lucidiot
|
|
|
|
|
```
|
|
|
|
|
|
2022-02-01 23:22:21 +00:00
|
|
|
|
9. Use `visudo` to allow `lucidiot` and add `Defaults insults`
|
2021-09-30 20:44:05 +00:00
|
|
|
|
|
2022-01-27 08:15:34 +00:00
|
|
|
|
10. Edit `/etc/conf.d/bootmisc` to set `wipe_tmp` to `YES`
|
|
|
|
|
|
|
|
|
|
11. ```
|
2021-09-30 20:44:05 +00:00
|
|
|
|
rc-update del networking boot
|
|
|
|
|
rc-update del wpa_supplicant boot
|
|
|
|
|
rc-update del wpa_cli boot
|
|
|
|
|
rc-update add dbus default
|
|
|
|
|
rc-update add fuse default
|
|
|
|
|
rc-update add networking default
|
|
|
|
|
rc-update add wpa_supplicant default
|
|
|
|
|
rc-update add cpufreqd default
|
|
|
|
|
rc-update add tlp default
|
2022-01-27 08:15:34 +00:00
|
|
|
|
rc-update add bluetooth default
|
2022-02-01 23:22:31 +00:00
|
|
|
|
rc-update add swap default
|
2021-09-30 20:44:05 +00:00
|
|
|
|
rc-service dbus start
|
|
|
|
|
rc-service fuse start
|
|
|
|
|
rc-service lightdm start
|
|
|
|
|
```
|
|
|
|
|
|
2022-01-27 08:15:34 +00:00
|
|
|
|
12. Login into XFCE, check everything works
|
2021-09-30 20:44:05 +00:00
|
|
|
|
|
2022-01-27 08:15:34 +00:00
|
|
|
|
13. `rc-update add lightdm default`
|