Skip to content

Conversation

@ludivintchokote
Copy link

closes #186

@sbillinge
Copy link
Member

thanks @ludivintchokote this is really great.

To help with review, please can you paste in the comments some screen-shots of it working and report of any testing you have done (for example, running it on different platforms and whether the environments thus built actually worked)? Maybe @InongoMag is able to test it?

I wonder if we should put the python functions in the main package so they are more widely available and can be inported more robustly? What do you think? Do we want to make the scripts as entry-points in the pyproject.toml?

@ludivintchokote
Copy link
Author

Here's the output when ran on a machine without anaconda on windows environment. Unfortunately we don't have access to a MacBook to test the script for the mac, but the logic is pretty simple and straight forward
image

@ludivintchokote
Copy link
Author

@sbillinge it's now my team mate is informing me that we should have done pull requests on the jumia hackathon branch instead of the main branch. Should we proceed to do the pull requests we did here on the other branch before the deadline?

@ludivintchokote
Copy link
Author

Here's the output where we run the script with conda installed. we see that it can create the environment and proceed with the installation. we didn't go to the end due to instability in the network
image

@ludivintchokote
Copy link
Author

thanks @ludivintchokote this is really great.

To help with review, please can you paste in the comments some screen-shots of it working and report of any testing you have done (for example, running it on different platforms and whether the environments thus built actually worked)? Maybe @InongoMag is able to test it?

I wonder if we should put the python functions in the main package so they are more widely available and can be inported more robustly? What do you think? Do we want to make the scripts as entry-points in the pyproject.toml?

Yes yes. It is a great idea since the entry points will help ensure that the scripts work across different operating systems

@sbillinge
Copy link
Member

Didn't worry about the PR being into main, I can change that.

I think there are two distinct activities. One is building a flash drive with a cons env on it and the other is for a person to install it on their computer from the flash drive. Just to be clear, which of these tasks are you doing here?

@ludivintchokote
Copy link
Author

ludivintchokote commented Jan 31, 2025 via email

@sbillinge
Copy link
Member

For the person to install it on their computer from the flash drive I think is the one I'm doing here.

On Fri, Jan 31, 2025, 18:13 Simon Billinge @.> wrote: Didn't worry about the PR being into main, I can change that. I think there are two distinct activities. One is building a flash drive with a cons env on it and the other is for a person to install it on their computer from the flash drive. Just to be clear, which of these tasks are you doing here? — Reply to this email directly, view it on GitHub <#220 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/BNJCXPES6APVZAGUO2ZWA3T2NOVLFAVCNFSM6AAAAABWF3RKHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMRXHAZTOMZZGA . You are receiving this because you were mentioned.Message ID: @.>

in that case it has to work with no internet and it can't simply install from conda. This "local_install" was put in place to deal with issues we had with bad internet connectivity at a number of locations where we needed large numbers of people installing the software at once. I think the Use Cases (UCs) might look something like this:

UC 1:

class of students at a workshop needs to install the software in a weak internet environment

  1. instructor hands out a few flash drives with the software
  2. each student plugs drive into their computer and copies files over and hands flash drive over
  3. each student follows instructions to run the local_install app
  4. local install app installs pytentiostat software on student's computer by building a conda environment
  5. student follows instructions to connect up potentiostat and run the software

@sbillinge
Copy link
Member

@ludivintchokote in this case, there will be another activity that is an instructor with good internet running another different app to create an updated bundle that will be put on the flash drives. But that is a different task that could be on a different issue/PR

@ludivintchokote
Copy link
Author

ludivintchokote commented Feb 1, 2025 via email

@sbillinge
Copy link
Member

Yeah, exactly! The 4th point la what the program does. It checks If anaconda is installed and creates a conda environment where it installs pytentiostat using the pip command

On Fri, Jan 31, 2025, 21:23 Simon Billinge @.> wrote: For the person to install it on their computer from the flash drive I think is the one I'm doing here. … <#m_1414210401095492648_> On Fri, Jan 31, 2025, 18:13 Simon Billinge @.> wrote: Didn't worry about the PR being into main, I can change that. I think there are two distinct activities. One is building a flash drive with a cons env on it and the other is for a person to install it on their computer from the flash drive. Just to be clear, which of these tasks are you doing here? — Reply to this email directly, view it on GitHub <#220 (comment) <#220 (comment)>>, or unsubscribe https://github.com/notifications/unsubscribe-auth/BNJCXPES6APVZAGUO2ZWA3T2NOVLFAVCNFSM6AAAAABWF3RKHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMRXHAZTOMZZGA https://github.com/notifications/unsubscribe-auth/BNJCXPES6APVZAGUO2ZWA3T2NOVLFAVCNFSM6AAAAABWF3RKHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMRXHAZTOMZZGA . You are receiving this because you were mentioned.Message ID: @.> in that case it has to work with no internet and it can't simply install from conda. This "local_install" was put in place to deal with issues we had with bad internet connectivity at a number of locations where we needed large numbers of people installing the software at once. I think the Use Cases (UCs) might look something like this: UC 1: class of students at a workshop needs to install the software in a weak internet environment 1. instructor hands out a few flash drives with the software 2. each student plugs drive into their computer and copies files over and hands flash drive over 3. each student follows instructions to run the local_install app 4. local install app installs pytentiostat software on student's computer by building a conda environment 5. student follows instructions to connect up potentiostat and run the software — Reply to this email directly, view it on GitHub <#220 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/BNJCXPFATR22AMOLAJYJQDT2NPLUHAVCNFSM6AAAAABWF3RKHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMRYGMZTQNBVGU . You are receiving this because you were mentioned.Message ID: @.**>

It must work with no internet. Please test it with your internet disabled and make sure it results in a valid conda environment being installed and the software running. We would like it to work for both cases where there is already conda or miniconda installed on the local computer and when those are not installed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Known Issues/improvements

3 participants