Compare commits

..

26 Commits

Author SHA1 Message Date
coja f92cf0c343 [Slide] 3D print 2025-10-29 01:35:45 +01:00
andonome c2bbd1795d write ansible 2025-10-29 01:35:45 +01:00
andonome ae70d14a3e remove unicode from joyous bash
Unicode breaks the pandoc compiler (because LaTeX is shit).
2025-10-29 01:35:45 +01:00
coja 85cfc60d48 [Slide] Selfhosting 2025-10-29 01:35:45 +01:00
coja 19017cfbb1 [Slide] Kombucha 2025-10-29 01:35:45 +01:00
coja ba3caa5bcf [Slide] DeGoogle 2025-10-29 01:35:45 +01:00
coja 1b2e77d610 [Slide] rss 2025-10-29 01:35:45 +01:00
andonome cd21983232 add joyous bash 2025-10-29 01:35:45 +01:00
andonome 7ecfcb6a6c refactor makefile 2025-10-29 01:35:45 +01:00
andonome 4c81a3b3cb note speedy compiles 2025-10-29 01:35:45 +01:00
andonome 1a444120e0 place arch install instructions 2025-10-29 01:35:45 +01:00
andonome 979dff793d fix robocop 2025-10-29 01:35:45 +01:00
wingaxe 6c5a00b18d Added dependencies for Debian in README 2025-10-29 01:35:45 +01:00
andonome e13dbe316b update readme 2025-10-29 01:35:45 +01:00
andonome 1c73f70782 reconfigure makefile 2025-10-29 01:35:45 +01:00
andonome 498b078199 dependency ladder example 2025-10-29 01:35:45 +01:00
andonome 611ace277a PS: more Makefiles 2025-10-29 01:35:45 +01:00
andonome 6915e520f3 typo 2025-10-29 01:35:45 +01:00
andonome 162270d5db note python makefile 2025-10-29 01:35:45 +01:00
andonome 790d22a6bc ending notes 2025-10-29 01:35:45 +01:00
andonome f11c7c82b6 finish examples 2025-10-29 01:35:45 +01:00
andonome 3b5ce34285 place example makefiles 2025-10-29 01:35:45 +01:00
andonome 2738c7daa9 add basic makefile examples 2025-10-29 01:35:45 +01:00
fram3d 7435e1a5c4 fix typo in algebragrupe slides 2025-10-29 01:35:45 +01:00
fram3d a1c8976817 add algebera slides and link to decentrala slide 2025-10-29 01:35:45 +01:00
coja 2a9ef0820c ekonomija update 2025-10-29 01:35:24 +01:00
34 changed files with 0 additions and 558 deletions
-4
View File
@@ -7,14 +7,10 @@ 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`)
-40
View File
@@ -1,40 +0,0 @@
## init
```sh
go mod tidy
go mod init hello
```
## Build
```sh
go build .
go tool dist list ## list arch
```
## Types
int32,ing64,
int -> depends on arch
rune -> utf char
string -> array of runes
### Other
```sh
ldd ./hello
ls -lah
strip hello
```
[online compiler](https://godbolt.org)
### Notes
- standard lib is huge
- [beginer go](https://gobyexample.com/)
- [advanced go](https://go.dev/ref/spec)
-5
View File
@@ -1,5 +0,0 @@
module hello
go 1.24.3
require github.com/radovskyb/watcher v1.0.7 // indirect
BIN
View File
Binary file not shown.
-62
View File
@@ -1,62 +0,0 @@
package main
import (
"net/http"
)
type Point struct {
x int
y int
}
type Boja int
const (
plava = iota //asc
zuta
crvena
)
const (
plava = iota << 1
zuta // 010
crvena // 100
)
type Vektor2d struct {
x int
y int
}
type Vektor3d struct {
x ,y, z int
}
type(p Point) D
type Vektor interface {
Duzina() float32
}
func main() {
p:= Vektor2d[
x:1,
y:1
]
fmt.Println(p.)
// web server
http.HandleFunc("/", a )
http.ListenAndServe(":8080", nil)
}
func a(w http.ResponseWriter, r *http.Request){
w.Write([]byte("Hello Web"))
}
-45
View File
@@ -1,45 +0,0 @@
//go:build exclude
package main
import "fmt"
func main() {
var a int
var s string = "hello world " + "!!!"
var c = 5
a = a + 1
b := 1
b := []byte(a)
c := string(b)
_ = b
_ = c
fmt.Println("Hello Wordl", "qwe")
fmt.Println(s)
{
d = d
}
d := 5
f(d)
fmt.Println(a, "1")
// std lib
a : = []byte{1,2,3,4}
fmt.Println(hex.EncodeToString(a))
crypto.MD5.New()
}
func f(str *int) {
a=1
}
-20
View File
@@ -1,20 +0,0 @@
//go:build exclude
package main
import (
"net/http"
)
func main() {
// web server
http.HandleFunc("/", a )
http.ListenAndServe(":8080", nil)
}
func a(w http.ResponseWriter, r *http.Request){
w.Write([]byte("Hello Web"))
}
Binary file not shown.
-3
View File
@@ -1,3 +0,0 @@
module dmz
go 1.25.1
-100
View File
@@ -1,100 +0,0 @@
package main
import (
"encoding/json"
"html/template"
"fmt"
"net/http"
// "github.com/radovskyb/watcher"
)
func main(){
// w := watcher.New()
port := ":8080"
http.HandleFunc("/{$}", HtmlContentMiddleware(HomeHandler))
http.HandleFunc("/about", HtmlContentMiddleware(AboutHandler))
http.HandleFunc("GET /api", HtmlContentMiddleware(ApiHandler))
http.HandleFunc("POST /api", HtmlContentMiddleware(ApiHandler))
http.HandleFunc("/", NotFoundHandler)
fmt.Println("http://localhost"+port)
http.ListenAndServe(port, nil)
}
type handleFunc func(w http.ResponseWriter, r *http.Request)
func HtmlContentMiddleware(f handleFunc) handleFunc {
return func(w http.ResponseWriter, r *http.Request){
w.Header().Add("Content-Type", "text/html")
f(w,r)
}
}
func HomeHandler(w http.ResponseWriter, r *http.Request){
// data := struct{
// Name string
// }{
// Name: "Coja",
// }
temp := template.New("home")
temp.Parse(baseTemplate)
temp.Execute(w,messages)
// home := "<html><body><i>Hello world</i></body></html>"
// w.Header().Add("Content-Type", "text/html")
w.Write(temp)
}
func AboutHandler(w http.ResponseWriter, r *http.Request){
// w.Header().Add("Content-Type", "text/html")
w.Write([]byte("about"))
}
func NotFoundHandler(w http.ResponseWriter, r *http.Request){
// w.Header().Add("Content-Type", "text/html")
w.WriteHeader(http.StatusNotFound)
w.Write([]byte("404 Not Found"))
}
func ApiHandler(w http.ResponseWriter, r *http.Request){
w.Header().Add("Content-Type", "application/json")
w.WriteHeader(http.StatusNotFound)
// w.Write([]byte("[1,2,3]"))
var filteredMessages []Message
userParam := r.URL.Query().Get("user")
if userParam != ""{
for _ ,m:=range messages {
if userParam == m.User{
filteredMessages = append(filteredMessages, m)
}
}
} else{
filteredMessages = messages
}
json.NewEncoder(w).Encode(filteredMessages)
}
func NewMessageHandler(w http.ResponseWriter, r *http.Request){
var message Message
err := json.NewDecoder(r.Body).Decode(&message)
userParam := r.URL.Query().Get("user")
if err != nil{
w.WriteHeader(http.StatusBadRequest)
return
}
if userParam != ""{
w.WriteHeader(http.StatusBadRequest)
return
}
// messages.append(messages, message)
}
-25
View File
@@ -1,25 +0,0 @@
package main
type Message struct {
Content string
User string
}
var messages []Message = []Message {
{
Content: "hi",
User: "dmz",
},
{
Content: "hello",
User: "admin",
},
{
Content: "sup?",
User: "dmz",
},
{
Content: "s3nd nud3s",
User: "admin",
},
}
-20
View File
@@ -1,20 +0,0 @@
package main
var baseTemplate =`
<html>
<head>
<title>Home</title>
<style>
p {
background-color: #f4f4f4;
border-radius: 5px;
}
</syle>
</head>
<body>
{{range .}}
<p>{{.Content}} {{.Name}}</p>
{{end}}
</body>
</html>
`
-8
View File
@@ -1,8 +0,0 @@
.PHONY: build run
build:
presenterm privacy-presenterm.md -e
run:
presenterm privacy-presenterm.md
-2
View File
@@ -1,2 +0,0 @@
Next sunday, on [date], we will have a lecture about Digital privacy and security in Serbia, hosted by local activists from Decentrala, a hackerspace with expertise in such local issues. This will be a great opportunity for anyone who moved to Serbia to learn about the local survailance, laws and ways to defend yourselves. This talk can be exceptionally usefull to any activists or anyone worried about their digital security.
Lecture will start at [time] and later we will have a Q&A session to address all of your concerns.
-5
View File
@@ -1,5 +0,0 @@
Title: Digital privacy and security in Serbia
Lecturers: fram3d and coja form Decentrala
Descrition: We will analyze the current state of digital privacy in Serbia and the relationship between the government and private sector in the survaliance industry. This talk will go over best tools and practices for personal and collective information security as of 2026 to get the audiance prepared as possible for the constantly growing treat in this area from both government and private actors.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 233 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 341 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 617 KiB

-172
View File
@@ -1,172 +0,0 @@
---
title: Digital Privacy
author: Decentrala
theme:
terminal_font_size: 28
margin:
percent: 8
override:
footer:
style: template
center: '**Digital Privacy** | decentrala.org'
right: "{current_slide} / {total_slides}"
height: 1
---
<!-- alignment: center -->
# 1. Introduction
- dmz.rs
- xecut
- talks and workshops
- services (forum, xmpp)
- direct democracy
<!-- end_slide -->
<!-- alignment: center -->
# 2. Police
- SIM cards need ID now
- VTK
- Relationship with social media companies
- Hard to enforce without your cooperation
![image:width:35%](img/welltrained.png)
<!-- end_slide -->
<!-- alignment: center -->
# 3. Survaliance infrastruture
- Cameras (Goverment, public transport, private)
- Mobile Towers
- Spy vans
- Facial recognition
- Data collection
- Data trading
![image:width:20%](img/camera.jpg)
<!-- end_slide -->
<!-- alignment: center -->
# 4. Comunication Apps
- Viber, Whatsup
- Telegram, Signal
All need phone numbers!
- XMPP (Conversations, Gajim,..)
- Matrix, Briar, Jami,..
<!-- end_slide -->
<!-- alignment: center -->
# 5. Digital safeguard
![image:width:50%](img/digital-clone.jpg)
- Privacy vs. Anonymity
- Digital fingerprinting
- Profiling
- Digital clone
<!-- end_slide -->
<!-- alignment: center -->
## 5.1. PC
- MacOS
- Windows
- Linux (Mint, CachyOS, Debian)
![image:width:25%](img/linux-family.png)
<!-- end_slide -->
<!-- alignment: center -->
## 5.2. Sugested practices
- Block adds
- uOriginBlock
- Network block (piHole, Adguard,..)
- Privacy browsers
- Firefox forks like Librewolf
- Ungoogled chromium
- Tor
- Alternative search engine
- DuckDuckGo
- SearXNG
- many more
- Avoid [big tech] companies
- Fediverse alternatives
- Alternative clients
- Avoid auth
- Beware of LLMs
- Self-hosting
<!-- end_slide -->
<!-- alignment: center -->
## 5.3. Mobile
- iOS
- Android
- CustomROM
- Linux
<!-- end_slide -->
<!-- alignment: center -->
## 5.4. Degoogling
![image:width:12%](img/degoogle.jpg)
- Hunt for free and open source alternatives
- Aurora store
- Obtanium
- F-Droid
- Reviewed and flagged with antifeatures
- EU is opting out
<!-- end_slide -->
<!-- alignment: center -->
## 5.5. CustomROM
- Google blocking the sideloading
![image:width:25%](img/sideload.jpeg)
- AOSP
- Unlock the bootloader
- LinageOS and forks
- GrapheneOS (soon Motorola)
- A lot more, depends on model
- Linux phone (PostmakertOS, Droidian,...)
<!-- end_slide -->
<!-- alignment: center -->
# 6. Networks
- Speed vs Privacy
- Logging all conetections: (ISPs, Servers)
- Law will not let you be anonymous
- Connection to the Internet
<!-- end_slide -->
<!-- alignment: center -->
# 6.1. Server vs P2P
![image:width:100%](img/p2p.png)
<!-- end_slide -->
<!-- alignment: center -->
# 6.2 Torrent
![image:width:100%](img/piratebay.jpg)
<!-- end_slide -->
<!-- alignment: center -->
# 6.3 ISP and VPNs
![image:width:90%](img/vpn.png)
<!-- end_slide -->
<!-- alignment: center -->
# 6.4 Tor and I2P
![image:width:40%](img/tor.png)
![image:width:40%](img/i2p.png)
-47
View File
@@ -1,47 +0,0 @@
# DIGITAL PRIVACY
![Image](slides/privacy/1.jpeg)
# Introduction
- dmz.rs
- xecut
- talks and workshops
- direct democracy
# Police
- SIM cards need ID now
- VTK
- Relationship with social media companies
- Hard to enforce without your cooperation
# Survaliance infrastruture
- Cameras (Goverment, public transport, private)
- Mobile Towers
- Spy vans
# Apps
- Viber, Whatsup
- Telegram, Signal
- All need phone numbers!
- Conversations
# Systems
- Andorid
- IOS
- Windows
- MacOS
- Linux
# Networks
- Server vs P2P
- Torrent
- ISP and VPNs
- Tor and I2P