Upgrade to Pro — share decks privately, control downloads, hide ads and more …

RPM Sphere Repository

趙惟倫
December 29, 2018

RPM Sphere Repository

趙惟倫

December 29, 2018
Tweet

More Decks by 趙惟倫

Other Decks in How-to & DIY

Transcript

  1. Wei-Lun Chao
    29 Dec. 2018
    RPM Sphere Repository
    RPM Sphere Repository
    Fedora Release Party

    View Slide

  2. rpmsphere.github.io
    rpmsphere.github.io
    Welcome to RPM Sphere repository
    Collection of extra packages for Fedora Linux. So far supporting x86_64 and
    aarch64 architectures. Feel free to promote them in any form.
    Release
    Only the last builds are kept in the repository. Packages will be rolling-
    updated occasionally, and not necessarily against the current version of
    application or system.
    Install
    Recommended is to import repositories from RPM Fusion first, then install
    rpmsphere-release package to add this repository.
    Configuration
    The installed /etc/yum.repos.d/rpmsphere.repo could be modified manually.
    Sub-repositories “basearch” and “noarch” are enabled by default, while
    “source” and “caution” are disabled.
    Hosted on GitHub Pages — Theme by orderedlist
    RPM Sphere
    2700+ packages for Fedora 30
    View My GitHub Profile

    View Slide

  3. Installation (User)
    Installation (User)
    [rpmsphere]
    name=RPM Sphere - Basearch
    baseurl=https://github.com/rpmsphere/$basearch/raw/master/
    enabled=1
    [rpmsphere-noarch]
    name=RPM Sphere - Noarch
    baseurl=https://github.com/rpmsphere/noarch/raw/master/
    enabled=1
    [rpmsphere-source]
    name=RPM Sphere - Source
    baseurl=https://github.com/rpmsphere/source/raw/master/
    enabled=0
    [rpmsphere-caution]
    name=RPM Sphere - Caution
    baseurl=https://github.com/rpmsphere/caution/raw/master/
    enabled=0
    [rpmsphere]
    name=RPM Sphere - Basearch
    baseurl=https://github.com/rpmsphere/$basearch/raw/master/
    enabled=1
    [rpmsphere-noarch]
    name=RPM Sphere - Noarch
    baseurl=https://github.com/rpmsphere/noarch/raw/master/
    enabled=1
    [rpmsphere-source]
    name=RPM Sphere - Source
    baseurl=https://github.com/rpmsphere/source/raw/master/
    enabled=0
    [rpmsphere-caution]
    name=RPM Sphere - Caution
    baseurl=https://github.com/rpmsphere/caution/raw/master/
    enabled=0
    > rpm -Uvh rpmsphere-release-30-1.noarch.rpm
    > $EDITOR /etc/yum.repos.d/rpmsphere.repo

    View Slide

  4. Setting Up (Developer)
    Setting Up (Developer)
    Initial git configuration
    Create new (sub-)repositories
    Select a theme for rpmsphere.github.io
    Clone (sub-)repositories to local
    > cd $HOME/Github/rpmsphere
    > for i in rpmsphere.github.io x86_64 aarch64 noarch source caution
    > do
    > git clone https://github.com/rpmsphere/$i.git
    > done
    > dnf install git
    > git config --global user.name "Wei-Lun Chao"
    > git config --global user.email "[email protected]"
    > git config --global core.editor "joe"
    > git config --global core.quotepath "false"

    View Slide

  5. Rebuild&Update (Developer)
    Rebuild&Update (Developer)
    > cd ../SRPMS
    > for j in {0..9} {a..z}; do
    > mv $j*.src.rpm $HOME/Github/rpmsphere/source/$j/
    > done
    > cd ../RPMS
    > for i in *; do
    > for j in {0..9} {a..z}; do
    > mv $i/$j*.$i.rpm $HOME/Github/rpmsphere/$i/$j/
    > done
    > done
    >
    > cd $HOME/Github/rpmsphere
    > for i in *; do
    > cd $i
    > if [ "$i" != "rpmsphere.github.io" ]; then
    > createrepo_c .
    > fi
    > git add .
    > git commit -m 'update packages'
    > git push origin master
    > cd ..
    > done
    > cd $HOME/Github/rpmsphere
    > cd rpmsphere.github.io
    > $EDITOR _config.yml
    > $EDITOR index.md
    > $EDITOR rpmsphere.repo
    >
    > cd $HOME/Github/rpmsphere
    > cd source
    > for i in */*.src.rpm ; do
    > dnf -y builddep $i
    > rpmbuild --rebuild $i
    > done
    >
    > cd $HOME/rpmbuild/SPECS
    > for i in *.spec; do
    > $EDITOR $i
    > rpmbuild -ba $i
    > done

    View Slide

  6. Management
    Management
    > dnf install dnf-utils
    > for i in $HOSTTYPE noarch; do
    > repoclosure --check rpmsphere-$i
    > done
    for User
    for Developer
    > dnf --repo=rpmsphere-caution --available list
    > dnf --repo=rpmsphere-caution install greenfoot
    > dnf --repo=rpmsphere-caution download r8168
    > dnf builddep r8168-8.046.00-1.src.rpm
    > rpmbuild --rebuild r8168-8.046.00-1.src.rpm
    > rpm -Uvh /root/rpmbuild/RPMS/x86_64/r8168-kmod-8.046.00-1.x86_64.rpm

    View Slide

  7. Other possible hosts
    Other possible hosts
    Copr
    baseurl=http://copr-be.cloud.fedoraproject.org/results/bluebat/
    ppa/fedora-$releasever-$basearch/
    OBS
    baseurl=http://download.opensuse.org/repositories/home:/
    bluebat/Fedora_$releasever/
    Dropbox
    baseurl=https://dl.dropboxusercontent.com/u/12345678/

    View Slide

  8. Slides Template :資訊未來大自由 by Eric Sun
    Thank you!

    View Slide