-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprepare_host.sh
executable file
·131 lines (95 loc) · 4.89 KB
/
prepare_host.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#!/bin/bash
# ********************************************************
# * Install xbox driver *
# ********************************************************
# https://askubuntu.com/questions/695069/xbox-controller-blinking/1438948#1438948
# Install xboxdrv
sudo apt-add-repository ppa:rael-gc/ubuntu-xboxdrv
sudo apt-get update
sudo apt-get install ubuntu-xboxdrv
# Add xpad in the blacklist
echo "blacklist xpad" | sudo tee -a /etc/modprobe.d/blacklist.conf
# Unload the module if it's already loaded
sudo rmmod xpad
# Remove jstest-gtk to set xboxdrv as default
sudo apt-get purge jstest-gtk
sudo apt-get install xboxdrv
sudo apt-get install jstest-gtk #Reinstalling it without affecting xboxdrv
# Copy the settings file. Creating a symlink can cause issues for systemctl
sudo cp xboxdrv/xboxdrv.settings /etc/default/xboxdrv
# https://askubuntu.com/questions/1112920/xboxdrv-not-able-to-start/1438836#1438836
# Copy the service file. Creating a symlink can cause issues for systemctl
sudo cp xboxdrv/xboxdrv.service /etc/systemd/system
# Enable the service
sudo systemctl enable xboxdrv.service
# Make sure the Xbox controller is connected before continuing the next steps
# Start the service
sudo systemctl start xboxdrv.service
# ********************************************************
# * Udev rules *
# ********************************************************
# Allow user to read/write to xbox controller
# Permissions will be given on to docker
sudo cp 10-xbox-controller.rules /etc/udev/rules.d/
# Allow user to read/write to kinect
# Permissions will be given on to docker
sudo cp 10-kinect.rules /etc/udev/rules.d/
echo -1 | sudo tee -a /sys/module/usbcore/parameters/autosuspend
# In Linux(Ubuntu platform) environment, USB latency time is set to 16ms by default.
# Set the communication latency time to the lowest value (1ms) between DYNAMIXEL’s and PC connected via USB.
sudo cp 99-open-manipulator-cdc.rules /etc/udev/rules.d/
# Reload rules
sudo udevadm control --reload-rules
sudo udevadm trigger
# ********************************************************
# * Install docker *
# ********************************************************
# https://docs.docker.com/engine/install/ubuntu/
# Run the following command to uninstall all conflicting packages
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# Manage docker as non-root user
# https://docs.docker.com/engine/install/linux-postinstall/
# Create the docker group
sudo groupadd docker
# Add your user to the docker group
sudo usermod -aG docker $USER
# Activate the changes to groups
newgrp docker
# ********************************************************
# * Install VSCode *
# ********************************************************
# Might be useful when debugging on the jetson itself
# https://code.visualstudio.com/docs/setup/linux
sudo apt-get install wget gpg
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
rm -f packages.microsoft.gpg
sudo apt install apt-transport-https
sudo apt update
sudo apt install code # or code-insiders
# ********************************************************
# * Install other packages *
# ********************************************************
# Install text editor nano
sudo apt install nano
# ********************************************************
# * Other settings *
# ********************************************************
# Store logs of previous boots, to find errors:
# https://www.digitalocean.com/community/tutorials/how-to-use-journalctl-to-view-and-manipulate-systemd-logs#past-boots
sudo mkdir -p /var/log/journal
echo "Storage=persistent" | sudo tee -a /etc/systemd/journald.conf