Compare commits
27 Commits
4f2c59ee37
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
c88211d161
|
|||
|
1ed4b3bcee
|
|||
|
299f3df84e
|
|||
|
75137199da
|
|||
|
d6cc275d6f
|
|||
|
67ac7abb3f
|
|||
|
69a8757c9f
|
|||
|
addefeefef
|
|||
|
a33f0ce8f1
|
|||
|
46402622c8
|
|||
|
d511f9061c
|
|||
|
a1ea4324d0
|
|||
|
ec2117a0a5
|
|||
|
88f7257a9a
|
|||
|
05663a0435
|
|||
|
7302550209
|
|||
|
71dd6d4cb2
|
|||
|
64f7f65f0b
|
|||
|
e4c00239fa
|
|||
|
3cbd7042b2
|
|||
|
190fff9bae
|
|||
|
324fad6a5a
|
|||
|
ffd0080a31
|
|||
|
feeee8431f
|
|||
|
fe07d7f076
|
|||
|
67e51cefb9
|
|||
|
f68e8c0df8
|
4
Makefile
@@ -7,10 +7,14 @@ help: ## Print the help message
|
||||
# Search should not include slides separated by '***', as those are for mdp, not pandoc.
|
||||
markdown != find slides/ -maxdepth 2 -type f -name "*.md" -exec grep -LF '***' '{}' ';'
|
||||
pdfs = $(patsubst %.md, %.pdf, $(markdown))
|
||||
handouts = $(patsubst %.md, %_handout.pdf, $(markdown))
|
||||
|
||||
$(pdfs): %.pdf: %.md
|
||||
pandoc -t beamer -V theme:Warsaw -i $< -o $@
|
||||
|
||||
$(handouts): %_handout.pdf: %.md
|
||||
pandoc -t beamer -V handout -V theme:Warsaw -i $< -o $@
|
||||
|
||||
.PHONY: pdfs
|
||||
pdfs: $(pdfs) ## Generate all pdfs (try `make -j pdfs`)
|
||||
|
||||
|
||||
166
slides/3Dprint/3DPrint.md
Normal file
@@ -0,0 +1,166 @@
|
||||
|
||||
|
||||
# 3D Printing
|
||||
|
||||
***
|
||||
|
||||
## Machine brands
|
||||
|
||||
- Creality Ender
|
||||
- Prusa
|
||||
- Elagoo
|
||||
- Bamboo
|
||||
|
||||
...and more
|
||||
|
||||
Suggestion [Elagoo centauri](https://us.elegoo.com/products/centauri-carbon) - [40k](https://aldorshop.rs/proizvod/elegoo-centauri-carbon/)
|
||||
|
||||
|
||||
***
|
||||
|
||||
## Main parts
|
||||
|
||||
- Motors x,y,z
|
||||
- Buildplate (print bad)
|
||||
- Extruder
|
||||
- Bowden tube
|
||||
- Hotend
|
||||
- Nozzle
|
||||
- BL Touch
|
||||
|
||||
***
|
||||
|
||||
## Filamets
|
||||
|
||||
- PLA and PLA+
|
||||
- PETG
|
||||
- ASA/ABS
|
||||
- Resin
|
||||
|
||||
...and other
|
||||
|
||||
***
|
||||
|
||||
## Filament - variations
|
||||
|
||||
- Dual colors
|
||||
- Shiny, glitter
|
||||
- Transparent
|
||||
- Glow in dark
|
||||
- Elastic
|
||||
- Wood like
|
||||
|
||||
***
|
||||
|
||||
## Calibration and troubleshooting
|
||||
|
||||
[guide](https://teachingtechyt.github.io/calibration.html)
|
||||
|
||||
- bed leveling
|
||||
- line height
|
||||
- extruder tensioning
|
||||
- fillament temperature
|
||||
|
||||
***
|
||||
|
||||
## Modeling
|
||||
|
||||
- Blender
|
||||
- FreeCAD
|
||||
|
||||
... and a lot of propriatary tools
|
||||
|
||||
***
|
||||
|
||||
## Platforms and community
|
||||
|
||||
- [Thingiverse](https://www.thingiverse.com)
|
||||
- [Printables](https://www.printables.com/)
|
||||
- [MyMiniFactory](https://www.myminifactory.com/)
|
||||
- [GrabCAD](https://grabcad.com/library)
|
||||
- [STL Finder](https://www.stlfinder.com/)
|
||||
|
||||
... and much more
|
||||
|
||||
***
|
||||
|
||||
## Slicing
|
||||
|
||||
- Prusa Slicer
|
||||
- Cura
|
||||
- Bamboo lab
|
||||
|
||||
- Supports
|
||||
- Positioning
|
||||
|
||||
|
||||
***
|
||||
|
||||
## Some techniques
|
||||
|
||||
- Color change
|
||||
- Inserting magnets
|
||||
- Combining with other things
|
||||
- screws
|
||||
- marbles
|
||||
- spinners
|
||||
- electronics
|
||||
- Afterjobs
|
||||
- sanding
|
||||
- polishing
|
||||
- coloring
|
||||
|
||||
***
|
||||
|
||||
## Monitoring
|
||||
|
||||
- Builtin from vendor
|
||||
- [OctoPrint](https://octoprint.org/)
|
||||
- OctoPi
|
||||
- OctoPhone
|
||||
|
||||
Note: don't expose, use home VPN, tailscale or similar
|
||||
***
|
||||
|
||||
## Uses and projects
|
||||
|
||||
- Fixing stuff
|
||||
- Upgrading stuff
|
||||
- Tools, skadis
|
||||
- Home appliances
|
||||
- Electronic devices (ESP, arduino, etc)
|
||||
- Toys
|
||||
- Gifts
|
||||
|
||||
***
|
||||
|
||||
|
||||
## Resources - Subreddits
|
||||
|
||||
- r/FixMyPrint
|
||||
- r/functionalprint
|
||||
- r/3Dprinting
|
||||
- r/PrintedMinis
|
||||
- r/3dprinter
|
||||
- r/3DPrintTech
|
||||
|
||||
***
|
||||
|
||||
## Serbia
|
||||
|
||||
- [DMZ forum post](https://forum.dmz.rs/t/3d-printing/417/4)
|
||||
- [Voxellab](https://voxellab.rs/)
|
||||
- [Radnja u staklencu](https://3dmarket.rs/3D/3d-stampaci/)
|
||||
|
||||
***
|
||||
|
||||
## Misc and upgrades
|
||||
|
||||
- Printed parts / upgrades
|
||||
- Nozzle brush (automated cleaning)
|
||||
- Filament cleaner
|
||||
- Filament case and heataer
|
||||
- Silicone instead of springs for leveling
|
||||
- Sanding tools
|
||||
- Custom firmware upgrades
|
||||
|
||||
BIN
slides/3Dprint/pics/01-resin.png
Normal file
|
After Width: | Height: | Size: 589 KiB |
BIN
slides/3Dprint/pics/02-1-main-parts.png
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
slides/3Dprint/pics/02-2-parts.webp
Normal file
|
After Width: | Height: | Size: 55 KiB |
BIN
slides/3Dprint/pics/02-3-extruder.webp
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
slides/3Dprint/pics/02-3-parts-of-a-3d-printer-hot-end.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
slides/3Dprint/pics/02-4-main-parts.jpg
Normal file
|
After Width: | Height: | Size: 112 KiB |
BIN
slides/3Dprint/pics/02-5-silicone_sock.jpg
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
slides/3Dprint/pics/03-01-multycolor.jpg
Normal file
|
After Width: | Height: | Size: 276 KiB |
BIN
slides/3Dprint/pics/03-02-sprincles.jpg
Normal file
|
After Width: | Height: | Size: 504 KiB |
BIN
slides/3Dprint/pics/03-04-wood-like.jpg
Normal file
|
After Width: | Height: | Size: 34 KiB |
BIN
slides/3Dprint/pics/03-3-glitter.png
Normal file
|
After Width: | Height: | Size: 903 KiB |
BIN
slides/3Dprint/pics/04-01-bed-leveling.png
Normal file
|
After Width: | Height: | Size: 267 KiB |
BIN
slides/3Dprint/pics/04-02-bed-leveling.jpg
Normal file
|
After Width: | Height: | Size: 99 KiB |
BIN
slides/3Dprint/pics/04-03-bed-leveling.jpg
Normal file
|
After Width: | Height: | Size: 157 KiB |
BIN
slides/3Dprint/pics/04-03-extruder-tension.jpg
Normal file
|
After Width: | Height: | Size: 611 KiB |
BIN
slides/3Dprint/pics/04-04-extruder-tension.jpg
Normal file
|
After Width: | Height: | Size: 746 KiB |
BIN
slides/3Dprint/pics/05-drill-sanding.jpg
Normal file
|
After Width: | Height: | Size: 263 KiB |
BIN
slides/3Dprint/pics/05-fillament-cleaner.webp
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
slides/3Dprint/pics/05-nozzle-brush-.webp
Normal file
|
After Width: | Height: | Size: 111 KiB |
BIN
slides/3Dprint/pics/05-nozzle-brush-holder.webp
Normal file
|
After Width: | Height: | Size: 98 KiB |
BIN
slides/3Dprint/pics/05-silicone_bed.webp
Normal file
|
After Width: | Height: | Size: 61 KiB |
BIN
slides/3Dprint/pics/06-octopi.webp
Normal file
|
After Width: | Height: | Size: 155 KiB |
BIN
slides/3Dprint/pics/06-octoprint.webp
Normal file
|
After Width: | Height: | Size: 208 KiB |
BIN
slides/3Dprint/pics/07-riced-ender-before-after.jpg
Normal file
|
After Width: | Height: | Size: 135 KiB |
BIN
slides/3Dprint/pics/07-riced-ender-upgrades.jpg
Normal file
|
After Width: | Height: | Size: 110 KiB |
BIN
slides/3Dprint/pics/07-riced-ender.jpg
Normal file
|
After Width: | Height: | Size: 216 KiB |
BIN
slides/3Dprint/pics/07-riced-ender.png
Normal file
|
After Width: | Height: | Size: 708 KiB |
226
slides/ansible/ansible.md
Normal file
@@ -0,0 +1,226 @@
|
||||
---
|
||||
title: Ansible
|
||||
author: Malin
|
||||
theme: Warsaw
|
||||
colortheme: orchid
|
||||
---
|
||||
|
||||
# First: Idempotence
|
||||
|
||||
## My Setup Script
|
||||
|
||||
|
||||
```sh
|
||||
# Place locale info
|
||||
echo 'LANG=en_GB.UTF-8' >> /etc/locale.conf
|
||||
/etc/default/libc-locales
|
||||
xbps-reconfigure -fy glibc-locales
|
||||
|
||||
# Start cron service
|
||||
xbps-install -y crontab
|
||||
ln -s /etc/sv/cronie /var/service
|
||||
sv start crontab
|
||||
|
||||
# Add default dot files
|
||||
git clone https://gitlab.com/andonome/mkdots.git /etc/skel/.dots
|
||||
|
||||
useradd -m ghost
|
||||
usermod -aG wheel
|
||||
|
||||
```
|
||||
|
||||
***
|
||||
|
||||
> Error: no package 'cron tab'
|
||||
|
||||
***
|
||||
|
||||
```sh
|
||||
# Place locale info
|
||||
echo 'LANG=en_GB.UTF-8' >> /etc/locale.conf
|
||||
/etc/default/libc-locales
|
||||
xbps-reconfigure -fy glibc-locales
|
||||
|
||||
# Start cron service
|
||||
xbps-install -y cronie
|
||||
ln -s /etc/sv/cronie /var/service
|
||||
sv start cronie
|
||||
|
||||
# Add default dot files
|
||||
git clone https://gitlab.com/andonome/mkdots.git /etc/skel/.dots
|
||||
|
||||
useradd -m ghost
|
||||
usermod -aG wheel
|
||||
|
||||
```
|
||||
|
||||
> ...loading locales
|
||||
|
||||
***
|
||||
|
||||
> Error: No command 'git'
|
||||
> Error: user already exists
|
||||
|
||||
***
|
||||
|
||||
```sh
|
||||
# Place locale info
|
||||
echo 'LANG=en_GB.UTF-8' >> /etc/locale.conf
|
||||
/etc/default/libc-locales
|
||||
xbps-reconfigure -fy glibc-locales
|
||||
|
||||
# Start cron service
|
||||
xbps-install -y cronie git
|
||||
ln -s /etc/sv/cronie /var/service
|
||||
sv start cronie
|
||||
|
||||
# Add default dot files
|
||||
git clone https://gitlab.com/andonome/mkdots.git /etc/skel/.dots
|
||||
|
||||
useradd -m ghost
|
||||
usermod -G wheel
|
||||
|
||||
```
|
||||
|
||||
***
|
||||
|
||||
> `$ cat /etc/locale.conf`
|
||||
|
||||
```sh
|
||||
LC_COLLATE=C
|
||||
LANG=en_GB.UTF-8
|
||||
LANG=en_GB.UTF-8
|
||||
LANG=en_GB.UTF-8
|
||||
LANG=en_GB.UTF-8
|
||||
LANG=en_GB.UTF-8
|
||||
LANG=en_GB.UTF-8
|
||||
```
|
||||
|
||||
> `$ ???`
|
||||
|
||||
***
|
||||
|
||||
|
||||
```sh
|
||||
grep en_GB /etc/locale.conf || \
|
||||
echo 'LANG=en_GB.UTF-8' >> /etc/locale.conf
|
||||
|
||||
```
|
||||
|
||||
***
|
||||
|
||||
# So Ansible...
|
||||
|
||||
|
||||
```sh
|
||||
ansible --module-name=ping localhost
|
||||
ansible -m package -a 'upgrade=yes' localhost
|
||||
```
|
||||
|
||||
## Lines in Files
|
||||
|
||||
```sh
|
||||
ansible -m lineinfile -a 'line=test create=yes path=/tmp/x' localhost
|
||||
ansible -m say -a 'voice=en_GB msg="Testing"' localhost
|
||||
ansible -m say -a 'voice=en_GB msg="Testing"' localhost
|
||||
```
|
||||
|
||||
***
|
||||
|
||||
# More Hosts!
|
||||
|
||||
Hark at the hosts in `~/.ssh/config`:
|
||||
|
||||
```sh
|
||||
Host soft
|
||||
HostName soft.dmz.rs
|
||||
Port 2222
|
||||
User ghost
|
||||
IdentityFile ~/.ssh/id_rsa
|
||||
Host krov
|
||||
HostName krov.dmz.rs
|
||||
User malin
|
||||
Host kralizec
|
||||
HostName dmz.rs
|
||||
User root
|
||||
Host laka
|
||||
HostName 192.168.0.50
|
||||
IdentityFile ~/.ssh/id_rsa
|
||||
```
|
||||
|
||||
***
|
||||
|
||||
## Hosts in toml
|
||||
|
||||
|
||||
```toml
|
||||
[webby]
|
||||
nginx12
|
||||
|
||||
[webby:vars]
|
||||
user=alice
|
||||
```
|
||||
|
||||
This is easy to read, but breaks standards.
|
||||
|
||||
***
|
||||
|
||||
`ansible-play -i hosts.toml playbooks/mmcli`
|
||||
|
||||
***
|
||||
|
||||
Better to stick with standards, even if you can't read it!
|
||||
|
||||
***
|
||||
|
||||
Very yaml:
|
||||
|
||||
```yml
|
||||
all:
|
||||
vars:
|
||||
ansible_python_interpreter: /usr/bin/python3.13
|
||||
cow_selection: random
|
||||
username: ghost
|
||||
locale: Europe/Belgrade
|
||||
libc_locale: en_GB.UTF-8 UTF-8
|
||||
children:
|
||||
arch:
|
||||
children:
|
||||
archyay:
|
||||
hosts:
|
||||
ratking:
|
||||
archkube:
|
||||
nimbus:
|
||||
void:
|
||||
hosts:
|
||||
hex:
|
||||
debian:
|
||||
vars:
|
||||
ansible_python_interpreter: /usr/bin/python3.12
|
||||
hosts:
|
||||
laka:
|
||||
proxmox:
|
||||
|
||||
```
|
||||
|
||||
***
|
||||
|
||||
`ansible-play -i hosts.yml playbooks/mmcli`
|
||||
|
||||
***
|
||||
|
||||
# What it Does
|
||||
|
||||
- Installs packages
|
||||
- Copies configs *to* host
|
||||
- Fetches files *from* host
|
||||
* Backup ssl certs
|
||||
* Backup ssh identify keys
|
||||
|
||||
***
|
||||
|
||||
# Check the Repository Here!
|
||||
|
||||
`[ $git_repo_address ]`
|
||||
|
||||
|
||||
22
slides/ansible/examples/bind.yml
Normal file
@@ -0,0 +1,22 @@
|
||||
---
|
||||
- name: Compile BIND
|
||||
hosts: hex
|
||||
become: false
|
||||
environment:
|
||||
PATH: '{{ ansible_env.PATH }}'
|
||||
|
||||
tasks:
|
||||
- name: Git pull BIND
|
||||
ansible.builtin.git:
|
||||
repo: https://gitlab.com/bindrpg/core.git
|
||||
dest: "{{ ansible_user_dir }}/core"
|
||||
clone: true
|
||||
verify_commit: true
|
||||
version: master
|
||||
|
||||
|
||||
- name: Make BIND
|
||||
community.general.make:
|
||||
chdir: "{{ ansible_user_dir }}/core"
|
||||
jobs: 3
|
||||
target: all
|
||||
27
slides/ansible/examples/mmcli.yml
Normal file
@@ -0,0 +1,27 @@
|
||||
---
|
||||
- name: Install Mermaid ASCII
|
||||
hosts: laka
|
||||
become: true
|
||||
|
||||
tasks:
|
||||
- name: Install deps
|
||||
ansible.builtin.package:
|
||||
name:
|
||||
- git
|
||||
- golang
|
||||
- make
|
||||
|
||||
- name: Ensure local src dir exists
|
||||
ansible.builtin.file:
|
||||
path: /usr/local/src/
|
||||
state: directory
|
||||
mode: '0755'
|
||||
- name: Clone mermaid-ascii
|
||||
ansible.builtin.git:
|
||||
repo: https://github.com/AlexanderGrooff/mermaid-ascii.git
|
||||
dest: /usr/local/src/mermaid-ascii/
|
||||
update: yes
|
||||
- name: Install mermaid
|
||||
community.general.make:
|
||||
chdir: /usr/local/src/mermaid-ascii/
|
||||
target: install
|
||||
10
slides/ansible/examples/tlmgr.yml
Normal file
@@ -0,0 +1,10 @@
|
||||
---
|
||||
- name: Install tlmgr
|
||||
hosts: june
|
||||
become: true
|
||||
|
||||
tasks:
|
||||
- name: Install texlive
|
||||
ansible.builtin.script: mintex.sh
|
||||
args:
|
||||
creates: /usr/local/bin/tlmgr
|
||||
18
slides/ansible/examples/transmission.yml
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
- name: Make crontab
|
||||
hosts: june
|
||||
become: true
|
||||
|
||||
tasks:
|
||||
- name: Late-night transmission start
|
||||
ansible.builtin.cron:
|
||||
name: start transmission
|
||||
minute: 0
|
||||
hour: 3
|
||||
job: /usr/bin/systemctl start transmission
|
||||
- name: Late-night transmission end
|
||||
ansible.builtin.cron:
|
||||
name: stop transmission
|
||||
minute: 0
|
||||
hour: 6
|
||||
job: /usr/bin/systemctl stop transmission
|
||||
24
slides/ansible/examples/tspreed.yml
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
- name: Install tspreed
|
||||
hosts: october
|
||||
become: true
|
||||
|
||||
tasks:
|
||||
- name: Ensure local src dir exists
|
||||
ansible.builtin.file:
|
||||
path: /usr/local/src/
|
||||
state: directory
|
||||
mode: '0755'
|
||||
- name: Install make
|
||||
ansible.builtin.package:
|
||||
name: make
|
||||
state: present
|
||||
- name: Clone tspreed
|
||||
ansible.builtin.git:
|
||||
repo: https://github.com/n-ivkovic/tspreed.git
|
||||
dest: /usr/local/src/tspreed
|
||||
update: yes
|
||||
- name: Install tspreed
|
||||
community.general.make:
|
||||
chdir: /usr/local/src/tspreed
|
||||
target: install
|
||||
@@ -23,7 +23,7 @@ echo blacklist pcspkr > /etc/modprobe.d/nobeep.conf
|
||||
|
||||
```sh
|
||||
curl wttr.in
|
||||
curl -s wttr.in/Београд
|
||||
curl -s wttr.in/
|
||||
curl wttr.in/Moon
|
||||
```
|
||||
|
||||
@@ -150,7 +150,7 @@ set keymap vi
|
||||
set editing-mode vi
|
||||
set show-mode-in-prompt on
|
||||
set vi-ins-mode-string " "
|
||||
set vi-cmd-mode-string " "
|
||||
set vi-cmd-mode-string "W "
|
||||
set keymap vi
|
||||
```
|
||||
|
||||
|
||||