Skip to content
Commits on Source (11)
......@@ -103,3 +103,4 @@ c3704b344c426151786a9760c4c62c4a ./slpkg-3.1.7.tar.gz
33dddeeea7eb50420455a82bd32bce7c ./slpkg-3.2.3.tar.gz
57ba5c20050411095f2ae732e5012576 ./slpkg-3.2.4.tar.gz
ce4657f7e644ad58adb21eddfcea495a ./slpkg-3.2.5.tar.gz
95b595479e7fb6e0ed934f33a74c267c ./slpkg-3.2.6.tar.gz
3.2.7 - 09/04/2017
Updated:
- Alien's repositories {alien, ktown, multi} #83 (Thanks to travis-82)
- Rworkman's repository {rlw} #83
- Package security message for network and sbo repository
Added:
- Sbosrcarch as secondary repository for source files #82 (Thanks to
travis-82)
- Rebuild packages from sbo repository when upgrading #85 (Thanks to bhreach)
3.2.6 - 22/02/2017
Updated:
- Pattern for configuration file
......
......@@ -4,7 +4,7 @@
:target: https://travis-ci.org/dslackw/slpkg
.. image:: https://landscape.io/github/dslackw/slpkg/master/landscape.png
:target: https://landscape.io/github/dslackw/slpkg/master
.. image:: https://img.shields.io/codacy/6464ba0bd1e3.2.68388c71a34b3a5e8.svg
.. image:: https://img.shields.io/codacy/51c30a1fe61241edaab414ecde44488d.svg
:target: https://www.codacy.com/public/dzlatanidis/slpkg/dashboard
.. image:: https://img.shields.io/pypi/dm/slpkg.svg
:target: https://pypi.python.org/pypi/slpkg
......@@ -20,7 +20,7 @@
:target: https://github.com/dslackw/slpkg/issues
Slpkg v3.2.6
Slpkg v3.2.7
============
|
......@@ -79,8 +79,8 @@ Download latest release:
Required root privileges
$ tar xvf slpkg-3.2.6.tar.gz
$ cd slpkg-3.2.6
$ tar xvf slpkg-3.2.7.tar.gz
$ cd slpkg-3.2.7
$ ./install.sh
If you want to build slpkg for use with Python 3.x (needs the
......@@ -116,9 +116,9 @@ Using pip:
Binary packages:
Slackware: `slpkg-3.2.6-i586-1_dsw.txz <https://github.com/dslackw/slpkg/releases/download/v3.2.6/slpkg-3.2.6-i586-1_dsw.txz>`_
Slackware: `slpkg-3.2.7-i586-1_dsw.txz <https://github.com/dslackw/slpkg/releases/download/v3.2.7/slpkg-3.2.7-i586-1_dsw.txz>`_
Slackware64: `slpkg-3.2.6-x86_64-1_dsw.txz <https://github.com/dslackw/slpkg/releases/download/v3.2.6/slpkg-3.2.6-x86_64-1_dsw.txz>`_
Slackware64: `slpkg-3.2.7-x86_64-1_dsw.txz <https://github.com/dslackw/slpkg/releases/download/v3.2.7/slpkg-3.2.7-x86_64-1_dsw.txz>`_
Optional dependencies
......@@ -173,13 +173,13 @@ Default available Repositories:
- `Slack <http://www.slackware.com/>`_
Arch: {x86, x86_64}
Versions: {3.3, 8.1, 9.0, 9.1, 10.0, 10.1, 10.2, 11.0, 12.0, 12.2, 13.0, 13.37, 14.0, 14.1, 14.2, current}
- `Alien's <http://taper.alienbase.nl/mirrors/people/alien/sbrepos/>`_
- `Alien's <http://bear.alienbase.nl/mirrors/people/alien/sbrepos/>`_
Arch: {x86, x86_64}
Versions: {13.0, 13.1, 13.37, 14.0, 14.1, 14.2, current}
- `Slacky <http://repository.slacky.eu/>`_
Arch: {x86, x86_64}
Versions: {11.0, 12.0, 12.1, 12.2, 13.0, 13.1, 13.37, 14.0, 14.1, 14.2}
- `Robby's <http://rlworkman.net/pkgs/>`_
- `Robby's <http://slackware.uk/people/rlworkman/>`_
Arch: {x86, x86_64}
Versions: {11.0, 12.0, 12.1, 12.2, 13.0, 13.1, 13.37, 14.0, 14.1, 14,2}
- `Conraid's <http://slack.conraid.net/repository/slackware64-current>`_
......@@ -191,7 +191,7 @@ Default available Repositories:
- `Alien's ktown <http://alien.slackbook.org/ktown/>`_
Arch: {x86, x86_64}
Versions: {13.37, 14.0, 14.1, 14.2, current}
- `Alien's multi <http://www.slackware.com/~alien/multilib/>`_
- `Alien's multi <http://bear.alienbase.nl/mirrors/people/alien/multilib/>`_
Arch: {x86_64}
Versions: {13.0, 13.1, 13.37, 14.0, 14.1, 14.2, current}
- `Slacke E17 and E18 <http://ngc891.blogdns.net/pub/>`_
......@@ -203,7 +203,7 @@ Default available Repositories:
- `Slackel <http://www.slackel.gr/repo/>`_
Arch: {x86, x86_64}
Versions: {current}
- `Restricted <http://taper.alienbase.nl/mirrors/people/alien/restricted_slackbuilds/>`_
- `Restricted <http://bear.alienbase.nl/mirrors/people/alien/restricted_slackbuilds/>`_
Arch: {x86, x86_64}
Versions: {11.0, 12.0, 12.1, 12.2, 13.0, 13.1, 13.37, 14.0, 14,1, 14.2, current}
- `MATE Desktop Environment <http://slackware.org.uk/msb/>`_
......
......@@ -36,17 +36,17 @@
#
# NAME URL
sbo http://slackbuilds.org/slackbuilds/
rlw http://rlworkman.net/pkgs/
alien http://taper.alienbase.nl/mirrors/people/alien/sbrepos/
rlw http://slackware.uk/people/rlworkman/
alien http://bear.alienbase.nl/mirrors/people/alien/sbrepos/
slacky http://repository.slacky.eu/
conrad http://slack.conraid.net/repository/slackware64-current/
slonly https://slackonly.com/pub/packages/
ktown http://alien.slackbook.org/ktown/
multi http://www.slackware.com/~alien/multilib/
multi http://bear.alienbase.nl/mirrors/people/alien/multilib/
slacke http://ngc891.blogdns.net/pub/
salix http://download.salixos.org/
slackl http://www.slackel.gr/repo/
rested http://taper.alienbase.nl/mirrors/people/alien/restricted_slackbuilds/
rested http://bear.alienbase.nl/mirrors/people/alien/restricted_slackbuilds/
msb http://slackware.org.uk/msb/
csb http://slackware.uk/csb/
connos https://connochaetos.org/slack-n-free/
......
......@@ -29,7 +29,11 @@ RELEASE=stable
# Build directory for repository "sbo" slackbuilds.org. In this
# directory downloaded sources and scripts for building.
BUILD_PATH=/tmp/slpkg/build/
#
# Alternative source downloads for the "sbo" repository. Default is "off".
SBOSRCARCH=off
SBOSRCARCH_LINK=http://slackware.uk/sbosrcarch/by-name/
# Download directory for others repositories that use binaries files
# for installation.
PACKAGES=/tmp/slpkg/packages/
......@@ -38,7 +42,7 @@ PACKAGES=/tmp/slpkg/packages/
PATCHES=/tmp/slpkg/patches/
# If CHECKMD5 is "on" the system will check all downloaded
# sources and Slackware packages. Default in "on".
# sources and Slackware packages. Default is "on".
CHECKMD5=on
# Delete all downloaded files if DEL_ALL is "on". Default is "on".
......@@ -116,6 +120,5 @@ EDITOR=nano
# If you don't want slpkg downgrade packages, setting this variable to "on".
# Warning: Possible failure building packages or running applications after
# install.
# Default is "off".
# install. Default is "off".
NOT_DOWNGRADE=off
......@@ -39,8 +39,8 @@ Usage: slpkg [COMMANDS|OPTIONS] {repository|package...}
[list, build, install, build-install]]
[-g [print, edit, reset]]
[-l [repository], --index, --installed, --name]
[-c [repository], --upgrade, --skip=[...], --resolve-off,
--checklist]
[-c [repository], --upgrade, --rebuild, --skip=[...],
--resolve-off, --checklist]
[-s [repository] [package...], --rebuild, --reinstall,
--resolve-off, --download-only,
--directory-prefix=[dir],
......@@ -204,7 +204,7 @@ Additional options:
\fB--name\fP : Print package name only.
.SS -c, --check, check if your packages is up to date
\fBslpkg\fP \fB-c\fP <\fIrepository\fP> \fB--upgrade\fP \fB--skip=[packages...]\fP,
\fBslpkg\fP \fB-c\fP <\fIrepository\fP> \fB--upgrade\fP \fB--rebuild\fP \fB--skip=[packages...]\fP,
\fB--resolve-off\fP, \fB--checklist\fP
.PP
Check your packages if up to date. Slackware patches repository works independently of the
......@@ -217,6 +217,8 @@ Additional options:
.PP
\fB--upgrade\fP : Check and install packages for upgrade.
.PP
\fB--rebuild\fP : Rebuild packages from sbo repository.
.PP
\fB--resolve-off\fP : Switch off automatic resolve dependencies.
.PP
\fB--skip=[packages...]\fP : Skip packages from upgrade separate by comma like "slpkg -c sbo --skip=jdk,pep8,pip" (See REGEX).
......
......@@ -78,7 +78,7 @@ class MetaData(object):
__all__ = "slpkg"
__author__ = "dslackw"
__version_info__ = (3, 2, 6)
__version_info__ = (3, 2, 7)
__version__ = "{0}.{1}.{2}".format(*__version_info__)
__license__ = "GNU General Public License v3 (GPLv3)"
__email__ = "d.zlatanidis@gmail.com"
......@@ -103,6 +103,8 @@ class MetaData(object):
"salix", "slackl", "rested", "msb{1.16}",
"csb", "connos", "mles{desktop}"],
"BUILD_PATH": "/tmp/slpkg/build/",
"SBOSRCARCH": "off",
"SBOSRCARCH_LINK": "http://slackware.uk/sbosrcarch/by-name/",
"PACKAGES": "/tmp/slpkg/packages/",
"PATCHES": "/tmp/slpkg/patches/",
"CHECKMD5": "on",
......@@ -147,6 +149,8 @@ class MetaData(object):
# Set values from configuration file
slack_rel = _conf_slpkg["RELEASE"]
build_path = _conf_slpkg["BUILD_PATH"]
sbosrcarch = _conf_slpkg["SBOSRCARCH"]
sbosrcarch_link = _conf_slpkg["SBOSRCARCH_LINK"]
slpkg_tmp_packages = _conf_slpkg["PACKAGES"]
slpkg_tmp_patches = _conf_slpkg["PATCHES"]
checkmd5 = _conf_slpkg["CHECKMD5"]
......
......@@ -110,8 +110,8 @@ Optional arguments:
the system.
-c | --check, [repository], --upgrade, Check for updated packages from
--skip=[...], --resolve--off the repositories and upgrade or
--checklist install with all dependencies.
--rebuild --skip=[...], the repositories and upgrade or
--resolve-off, --checklist install with all dependencies.
-s | --sync, [repository] [package...], Sync packages. Install packages
--rebuild, --reinstall, directly from remote repositories
......@@ -193,8 +193,8 @@ def usage(repo):
[list, build, install, build-install]]
[-g [print, edit, reset]]
[-l [repository], --index, --installed, --name]
[-c [repository], --upgrade, --skip=[...], --resolve-off,
--checklist]
[-c [repository], --upgrade, --rebuild, --skip=[...],
--resolve-off, --checklist]
[-s [repository] [package...], --rebuild, --reinstall,
--resolve-off, --download-only,
--directory-prefix=[dir],
......
......@@ -292,7 +292,8 @@ class ArgParse(object):
"--upgrade",
"--skip=",
"--resolve-off",
"--checklist"
"--checklist",
"--rebuild"
]
flag, skip = self.__pkg_upgrade_flags(flags)
if (len(self.args) == 3 and self.args[0] in options and
......
......@@ -55,7 +55,6 @@ class SBoNetwork(object):
"""
def __init__(self, name, flag):
self.name = name
pkg_security([self.name])
self.flag = flag
self.meta = _meta_
self.msg = Msg()
......@@ -230,6 +229,7 @@ class SBoNetwork(object):
def choice_install(self):
"""Download, build and install package
"""
pkg_security([self.name])
if not find_package(self.prgnam, self.meta.pkg_path):
self.build()
self.install()
......@@ -360,6 +360,7 @@ class SBoNetwork(object):
def build(self):
"""Only build and create Slackware package
"""
pkg_security([self.name])
self.error_uns()
if self.FAULT:
print("")
......
......@@ -337,6 +337,8 @@ class SBoInstall(object):
sbo_url = sbo_search_pkg(pkg)
sbo_link = SBoLink(sbo_url).tar_gz()
script = sbo_link.split("/")[-1]
if self.meta.sbosrcarch in ["on", "ON"]:
src_link = self.sbosrcarsh(prgnam, sbo_link, src_link)
Download(self.build_folder, sbo_link.split(),
repo="sbo").start()
Download(self._SOURCES, src_link, repo="sbo").start()
......@@ -378,3 +380,14 @@ class SBoInstall(object):
"setting by user".format(name))
self.msg.template(78)
return True
def sbosrcarsh(self, prgnam, sbo_link, src_link):
"""Alternative repository for sbo sources"""
sources = []
name = "-".join(prgnam.split("-")[:-1])
category = "{0}/{1}/".format(sbo_link.split("/")[-2], name)
for link in src_link:
source = link.split("/")[-1]
sources.append("{0}{1}{2}".format(self.meta.sbosrcarch_link,
category, source))
return sources
......@@ -22,6 +22,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import os
import urllib2
from slpkg.__metadata__ import MetaData as _meta_
......@@ -38,6 +39,23 @@ class URL(object):
"""Open url and read
"""
try:
# testing proxy
proxies = {}
try:
proxies["http_proxy"] = os.environ['http_proxy']
except KeyError:
pass
try:
proxies["https_proxy"] = os.environ['https_proxy']
except KeyError:
pass
if len(proxies) != 0:
proxy = urllib2.ProxyHandler(proxies)
opener = urllib2.build_opener(proxy)
urllib2.install_opener(opener)
# end testing
f = urllib2.urlopen(self.link)
return f.read()
except (urllib2.URLError, ValueError):
......