Setting Up local repo

HELLO ALL,

MY Name is Johnathon .

I was wondering that. There is any way to setup local repo of apt for build Environment in Parrot && any way for maintain apt repo at github?

I have no knowledge of how apt repo works and i am in urgent

i wanted to include few deb files only and also have work for long time , so all time build download files cause cost . so maybe there is anyway for it? .

Thanks , Johnathon

Ohk, so i understand your condition but not know what you trying to build
So i will answer your other question
As You need urgent . i am not going to explain all,

  1. Setup local repo & deb files

Yes we can, and your condition make sense for it.

  • Download Your debs source which you want to add
sudo apt source Yourpackge
cd Yourpackge 

Change a bit changealog

dpkg-buildpackage 

it will build with depend

  • setup repo
mkdir localrepo
cd localrepo
mkdir -p conf incoming dists/YourCode/main/binary-Yourarch pool/main db 
touch conf/distributions 

Now in distributions file add

Origin: Johnathan
Label: Johnathan-apt-repo 
Suite: stable
Codename: Yourcodename 
Architectures: Yourarchs
Components: main 
Description: small description 

Now,
You hace to make release file
Im which copy all your deb files control file content

WAIT WE USE REPO-MANAGER

sudo apt install reprepro

[Using repo-Manager is good idea, and also saves Your time, otherwise you can creste your own repo-manager]

reprepro includedeb YourcodeName yourdebfiles

Note:
[It will do all thus stuff automatically , sorry you not need to do anything before that i say in setting up repo, you just need to create conf ,but i changed idea during writing 😉]

Ohk now Your repo is ready
And look like this

[amzker][~/Amzux-repo]
localhost 08:33 $>>tree && cat conf/distributions       .
|-- conf
|   `-- distributions
|-- db
|   |-- checksums.db
|   |-- contents.cache.db
|   |-- packages.db
|   |-- references.db
|   |-- release.caches.db
|   `-- version
|-- dists
|   `-- Zubbu
|       |-- Release
|       `-- main
|           `-- binary-amd64
|               |-- Packages
|               |-- Packages.gz
|               `-- Release
`-- pool
    `-- main
        |-- a
        |   `-- amsnap
        |       `-- amsnap_0.2_amd64.deb
        |-- c
        |   `-- console
        |       `-- console_0.3_amd64.deb
        `-- u
            `-- update-23-6-2019
                `-- update-23-6-2019_0.1_amd64.deb

14 directories, 14 files
Origin: Amzker
Label: Amzux-repo
Suite: stable
Codename: Zubbu
Architectures: amd64
Components: main
Description: Amzux-repo ,containing meta packages

Here Zubbu is my codename. You can set yours

  1. making server

python3 -m http.server 80

Now add This line into your sources.list

deb [trusted=yes arch=Yourarches] https://localhost:80 YourcodeName main

And then install
apt-transport-https
or simmilar package i forget exact packagename

run
sudo apt update

And all done ,

[Add into your source list as my mean into your build env]

  1. Setting Up at github

Good idea , Try this (maybe work)

Type this into your repo(which we created jist but ago)

  • Create repository at github
  • push it
suro rm -r .git
git init
git add -A
git --config global user.name "johnathon"
git --config global user.email "youmail"
git commit -a -m "Trying"
git remote add origin  git@github.com:Yourusername/Repo
git pull
git push -u origin master 

Then all done , try into your source file

deb [trusted=yes arch=Yourarchs] https://raw.githubusercontent.com/YourUsrbame/Repo/master Yourcodename main```

I was just thinking on that gpg won't interfere , 
Make sure you set your build Env into VM and in Debian not in Parrot
2 Likes

Thanks i will try

Man reprepro skipping my deb files ,Output will be skipping files
And i not know what is codename

PS: i don’t believe This method will be work , because i didn’t find it on searching

Because You need to make proper deb package
Control file is very important, if you miss any field
Deb will be not accepted

Set whatever you want , but same as in conf file
Like mine is Zubbu

This method 100% work, you didn’t find because ,no one maybe Explain this much low,
I not explained all things , i just gives you step by step

Here is example of hosted repo

https://deb.parrotsec.org

Maybe You will start learning all From Debian Docs (1200++ pages)

1 Like

i saw your answer to my one Friend ,
He tell me your answer is full bullshit
we not need control file importance into deb files
Just need to do dpkg -i

Just give me official docs link for making repo

Debian.org

1 Like