Giter Site home page Giter Site logo

rpmconf's Introduction

rpmconf
tool to handle rpmnew and rpmsave files

What it does:
- run "rpmconf --help" and you will see :)
- it searches all config file of all installed packages and check if file with .rpmsave or .rpmnew exists.
- It allows you to see diff of this file against current file and can do merge.
- It allows you to keep current version or the other one (rpmsave or rpmnew one).
- it deletes .rpmsave and .rpmnew files which are identical to current file
- after your choice it deletes the unwanted file.
- it can search for all orphaned rpmsave and rpmnew files.
- it can dump diffs for unattended automation.

I provide only .zip and .tar.gz (automagically generated by GitHub) and .src.rpm.
If you are looking for .rpm files run either:
  yum install rpmconf
- at least in Fedora and EPEL - or check:
http://koji.fedoraproject.org/koji/packageinfo?packageID=8847


If you just want to see the difference between old and new files,
run rpmconf non-interactively like this (for one package):

    [user@host ~]$ rpmconf -oglibc -D
    --- /etc/nsswitch.conf  2013-07-02 13:55:25.000000000 +0000
    +++ /etc/nsswitch.conf.rpmnew   2012-10-22 15:46:43.000000000 +0000
    @@ -36,7 +36,7 @@
     initgroups: files

     #hosts:     db files nisplus nis dns
    -hosts:      files dns myhostname
    +hosts:      files dns

     # Example - obey only what nisplus tells us...
     #services:   nisplus [NOTFOUND=return] files

or like this for all packages:

    [user@host ~]$ rpmconf -D -a | head -20
    --- /etc/nsswitch.conf  2013-07-02 13:55:25.000000000 +0000
    +++ /etc/nsswitch.conf.rpmnew   2012-10-22 15:46:43.000000000 +0000
    @@ -36,7 +36,7 @@
     initgroups: files

     #hosts:     db files nisplus nis dns
    -hosts:      files dns myhostname
    +hosts:      files dns

     # Example - obey only what nisplus tells us...
     #services:   nisplus [NOTFOUND=return] files
    --- /usr/share/info/dir 2013-12-29 02:37:24.067000000 +0000
    +++ /usr/share/info/dir.rpmnew  2013-03-21 13:20:38.000000000 +0000
    @@ -15,1978 +15,8 @@

     * Menu:

    -Archiving
    -* Cpio: (cpio).                 Copy-in-copy-out archiver to tape or disk.
    -* Tar: (tar).                   Making tape (or disk) archives.


How to build package:

  yum install tito
  cd source
  tito build --rpm

Hacking:
  commit your code (localy is fine)
  cd source
  tito build --test --rpm

History:
Originally there was no such tool for RPM world. I came from Debian world where handling
of configuration files is directly in apt. Since rpm is non-interactive, such handling
must be in separate tool. Therefore I started creating rpmconf, which is very similar
to Debian configuration handling. I even try to copy as much as possible the frontend
strings and formatting as I hope that sysadmins appreciate unified UI in Debian and Fedora.

License: GPLv3
Author: Miroslav Suchy <[email protected]>

rpmconf's People

Contributors

glensc avatar ignatenkobrain avatar jumanjiman avatar kgeis avatar mavit avatar mcspr avatar xsuchy avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.