Compare commits
23 Commits
master
...
4f2c59ee37
| Author | SHA1 | Date | |
|---|---|---|---|
| 4f2c59ee37 | |||
| c227dbbad0 | |||
| 1d7bb032f3 | |||
| 05c6becee4 | |||
|
c74b861442
|
|||
|
599ccd2881
|
|||
|
b191a9e5d4
|
|||
|
e98d4ffbac
|
|||
|
f067b0200b
|
|||
| e2814b08e1 | |||
|
2f33669330
|
|||
|
cee27356f6
|
|||
|
f358103f79
|
|||
|
4c51ade750
|
|||
|
0d2d466dac
|
|||
|
8cc2a71235
|
|||
|
fa026b7eda
|
|||
|
7bc84ab8a3
|
|||
|
e59538a3bd
|
|||
|
a9f7fd7f75
|
|||
|
3adc7ce3a7
|
|||
|
131e9a1c3f
|
|||
|
|
44871e36ff |
4
Makefile
@@ -7,14 +7,10 @@ help: ## Print the help message
|
|||||||
# Search should not include slides separated by '***', as those are for mdp, not pandoc.
|
# 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 '***' '{}' ';'
|
markdown != find slides/ -maxdepth 2 -type f -name "*.md" -exec grep -LF '***' '{}' ';'
|
||||||
pdfs = $(patsubst %.md, %.pdf, $(markdown))
|
pdfs = $(patsubst %.md, %.pdf, $(markdown))
|
||||||
handouts = $(patsubst %.md, %_handout.pdf, $(markdown))
|
|
||||||
|
|
||||||
$(pdfs): %.pdf: %.md
|
$(pdfs): %.pdf: %.md
|
||||||
pandoc -t beamer -V theme:Warsaw -i $< -o $@
|
pandoc -t beamer -V theme:Warsaw -i $< -o $@
|
||||||
|
|
||||||
$(handouts): %_handout.pdf: %.md
|
|
||||||
pandoc -t beamer -V handout -V theme:Warsaw -i $< -o $@
|
|
||||||
|
|
||||||
.PHONY: pdfs
|
.PHONY: pdfs
|
||||||
pdfs: $(pdfs) ## Generate all pdfs (try `make -j pdfs`)
|
pdfs: $(pdfs) ## Generate all pdfs (try `make -j pdfs`)
|
||||||
|
|
||||||
|
|||||||
@@ -1,166 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 589 KiB |
|
Before Width: | Height: | Size: 80 KiB |
|
Before Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 112 KiB |
|
Before Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 276 KiB |
|
Before Width: | Height: | Size: 504 KiB |
|
Before Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 903 KiB |
|
Before Width: | Height: | Size: 267 KiB |
|
Before Width: | Height: | Size: 99 KiB |
|
Before Width: | Height: | Size: 157 KiB |
|
Before Width: | Height: | Size: 611 KiB |
|
Before Width: | Height: | Size: 746 KiB |
|
Before Width: | Height: | Size: 263 KiB |
|
Before Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 111 KiB |
|
Before Width: | Height: | Size: 98 KiB |
|
Before Width: | Height: | Size: 61 KiB |
|
Before Width: | Height: | Size: 155 KiB |
|
Before Width: | Height: | Size: 208 KiB |
|
Before Width: | Height: | Size: 135 KiB |
|
Before Width: | Height: | Size: 110 KiB |
|
Before Width: | Height: | Size: 216 KiB |
|
Before Width: | Height: | Size: 708 KiB |
@@ -1,226 +0,0 @@
|
|||||||
---
|
|
||||||
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 ]`
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
---
|
|
||||||
- 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
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
---
|
|
||||||
- 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
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Install tlmgr
|
|
||||||
hosts: june
|
|
||||||
become: true
|
|
||||||
|
|
||||||
tasks:
|
|
||||||
- name: Install texlive
|
|
||||||
ansible.builtin.script: mintex.sh
|
|
||||||
args:
|
|
||||||
creates: /usr/local/bin/tlmgr
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
---
|
|
||||||
- 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
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
---
|
|
||||||
- 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
|
```sh
|
||||||
curl wttr.in
|
curl wttr.in
|
||||||
curl -s wttr.in/
|
curl -s wttr.in/Београд
|
||||||
curl wttr.in/Moon
|
curl wttr.in/Moon
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -150,7 +150,7 @@ set keymap vi
|
|||||||
set editing-mode vi
|
set editing-mode vi
|
||||||
set show-mode-in-prompt on
|
set show-mode-in-prompt on
|
||||||
set vi-ins-mode-string " "
|
set vi-ins-mode-string " "
|
||||||
set vi-cmd-mode-string "W "
|
set vi-cmd-mode-string " "
|
||||||
set keymap vi
|
set keymap vi
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||