Should I be concerned about python 3.6 having no code signature? - macos

I recently downloaded a program that monitors all incoming and outgoing connections and let's me assign firewall rules on the fly. It also conveniently checks the code signature of programs to verify I am not unknowingly running a modified program.
Now whenever I try to run python3.6.6, I get this little warning. Me being paranoid, I deny access and as a consequence am unable to confidently use my anaconda distribution which uses this executable.
which python --> ~/Users/me/anaconda3/bin/python
I already compared the md5 hash of the original tarball file with a new one downloaded directly from the anaconda repository and they matched.
I am not sure exactly how to proceed...
Is there a way to manually reinstall python into anaconda without using conda? Or would I be better off deleting my anaconda distribution and performing a fresh install? OR is their an alternative that is much simpler and preferred :)?
Thanks

So I decided to backup my anaconda3 directory and them remove the entire directory which included the python3.6 in question.
I reinstalled anaconda3 with the newest release and littlesnitch reported the same suspicion, this time with python 3.7 as that was the newest version available.
This unexpected result drove me to dig deeper and following my research I came across this https://github.com/Homebrew/homebrew-core/issues/20193 and this https://github.com/Homebrew/homebrew-core/issues/18870.
In summary, it is an invalid code signature, but it's also a bug.

Related

Install package in separate area for read-only Anaconda Linux install

at work we have a central, read-only, Linux Anaconda installation, and several projects need library packages for their individual project members.
Is there a way to conda install packages in a writable area set aside for each project?
Our Linux servers are also not directly web connected, but we can transfer data from a Windows machine that is. Is there a way for the windows conda to download data for our Linux install in such a way that I can transfer the downloaded files to Linux and then finish the install on Linux , with the conda linux not needing a direct web connection?
Thanks in advance :-)
The best answer to this question is a bit oblique: the Anaconda Distribution is designed for a single user on a single system with unrestricted access to the Internet. Any other use is considered "off label" and YMMV, though there are no license restrictions in place preventing you from trying to use it as you see fit. Anaconda Enterprise is the commercial product that is specifically designed for multi-user, server-deployed Anaconda with firewall restrictions. Security, governance, indemnification, support, collaboration, etc. etc. Check out https://www.continuum.io/ for more details.
But there are "work around" ways to achieve what you want, albeit complicated ones. For it to be reliable, reproducible, and maintainable you're going to end up reimplementing a lot of what is in Anaconda Enterprsie. Here are some tips:
Check out the "conda in multi-user environments" documentation
Check out the "Centralized Anaconda installation" documentation
Regular user alice for project foo can do conda create -p /nfs/project/foo/envs/custompython --offline anaconda; conda activate /nfs/project/foo/envs/custompython; conda install pkg1 pkg2 pkg3
You're going to run into ownership/permission issues. If you have sensible umask values then when alice's colleague bob tries to update pkg2 in the foo project he'll discover that he can't unlink the files alice wrote there. There is stuff you can do (as the IT admin) with chown, or alice can do with chmod, but its all a bit of a bother and there are lots of ways you can paralyze a conda environment because it is expecting "writability" to be binary for a particular environment. There is a long history in the conda GH issue tracker of people (myself included) shooting themselves in the foot by starting a conda env setup with one account and then making mods with another account that bork out half way through, leaving everything inconsistent.
Be careful about .condarc files. My advice: avoid them everywhere but in the base Anaconda installation (say, inside /opt/anaconda/.condarc). All sorts of weird stuff can happen when multiple overlaying .condarc files come together (the docs reference above discusses this).
People can create their own environments in an "offline" mode so long as the packages specified in those new environments (and their dependencies) are a subset of the packages available in the base environment (or subsequently added to the package cache), taking into account versions as well, of course.
You can download packages using your online Windows machine by grabbing them from repo.continuum.io and from anaconda.org. Make sure you download them for the right platform. But the challenge: you need to download a set of packages that will satisfy the dependencies of the package you want to install. There isn't a super easy way to get that information when you're offline.
Once you drop new packages into the Linux system's package cache be sure to re-run conda index.
Beware installing packages directly from their tarballs: this will not pick up any dependencies and does what is called a "force" install. So doing conda install /path/to/conda/pkg-ver.tar.bz2 is actually most similar to doing conda install --force --no-deps pkg=ver (though not identical, to be sure). --force means the install will happen NO MATTER WHAT, even if it will break your environment (violate existing package dependencies), and --no-deps means you won't get any of the dependencies of pkg installed.

Changing timeout limit when using conda install

I originally posted this to the Continuum github but didn't get a response, so thought I'd try stackoverview.
I have been trying to create a Python 3.4 environment with the latest installer, which I managed to get through the early part fine. It downloads the first few packages but hangs at 99% then subsequently times out when it gets to this package.
https://repo.continuum.io/pkgs/free/win-64/qt-5.6.2-vc14_3.tar.bz2
I can download it manually in Chrome but it has a similar behaviour - getting stuck at 55.2/55.3mb and stays there for a while before completing. I'm behind a proxy but I do have the correct proxy settings in .condarc. Is there a way to change the timeout limit when I'm downloading it through conda?
Cheers
I had the same issue. In conda < 4.3.0, the timeout was hardcoded to 60 seconds. In Windows, I'm guessing, that's not enough for huge package with a lot of binary files like qt since most likely the virus scanner kicks in to check the files. You can hack your ~userid\AppData\Local\Continuum\Anaconda3\lib\site-packages\conda\fetch.py and change the hard-coded constant yourself, eg. from 60 to 300.
With newer version (I'm not sure when this was added, but I see this in my conda 4.3.22), running conda config --show gave: remote_read_timeout_secs: 60.0. So I believe you can modify it by adding it to your ~userid\.condarc file.

cygssp-0.dll error git/cygwin

I have a project that I am building using cygwin as an env. This weekend, I tried to do a standard git pull, one that has worked hundreds of times before, and I get this message.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
/usr/bin/ssh.exe: error while loading shared libraries: cygssp-0.dll: cannot open shared object file: No such file or directory
I'm a bit confused since this has never happened before. I googled "cygssp-0.dll" and found that it is some .dll file, specifically I looked here.
I tried the first option, and got to this step
enter "regsvr32 /u cygssp-0.dll" in the command line
and I got the message
The module "cygssp-0.dll" failed to load.
Make sure the binary is stored at the specific path or debug it to check for problems with the binary or dependent .DLL files.
The specific module could not be found.
At this point, I am thoroughly confused, and not all too keen to start reinstalling windows just yet. I've tried re installing cygwin.. does anybody have any ideas on what to do?
EDIT : I have already attempted to run setup-x86_64.exe several times, in an attempt to re-install something from the cygwin side.
Turn your antivirus off of silent mode or turn off heuristics. It's just deleting the file without telling you. libssp is getting deleted because it's a security library that does things to the call stack that antivirus programs don't like. (Specifically, it adds canaries, random values inserted into the stack that are meant to guard against some buffer overflow attacks. However, an antivirus that isn't coded to handle stack canary insertion will see it as a buffer overflow attack itself.)
Had the same issue today while trying to do push via Cygwin's git via ssh.
The solution is to reinstall or update Cygwin, as missing library will be redownloaded and put in proper place. Be sure that your antivirus software isn't removing it again, so disable everything that might delete it, and/or whitelist cygssp-0.dll location. As of today they're located under:
cygwin_root\bin\cygssp-0.dll
cygwin_root\usr\i686-pc-cygwin\sys-root\usr\bin\cygssp-0.dll
(second path only for 64 bit distribution of Cygwin)

Can I install postgresql8.2 via command prompt or running any batch or registry file?

Is it possible to install the entire database(postgresql8.2) via command prompt or batch file or registry file bypassing the trivial procedure for installation. But then to a question comes that, how can we supply default parameters such as name,password,language,default location of database? Currently I'm working on 'Windows XP' platform.
Thank you.
For 8.3 and lower the obvious answer is: http://pginstaller.projects.pgfoundry.org/ which supports or supported silent installations. For more recent versions, please read: http://forums.enterprisedb.com/posts/list/2135.page
Use of existing installers would simplify your life and be where I would start.
This being said there is no reason you can't generate a script to register dll's properly run initdb, etc. This will take some extra knowledge of both PostgreSQL and Windows, and will be mostly suitable for custom solutions (i.e. not cases where you merely are packaging software that runs with PostgreSQL). I don't think an complete answer can be given here because once you need such a solution you need to design your installation around if. Books could be written on that topic. The docs http://www.postgresql.org/docs/9.0/static/install-windows.html should get you started however since the only difference really between installing from source and installing from the precompiled source is just that you need to compile the source files first.
Failing that you could take a look at the binary zip packages. Typically these can be extracted and PostgreSQL can be run from inside them.

svn client binaries for windows

Where are the Windows binaries for the command-line version of SVN? Everywhere I search, it has to be some company's fancy client software with an installer.
I'm working on a machine where I don't have administrator account. Just give me the plain command-line binaries, where the hell are they?
The former direct links don't work, but the subversion project now provides several offsite links to Windows binaries:
http://subversion.apache.org/packages.html#windows
I use Slik SVN. It doesn't require a bunch of registration information like the CollabNet one does.
Get the version from Slik SVN, which doesn't require registration, and you should be able to install it anywhere you want (and have permissions).
If you can't run the installer, you could always try extracting the files from it using UniExtract, or possibly Total Commander with the MSI plugin.
You could always use cygwin and install the subversion package during install which would make it accessible in command prompt (with some $PATH changes) but I understand if this doesn't fit your criteria of 'just binaries'.
Edit: I understand why people are downvoting but it was just a last resort suggestion to getting the binaries for subversion. To answer the question 'why install all of cygwin if you just need subversion': I find that originally being a linux app that I'd be more comfortable using subversion in a *nix environment such as cygwin and could consequently leverage GNU utils such as find, grep, bash etc to perform file based operations, which subversion primarily deals with.
I suggested it because of this and I thought it would be the easiest and quickest way to get subversion as the OP had expressed dismay about finding legitimate binaries: a few clicks and you're done. It was a suggestion that was asked for and in my original comment I had the caveat of installing cygwin right there.
I have hust found this: http://alagazam.net/ . This is really the same project as http://sourceforge.net/projects/win32svn/ , which was suggested in another answer.
This is the closest solution to the original, pre-Apache binary. I've been using it without problems for the last two-three years.
http://subversion.tigris.org/
The client-side binaries ship with the source, as well as several other packaged installers.
The Command Line Client from CollabNet, while it does have an installer for windows, all it asks you is where you want to put the files, and then finish. Its just the command line client, like it says, nothing else. Subversion doesn't distribute their own binaries.
The Subversion project does not
officially endorse or maintain any
binary packages of the Subversion
software. However, volunteers have
created binary packages for different
distributions and platforms, and as a
convenience, we maintain a list of
links to them here. If there are any
problems with or questions about the
different binary packages please send
email to the Subversion users mailing
list.
I've successfully downloaded the binaries in a zip file and used them on windows w/o administrator access from here:
http://sourceforge.net/projects/win32svn/
As already suggested, take a look at the official Apache Subversion Binary Packages page.
If you are looking for zipped binaries of the latest Subversion command-line tools, you can get them at http://www.visualsvn.com/downloads/ (!) without any registration.
Portable binaries can also be found at:
http://www.smartsvn.com/download#svn

Resources