hamara2.0_svastik.md 3.23 KB
Newer Older
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
# Hamara2.0 Svastik 

An ISO image produced by building hamara-packages, fetching upstream debian mirrors 
and merging them into one.


```
┌─────────────────────────────┐
│                             │
│       Debian Testing        │
│             - main          │
│             - contrib       ├───────────►
│             - non-free      │           │
│                             │           │
└─────────────────────────────┘           │
                                          │          ┌───────────────────┐
                                          │          │                   │
                                          │          │                   │
                                          │          │                   │
                                          └─────────►│    Hamara 2.0     │
┌──────────────────────────────┐          ▲          │      - svastik    │
│       hamara-packages        │          │          │                   │
│                              ├──────────┘          │                   │
└──────────────────────────────┘                     └───────────────────┘

```

## Infrastructure-setup

https://git.hamaralinux.org/hamara-developers/hamara-infra/blob/master/hetzner_setup.md

## Build process

### 1. Build hamara packages:

Source Code: https://git.hamaralinux.org/devel/packages/swastik

Build job: https://builds.hamaralinux.org/job/Hamara-Packages/


This job will build the packages and copy them over to aptly container

### 2. Create repo, clone upstream mirrors:

Ref:  https://git.hamaralinux.org/hamara-developers/Documentation/blob/master/aptly/aptly-based-repository-setup.md

Upstream Ref: https://www.aptly.info/doc/commands/


```
# create a repo for adding hamara-packages
aptly repo create hamara-packages
```
```
# add the packages delivered by jenkins job to repo
aptly repo add hamara-packages /opt/aptly/hamara_custom_packages/
```
```
# Create a snapshot of custom hamara-packages
aptly create snapshot hamara-svastik-inhouse-<date> from repo hamara-packages
```
```
# Merge all snapshots into one
aptly snapshot merge hamara-svastik-merged hamara-svastik-inhouse-19052021 hamara-sugam-v3-non-free-18012021 hamara-sugam-v3-main-18012021 hamara-sugam-v3-contrib-18012021
```

```
# Publish the snapshot Note: this step will ask for gpg password can get it from vault.hamaralinux.org
aptly publish snapshot -architectures=amd64 -distribution=svastik hamara-svastik-merged
```
```
# For updating mirrors

aptly mirror update <mirror-name>
```

### 3. Building the ISO image

Once the snapshot is published by aptly the HamaralinuxISObuilder job can be triggered to build and publish ISO image.

Jenkins Job: https://builds.hamaralinux.org/job/HamaralinuxISObuilder/

Source code: https://git.hamaralinux.org/hamara-developers/hamara-live-build