| 1 | | soon |
| | 1 | == Profiles and home configuration |
| | 2 | |
| | 3 | Q: I heard that there are different ways to declare or install software packages into the environment. What are the use cases, the pros and cons? |
| | 4 | |
| | 5 | A: You can manage and use packages in three different ways: |
| | 6 | |
| | 7 | * System wide (at OS configuration) |
| | 8 | |
| | 9 | * Manual in the users default profile (via guix package -i python) |
| | 10 | |
| | 11 | * In your [[home configuration]] (portable across computers) |
| | 12 | |
| | 13 | * Use temporary environments (via guix shell python python-pandas bash --) |
| | 14 | |
| | 15 | '''WARNING''' Only packages installed in the same way play well together by default. |
| | 16 | If you install the same package in different ways it will shadow all but on. |
| | 17 | |
| | 18 | Example: You declared vim a system level package, so that it is available for everyone. But a user installed it in his default profile as well. |
| | 19 | The system vim is then shadowed. If - for some reason - the user additionally declares vim in his home configuration, it will shadow the others as well. |
| | 20 | |
| | 21 | If you install extension packages like vim-nerdtree in the system profile it might not be available for the vim at default user profile or [[home configuration]] profile, because |
| | 22 | the matching vim is shadowed. |